/* * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #include "ParagraphProps.h" #include #include #include #include #include namespace facebook { namespace react { ParagraphProps::ParagraphProps( ParagraphProps const &sourceProps, RawProps const &rawProps) : ViewProps(sourceProps, rawProps), BaseTextProps(sourceProps, rawProps), paragraphAttributes( convertRawProp(rawProps, sourceProps.paragraphAttributes, {})), isSelectable( convertRawProp(rawProps, "selectable", sourceProps.isSelectable, {})), onTextLayout(convertRawProp( rawProps, "onTextLayout", sourceProps.onTextLayout, {})) { /* * These props are applied to `View`, therefore they must not be a part of * base text attributes. */ textAttributes.opacity = std::numeric_limits::quiet_NaN(); textAttributes.backgroundColor = {}; }; #pragma mark - DebugStringConvertible #if RN_DEBUG_STRING_CONVERTIBLE SharedDebugStringConvertibleList ParagraphProps::getDebugProps() const { return ViewProps::getDebugProps() + BaseTextProps::getDebugProps() + paragraphAttributes.getDebugProps() + SharedDebugStringConvertibleList{ debugStringConvertibleItem("isSelectable", isSelectable)}; } #endif } // namespace react } // namespace facebook