/* * 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 "ValueUnit.h" #include "DoubleConversions.h" namespace facebook::react { #ifdef RN_SERIALIZABLE_STATE folly::dynamic ValueUnit::toDynamic() const { switch (unit) { case UnitType::Undefined: return nullptr; case UnitType::Point: return value; case UnitType::Percent: return react::toString(value, '%'); default: return nullptr; } } #endif #if RN_DEBUG_STRING_CONVERTIBLE std::string ValueUnit::toString() const { if (unit == UnitType::Percent) { return react::toString(value, '%'); } else if (unit == UnitType::Point) { return react::toString(value, '\0') + "px"; } else { return "undefined"; } } #endif } // namespace facebook::react