/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
packages/react-native/ReactCommon/react/renderer/graphics/LinearGradient.cpp
59 строк
2 KB
Nick Lefever
Fix binary size regression for BackgroundImage (#54126)
14 окт 2025, 20:46
14 окт 2025, 20:46
93278d5
Код
Авторство
О чём код?
/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #include "LinearGradient.h" namespace facebook::react { #ifdef RN_SERIALIZABLE_STATE folly::dynamic GradientDirection::toDynamic() const { folly::dynamic result = folly::dynamic::object(); result["type"] = [&]() { switch (type) { case GradientDirectionType::Angle: return "angle"; case GradientDirectionType::Keyword: return "keyword"; } return ""; }(); if (std::holds_alternative<Float>(value)) { result["value"] = std::get<Float>(value); } else if (std::holds_alternative<GradientKeyword>(value)) { result["value"] = [&]() { switch (std::get<GradientKeyword>(value)) { case GradientKeyword::ToTopRight: return "to top right"; case GradientKeyword::ToBottomRight: return "to bottom right"; case GradientKeyword::ToTopLeft: return "to top left"; case GradientKeyword::ToBottomLeft: return "to bottom left"; } return ""; }(); } return result; } folly::dynamic LinearGradient::toDynamic() const { folly::dynamic result = folly::dynamic::object(); result["type"] = "linear-gradient"; result["direction"] = direction.toDynamic(); folly::dynamic colorStopsArray = folly::dynamic::array(); for (const auto& colorStop : colorStops) { colorStopsArray.push_back(colorStop.toDynamic()); } result["colorStops"] = colorStopsArray; return result; } #endif }; // namespace facebook::react