diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt b/packages/react-native/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt index 66ad89a3a2ba..5229c2af141a 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt @@ -80,6 +80,7 @@ target_link_libraries(reactnativejni glog_init logger react_cxxreact + react_cxxstableapi react_renderer_runtimescheduler reactnativejni_common runtimeexecutor diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h index 2239ee579808..3e7c2c4ad229 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h @@ -7,6 +7,8 @@ #pragma once +#include + #include #include #include diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h index d144398244f5..3f24801ea6fa 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h @@ -5,6 +5,8 @@ * LICENSE file in the root directory of this source tree. */ +#include + #include #include diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h index 3c246e47d5eb..316e73b5331d 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h @@ -7,6 +7,8 @@ #pragma once +#include + #include #include diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h b/packages/react-native/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h index bdefb6a068f6..8ea753923ba1 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h @@ -7,6 +7,8 @@ #pragma once +#include + #include #include diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h b/packages/react-native/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h index f277fc334976..a63964dc7e42 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h @@ -5,6 +5,8 @@ * LICENSE file in the root directory of this source tree. */ +#include + #include #include diff --git a/scripts/cxx-api/README.md b/scripts/cxx-api/README.md index b894a008fc0a..3986958b2a35 100644 --- a/scripts/cxx-api/README.md +++ b/scripts/cxx-api/README.md @@ -4,7 +4,7 @@ Python build pipeline for React Native's C++ (and Objective-C) API snapshots. ## Overview -`scripts/cxx-api` generates human-readable snapshots of React Native's public C++ API surface. It uses [Doxygen](https://www.doxygen.nl/) to parse C/C++/Objective-C headers and a custom Python parser to produce a simplified, sorted representation of every public symbol. +`scripts/cxx-api` generates human-readable snapshots of React Native's public C++ API surface. It uses [Doxygen](https://www.doxygen.nl/) to parse C/C++/Objective-C headers and a custom Python parser to produce a simplified, sorted representation of every public symbol. Symbols declared in headers that the C++ stable API classifies as private or "for frameworks" are left out (see [Tier filtering](#tier-filtering)). The pipeline produces one `.api` snapshot file per configured **API view × variant** combination: @@ -41,17 +41,44 @@ python -m scripts.cxx-api.parser --validate If any snapshot differs, a unified diff is printed and the process exits with a non-zero status. To fix a failing validation, regenerate the snapshots with `python -m scripts.cxx-api.parser` and commit the updated `.api` files. +#### Log tier boundary breaks + +Pass `--log-boundary-breaks` (in either mode) to print every header whose includes cross a tier boundary, with the include chain that causes it: + +```sh +python -m scripts.cxx-api.parser --validate --log-boundary-breaks +``` + ## How it works -The pipeline has two main stages: +The pipeline has three main stages: + +### 1. Tier classification + +Every header in a view's inputs is classified by the C++ stable API guard it includes: -### 1. Doxygen XML generation +| Guard | Tier | +|---|---| +| `react/cxxstableapi/UmbrellaGuard.h` | public | +| `react/cxxstableapi/FrameworksGuard.h` | for frameworks | +| `react/cxxstableapi/PrivateGuard.h` | private | +| none | unclassified | + +The headers' `#include`/`#import` directives are resolved into an include graph of the view. + +### 2. Doxygen XML generation Doxygen is configured via a generated config file (built from `.doxygen.config.template`) with the input directories, exclude patterns, and preprocessor definitions specified in `config.yml`. It outputs XML describing every symbol found in the headers. -### 2. Snapshot parsing +### 3. Snapshot parsing + +The Python parser (`parser/`) reads the Doxygen XML output and builds a scope tree of the public API surface, leaving out symbols declared in skipped headers. The tree is then serialized to a deterministically sorted, human-readable `.api` text format. -The Python parser (`parser/`) reads the Doxygen XML output and builds a scope tree of the public API surface. The tree is then serialized to a deterministically sorted, human-readable `.api` text format. +## Tier filtering + +A private or for-frameworks header is skipped unless a public header reaches it, directly or through other includes: anything a public header includes is public in practice, whatever its own guard says. Unclassified headers are never skipped. + +A boundary break is a public header that reaches a for-frameworks or private header, or a for-frameworks header that reaches a private one. `--log-boundary-breaks` reports them at the edge where visibility drops. ## When to use it @@ -73,7 +100,10 @@ All API views and their variants are defined in `config.yml`. Each view specifie | `definitions` | Preprocessor macros to define | | `variants` | Named build variants (e.g. debug/release) with extra definitions | | `codegen` | Optional codegen platform (`android`, `ios`) to generate TurboModule/Component headers before scanning | -| `private_directories` | Directories whose headers are scanned (they may be transitively included) but should not contribute public symbols. If any public API entity is defined in a private directory, a warning is printed to help catch accidental API exposure. | +| `exclude_symbols` | Regex patterns for symbols to skip | +| `input_filter` | Whether to run Doxygen through the input filters in `parser/input_filters/` | + +`exclude_patterns` and `exclude_symbols` can also be set at the top level, in which case they apply to every view. ## Snapshot format diff --git a/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api b/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api index 1458d1fd6e03..777b8427b4ba 100644 --- a/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api @@ -319,86 +319,6 @@ union jvalue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -453,137 +373,26 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidHorizontalScrollContentViewShadowNodeComponentName[]; -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AndroidTextInputComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageFetcherKey[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr auto facebook::react::rncore_ModuleProvider; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_BASE_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_CACHE_ID; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_FRAGMENTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_IS_ATTACHMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_REACT_TAG; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_TEXT_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_WIDTH; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ADJUST_FONT_SIZE_TO_FIT; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ELLIPSIZE_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_HYPHENATION_FREQUENCY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_INCLUDE_FONT_PADDING; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MAX_NUMBER_OF_LINES; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SCALE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_ALIGN_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_WIDTH_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ACCESSIBILITY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALLOW_FONT_SCALING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BACKGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BEST_WRITING_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_FAMILY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIANT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIATION_SETTINGS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_WEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FOREGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_IS_HIGHLIGHTED; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LAYOUT_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LETTER_SPACING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_MAX_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_OPACITY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_LINE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_EFFECTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DX; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_RADIUS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_TRANSFORM; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_NAME; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_PROPS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_ATTRIBUTED_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_MOST_RECENT_EVENT_COUNT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_PARAGRAPH_ATTRIBUTES; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; using facebook::react::AndroidDrawerLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidDrawerLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidDrawerLayoutState = facebook::react::StateData; -using facebook::react::AndroidHorizontalScrollContentViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidSwipeRefreshLayoutState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -591,22 +400,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -616,139 +410,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = float; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = facebook::react::HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = facebook::react::HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TracingStateListener = std::function; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; template concept facebook::react::StateDataWithJNIReference = requires(StateDataT stateData) { { stateData.getJNIReference() } -> std::same_as>; @@ -757,51 +470,6 @@ template concept facebook::react::StateDataWithMapBuffer = requires(StateDataT stateData) { { stateData.getMapBuffer() } -> std::same_as; }; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -819,51 +487,18 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; AAssetManager* facebook::react::extractAssetManager(jni::alias_ref assetManager); JSI_EXPORT std::shared_ptr facebook::react::FBReactNativeSpec_ModuleProvider(const std::string& moduleName, const facebook::react::JavaTurboModule::InitParams& params); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::AnimatedPropsBuffer facebook::react::encodeAnimatedProps(const std::unordered_map& updates); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); @@ -871,33 +506,19 @@ facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uin facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::MapBuffer facebook::react::serializeImageRequests(const std::vector& items); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString& attributedString); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString::Fragment& fragment); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::FontVariant& fontVariant); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphAttributes& paragraphAttributes); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphState& paragraphState); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::TextAttributes& textAttributes); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -906,17 +527,12 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); folly::dynamic facebook::react::toDynamic(const YGValue& dimension); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidProgressBarProps& props); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidTextInputTextShadowOffsetStruct& value); folly::dynamic facebook::react::toDynamic(const facebook::react::BackgroundImage& backgroundImage); folly::dynamic facebook::react::toDynamic(const facebook::react::BoxShadow& boxShadow); folly::dynamic facebook::react::toDynamic(const facebook::react::EdgeInsets& edgeInsets); @@ -924,7 +540,6 @@ folly::dynamic facebook::react::toDynamic(const facebook::react::FilterFunction& folly::dynamic facebook::react::toDynamic(const facebook::react::ImageSource& imageSource); folly::dynamic facebook::react::toDynamic(const facebook::react::Point& point); folly::dynamic facebook::react::toDynamic(const facebook::react::SharedColor& sharedColor); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); @@ -935,91 +550,32 @@ folly::dynamic facebook::react::toDynamic(uint32_t value); int facebook::react::toAndroidRepr(const facebook::react::SharedColor& color); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); -std::string facebook::react::toString(const facebook::react::DataDetectorType& value); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unique_ptr facebook::react::loadScriptFromAssets(AAssetManager* assetManager, const std::string& assetName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -std::vector> facebook::react::buildNativeModuleList(std::weak_ptr winstance, jni::alias_ref::javaobject> javaModules, std::shared_ptr moduleMessageQueue); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -1031,12 +587,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); template jni::local_ref> facebook::react::makeJWeakReference(jni::alias_ref ref); @@ -1058,11 +608,6 @@ uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); void facebook::react::addDynamicToJArray(jni::alias_ref> jarray, jint index, const folly::dynamic& dyn); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::ensureThreadDurationJNIEnvAttached(); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -1072,36 +617,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -1112,24 +638,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::DataDetectorType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::EdgeInsets& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageResizeMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -1138,15 +656,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::reactAndroidLoggingHook(const std::string& message, unsigned int logLevel); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); @@ -1154,17 +663,10 @@ void facebook::react::serializeTransformAxis(const facebook::react::TransformOpe void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -1236,11 +738,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - class facebook::react::AndroidAnimationChoreographer : public facebook::react::AnimationChoreographer { public virtual void pause() override; public virtual void resume() override; @@ -1299,25 +796,9 @@ class facebook::react::AndroidHorizontalScrollContentViewProps : public facebook public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidHorizontalScrollContentViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidProgressBarEventEmitter : public facebook::react::BaseViewEventEmitter { } -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const facebook::react::AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidProgressBarProps : public facebook::react::HostPlatformViewProps { public AndroidProgressBarProps() = default; public AndroidProgressBarProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidProgressBarProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1332,14 +813,6 @@ class facebook::react::AndroidProgressBarProps : public facebook::react::HostPla public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - class facebook::react::AndroidSwipeRefreshLayoutEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::AndroidSwipeRefreshLayoutEventEmitter::OnRefresh value) const; } @@ -1360,11 +833,6 @@ class facebook::react::AndroidSwipeRefreshLayoutProps : public facebook::react:: public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidSwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::AndroidSwitchEventEmitter::OnChange value) const; } @@ -1374,11 +842,6 @@ struct facebook::react::AndroidSwitchEventEmitter::OnChange { public int target; } -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatformViewProps { public AndroidSwitchProps() = default; public AndroidSwitchProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidSwitchProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1395,237 +858,6 @@ class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidTextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public AndroidTextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; -} - -class facebook::react::AndroidTextInputEventEmitter : public facebook::react::BaseViewEventEmitter { -} - -class facebook::react::AndroidTextInputProps : public facebook::react::BaseTextInputProps { - public AndroidTextInputProps() = default; - public AndroidTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool allowFontScaling; - public bool autoCorrect; - public bool caretHidden; - public bool contextMenuHidden; - public bool disableFullscreenUI; - public bool hasPadding; - public bool hasPaddingBottom; - public bool hasPaddingEnd; - public bool hasPaddingHorizontal; - public bool hasPaddingLeft; - public bool hasPaddingRight; - public bool hasPaddingStart; - public bool hasPaddingTop; - public bool hasPaddingVertical; - public bool includeFontPadding; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AndroidTextInputTextShadowOffsetStruct textShadowOffset; - public facebook::react::Float fontSize; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor color; - public facebook::react::SharedColor textShadowColor; - public folly::dynamic getDynamic() const; - public int inlineImagePadding; - public int numberOfLines; - public std::string autoComplete; - public std::string fontFamily; - public std::string fontStyle; - public std::string fontWeight; - public std::string importantForAutofill; - public std::string inlineImageLeft; - public std::string keyboardType; - public std::string returnKeyLabel; - public std::string returnKeyType; - public std::string textAlign; - public std::string textBreakStrategy; - public std::string textDecorationLine; - public std::string textTransform; - public std::string value; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::AndroidTextInputShadowNode : public facebook::react::ConcreteViewShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public AndroidTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::AndroidTextInputState { - public AndroidTextInputState() = default; - public AndroidTextInputState(const facebook::react::AndroidTextInputState& previousState, const folly::dynamic& data); - public AndroidTextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public int64_t cachedAttributedStringId; - public int64_t mostRecentEventCount; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public std::string debugID() const; - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public std::string debugID() const; - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -1644,153 +876,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void appendTextAttributesProps(folly::dynamic& result, const facebook::react::BaseTextProps* prevProps) const; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1847,16 +932,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - class facebook::react::BindingsInstallerHolder : public jni::HybridClass { public static constexpr auto kJavaDescriptor; public using BindingsInstallFunc = std::function& callInvoker)>; @@ -1874,72 +949,6 @@ class facebook::react::BlobModuleJSIBindings : public jni::JavaClass messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1954,13 +963,6 @@ class facebook::react::CallInvokerHolder : public jni::HybridClass getCallInvoker(); } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1970,32 +972,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -2083,17 +1059,6 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::CxxReactPackage : public jni::HybridClass { public static constexpr auto kJavaDescriptor; public virtual std::shared_ptr getModule(const std::string& name, const std::shared_ptr& jsInvoker) = 0; @@ -2112,11 +1077,6 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - class facebook::react::DefaultComponentsRegistry : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public static std::function)> registerCodegenComponentDescriptorsFromEntryPoint; @@ -2139,66 +1099,12 @@ class facebook::react::DefaultTurboModuleManagerDelegate : public jni::HybridCla public std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker) override; } -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -2291,15 +1197,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -2348,13 +1245,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - class facebook::react::FabricMountingManager { public FabricMountingManager(const facebook::react::FabricMountingManager&) = delete; public FabricMountingManager(jni::global_ref& javaUIManager); @@ -2393,38 +1283,6 @@ class facebook::react::FocusOrderingHelper { public static void traverseAndUpdateNextFocusableElement(const std::shared_ptr& parentShadowNode, const std::shared_ptr& focusedShadowNode, const std::shared_ptr& currNode, facebook::react::FocusDirection focusDirection, const facebook::react::UIManager& uimanager, facebook::react::Rect sourceRect, std::optional& nextRect, std::shared_ptr& nextNode); } -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -2478,30 +1336,6 @@ class facebook::react::HighResTimeStamp { public static void setTimeStampProviderForTesting(std::function&& timeStampProvider); } -class facebook::react::HostPlatformParagraphProps : public facebook::react::BaseParagraphProps { - public HostPlatformParagraphProps() = default; - public HostPlatformParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool disabled; - public std::optional dataDetectorType; - public std::optional selectionColor; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::HostPlatformScrollViewProps : public facebook::react::BaseScrollViewProps { - public HostPlatformScrollViewProps() = default; - public HostPlatformScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool nestedScrollEnabled; - public bool sendMomentumEvents; - public facebook::react::SharedColor endFillColor; - public folly::dynamic fadingEdgeLength; - public std::string overScrollMode; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::HostPlatformViewProps : public facebook::react::BaseViewProps { public HostPlatformViewProps() = default; public HostPlatformViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformViewProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -2533,36 +1367,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - -class facebook::react::ImageFetcher { - public ImageFetcher(const facebook::react::ImageFetcher&) = delete; - public ImageFetcher(facebook::react::ImageFetcher&&) = delete; - public ImageFetcher(std::shared_ptr contextContainer); - public facebook::react::ImageFetcher& operator=(const facebook::react::ImageFetcher&) = delete; - public facebook::react::ImageFetcher& operator=(facebook::react::ImageFetcher&&) = delete; - public void flushImageRequests(); - public ~ImageFetcher() = default; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -2574,27 +1384,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -2657,15 +1446,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -2693,15 +1473,6 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public ImageState(const facebook::react::ImageState& previousState, folly::dynamic data); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; - public folly::dynamic getDynamic() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; @@ -2717,30 +1488,6 @@ class facebook::react::InspectorNetworkRequestListener : public jni::HybridClass public void onHeaders(jint httpStatusCode, jni::alias_ref> headers); } -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -2748,43 +1495,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JArrayBuffer : public jni::HybridClass { public JArrayBuffer(std::shared_ptr buffer, bool owningBytes) noexcept; public bool hasBytes() const noexcept; @@ -2864,10 +1574,6 @@ class facebook::react::JNativeModulePerfLogger : public jni::HybridClass get() = 0; } -class facebook::react::JPreparedLayout : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; -} - class facebook::react::JReactExceptionManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public void reportJsException(facebook::jsi::Runtime& runtime, const facebook::react::JsErrorHandler::ProcessedError& error); @@ -2978,69 +1684,6 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass { public facebook::react::MapBuffer getMapBuffer(); public static constexpr auto kJavaDescriptor; @@ -3063,22 +1706,6 @@ class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass< public static constexpr auto kJavaDescriptor; } -class facebook::react::JavaNativeModule : public facebook::react::NativeModule { - public JavaNativeModule(std::weak_ptr instance, jni::alias_ref wrapper, std::shared_ptr messageQueueThread); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& params) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int reactMethodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - -class facebook::react::JavaScriptExecutorHolder : public jni::HybridClass { - protected JavaScriptExecutorHolder(std::shared_ptr factory); - public static constexpr auto kJavaDescriptor; - public std::shared_ptr getExecutorFactory(); -} - class facebook::react::JavaTimerRegistry : public facebook::react::PlatformTimerRegistry { public JavaTimerRegistry(jni::global_ref javaTimerManager); public virtual void createRecurringTimer(uint32_t timerID, double delayMS) override; @@ -3101,96 +1728,9 @@ struct facebook::react::JavaTurboModule::InitParams { public std::string moduleName; } -class facebook::react::JniJSModulesUnbundle : public facebook::react::JSModulesUnbundle { - public JniJSModulesUnbundle() = default; - public JniJSModulesUnbundle(AAssetManager* assetManager, std::string moduleDirectory); - public JniJSModulesUnbundle(facebook::react::JniJSModulesUnbundle&& other) = delete; - public facebook::react::JniJSModulesUnbundle& operator=(facebook::react::JSModulesUnbundle&& other) = delete; - public static bool isUnbundle(AAssetManager* assetManager, const std::string& assetName); - public static std::unique_ptr fromEntryFile(AAssetManager* assetManager, const std::string& entryFile); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const override; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -3223,36 +1763,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -3330,33 +1840,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::MethodInvoker { - public MethodInvoker(jni::alias_ref method, std::string methodName, std::string signature, std::string traceName, bool isSync); - public bool isSyncHook() const; - public facebook::react::MethodCallResult invoke(std::weak_ptr& instance, jni::alias_ref module, const folly::dynamic& params); - public std::string getMethodName() const; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -3400,103 +1883,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(const facebook::react::ModalHostViewState& previousState, folly::dynamic data); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public folly::dynamic getDynamic() const; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleHolder : public facebook::jni::JavaClass { - public facebook::xplat::module::CxxModule::Provider getProvider(const std::string& moduleName) const; - public static constexpr auto kJavaDescriptor; - public std::string getName() const; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeAccessibilityInfoSpecJSI : public facebook::react::JavaTurboModule { public NativeAccessibilityInfoSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3517,68 +1903,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Jav public NativeAnimatedModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::JavaTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3612,41 +1936,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::JavaTur public NativeBlobModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::JavaTurboModule { public NativeClipboardSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::JavaTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3691,12 +1984,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::JavaTu public NativeI18nManagerSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::JavaTurboModule { public NativeImageEditorSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3713,15 +2000,6 @@ class facebook::react::NativeIntentAndroidSpecJSI : public facebook::react::Java public NativeIntentAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::JavaTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3764,101 +2042,10 @@ class facebook::react::NativeMethodCallInvokerHolder : public jni::HybridClass getNativeMethodCallInvoker(); } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativeNetworkingAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePermissionsAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativePermissionsAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3879,15 +2066,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::JavaTurboMo public NativeRedBoxSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::JavaTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3916,26 +2094,6 @@ class facebook::react::NativeTimingSpecJSI : public facebook::react::JavaTurboMo public NativeTimingSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeToastAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativeToastAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3956,172 +2114,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ja public NativeWebSocketModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::ParagraphState { - public ParagraphState() = default; - public ParagraphState(const facebook::react::ParagraphState&, const folly::dynamic&); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager, facebook::react::MeasuredPreparedTextLayout measuredLayout); - public facebook::react::AttributedString attributedString; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::MeasuredPreparedTextLayout measuredLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public jni::local_ref getJNIReference() const; - public std::weak_ptr layoutManager; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public static jboolean isTracing(facebook::jni::alias_ref jthis); @@ -4133,41 +2125,6 @@ class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaC public static void unsubscribeFromTracingStateChanges(facebook::jni::alias_ref jthis, jint subscriptionId); } -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -4183,21 +2140,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -4217,16 +2159,6 @@ class facebook::react::PullToRefreshViewProps : public facebook::react::HostPlat public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RawProps { public RawProps(); public RawProps(const facebook::react::RawProps& other) noexcept; @@ -4265,17 +2197,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -4292,38 +2213,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - class facebook::react::ReadableNativeArray : public jni::HybridClass { protected friend HybridBase; public bool equals(jni::alias_ref other); @@ -4336,226 +2225,6 @@ class facebook::react::ReadableNativeArray : public jni::HybridClass takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -4566,110 +2235,6 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public SafeAreaViewState() = default; - public SafeAreaViewState(const facebook::react::SafeAreaViewState&, folly::dynamic data); - public facebook::react::EdgeInsets padding; - public folly::dynamic getDynamic() const; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(const facebook::react::ScrollViewState& previousState, folly::dynamic data); - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public folly::dynamic getDynamic() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public Sealable(); public Sealable(const facebook::react::Sealable& other); @@ -4682,17 +2247,6 @@ class facebook::react::Sealable { public ~Sealable() noexcept; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -4792,63 +2346,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -4860,15 +2357,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -4912,48 +2400,6 @@ class facebook::react::StateWrapperImpl : public jni::HybridClass getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - class facebook::react::SurfaceHandlerBinding : public jni::HybridClass { public SurfaceHandlerBinding(facebook::react::SurfaceId surfaceId, const std::string& moduleName); public const facebook::react::SurfaceHandler& getSurfaceHandler(); @@ -4967,43 +2413,6 @@ class facebook::react::SurfaceHandlerBinding : public jni::HybridClass getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -5028,163 +2437,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextLayoutManager { - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextLayoutManager::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measureCachedSpannableById(int64_t cacheId, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::TextLayoutManager::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public using PreparedTextLayout = facebook::react::SafeReleaseJniRef>; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public TextShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteShadowNode; -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -5217,48 +2469,6 @@ class facebook::react::TracingStateCallback : public facebook::jni::JavaClass now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TransformHelper : public facebook::jni::JavaClass { public static constexpr auto * kJavaDescriptor; public static void registerNatives(); @@ -5312,158 +2522,6 @@ class facebook::react::UIConstantsProviderBinding : public facebook::jni::JavaCl public static void registerNatives(); } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5475,33 +2533,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -5517,41 +2548,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -5586,19 +2582,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -5743,54 +2726,6 @@ enum facebook::react::AndroidSwipeRefreshLayoutSize { Large, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -5840,345 +2775,54 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, +enum facebook::react::ColorSpace { + DisplayP3, + sRGB, } -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, +enum facebook::react::Cursor : uint8_t { + Alias, + AllScroll, + Auto, + Cell, + ColResize, + ContextMenu, + Copy, + Crosshair, + Default, + EResize, + EWResize, + Grab, + Grabbing, + Help, + Move, + NEResize, + NESWResize, + NResize, + NSResize, + NWResize, + NWSEResize, + NoDrop, None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, + NotAllowed, + Pointer, + Progress, + RowResize, + SEResize, + SResize, + SWResize, + Text, + Url, + WResize, + Wait, + ZoomIn, + ZoomOut, } -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - -enum facebook::react::ColorSpace { - DisplayP3, - sRGB, -} - -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - -enum facebook::react::Cursor : uint8_t { - Alias, - AllScroll, - Auto, - Cell, - ColResize, - ContextMenu, - Copy, - Crosshair, - Default, - EResize, - EWResize, - Grab, - Grabbing, - Help, - Move, - NEResize, - NESWResize, - NResize, - NSResize, - NWResize, - NWSEResize, - NoDrop, - None, - NotAllowed, - Pointer, - Progress, - RowResize, - SEResize, - SResize, - SWResize, - Text, - Url, - WResize, - Wait, - ZoomIn, - ZoomOut, -} - -enum facebook::react::DataDetectorType { - All, - Email, - Link, - None, - PhoneNumber, -} - -enum facebook::react::DisplayMode { - Hidden, - Suspended, - Visible, +enum facebook::react::DisplayMode { + Hidden, + Suspended, + Visible, } enum facebook::react::DisplayType { @@ -6188,27 +2832,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -6237,63 +2860,6 @@ enum facebook::react::FocusDirection { FocusUp, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -6306,12 +2872,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -6344,22 +2904,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -6392,15 +2936,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -6414,61 +2949,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -6481,12 +2961,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -6568,107 +3042,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -6697,18 +3070,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -6740,127 +3101,12 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AndroidTextInputTextShadowOffsetStruct { - public double height; - public double width; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - struct facebook::react::AnimatedPropsBuffer { public std::vector doubles; public std::vector rawProps; public std::vector ints; } -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - struct facebook::react::BackgroundPosition { public BackgroundPosition(); public bool operator==(const facebook::react::BackgroundPosition& other) const = default; @@ -6957,13 +3203,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -6971,286 +3210,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public bool isDefined; public constexpr Color() = default; @@ -7316,21 +3275,9 @@ enum facebook::react::CppMountItem::Type { UpdateState, } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -7340,11 +3287,6 @@ struct facebook::react::DropShadowParams { public folly::dynamic toDynamic() const; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -7359,12 +3301,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -7390,41 +3326,10 @@ struct facebook::react::ImageRequestItem { public facebook::react::Tag tag; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - struct facebook::react::JAssetManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } -struct facebook::react::JBaseJavaModule : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; -} - struct facebook::react::JCallback : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7454,14 +3359,6 @@ struct facebook::react::JJavaTimerManager : public facebook::jni::JavaClass { - public jni::local_ref getMethod() const; - public static constexpr auto kJavaDescriptor; - public std::string getName() const; - public std::string getSignature() const; - public std::string getType() const; -} - struct facebook::react::JMountItem : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7480,11 +3377,6 @@ struct facebook::react::JReactHostImpl : public facebook::jni::JavaClass message); } -struct facebook::react::JReflectMethod : public facebook::jni::JavaClass { - public jmethodID getMethodID(); - public static constexpr auto kJavaDescriptor; -} - struct facebook::react::JTaskInterface : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7506,30 +3398,6 @@ struct facebook::react::JTurboModuleWithJSIBindings : public facebook::jni::Java public static constexpr auto kJavaDescriptor; } -struct facebook::react::JavaModuleWrapper : public facebook::jni::JavaClass { - public jni::local_ref getModule(); - public jni::local_ref::javaobject> getMethodDescriptors(); - public static constexpr auto kJavaDescriptor; - public std::string getName() const; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -7569,19 +3437,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -7594,47 +3449,10 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { public facebook::react::ModalHostViewSupportedOrientationsMask value; } -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - struct facebook::react::NativeDrawable { public bool operator!=(const facebook::react::NativeDrawable& rhs) const; public bool operator==(const facebook::react::NativeDrawable& rhs) const; @@ -7659,73 +3477,6 @@ struct facebook::react::NativeDrawable::Ripple { public std::optional> colorResourcePaths; } -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public bool operator==(const facebook::react::Point& rhs) const = default; public facebook::react::Float x; @@ -7764,11 +3515,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -7791,12 +3537,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -7887,13 +3627,6 @@ struct facebook::react::ReadableType : public facebook::jni::JavaClass getType(folly::dynamic::Type type); } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -7911,82 +3644,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -8003,82 +3660,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -8093,44 +3680,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -8164,12 +3713,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -8290,64 +3833,6 @@ struct facebook::react::WritableNativeMap : public jni::HybridClass val); } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -8360,20 +3845,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -8405,17 +3876,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -8437,25 +3897,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -8804,14 +4245,7 @@ class facebook::react::SafeReleaseJniRef { } template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - -template -class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { +class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; public ConcreteComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); public using ConcreteEventEmitter = typename ShadowNodeT::ConcreteEventEmitter; @@ -8833,29 +4267,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -9184,13 +4595,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -9670,13 +5074,6 @@ class facebook::react::AsyncPromise { public void resolve(T... value); } -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - struct facebook::react::Bridging { public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); @@ -9751,1114 +5148,102 @@ struct facebook::react::Bridging> : public facebook::react::array template struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); - - -const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; -template -void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); + class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnection : public jni::HybridClass { public static constexpr auto kJavaDescriptor; @@ -10919,250 +5304,6 @@ class facebook::react::jsinspector_modern::JInspectorNetworkReporter : public jn public static void reportWebSocketWillSendHandshakeRequest(jni::alias_ref, jni::alias_ref requestId, jni::alias_ref> headers); } -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; -} - -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; -} - -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; -} - -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; -} - -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; -} - struct facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelegateImpl : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate); @@ -11176,624 +5317,13 @@ class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelega public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) override; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; -} - -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; -} - -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; -} - -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; -} - -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; -} - -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; -} - -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; -} - -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; -} - -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -} - -template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; -} - -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; -} +const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); -} - -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; -} - - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; -} - -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; -} - -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; -} - -struct facebook::react::dom::DOMPoint { - public double x; - public double y; -} - -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; -} - -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; -} - -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} +void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; std::shared_ptr facebook::react::CoreComponentsRegistry::sharedProviderRegistry(); @@ -11933,6 +5463,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -11940,112 +5480,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -12089,9 +5523,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -13953,22 +7384,10 @@ class facebook::yoga::vanillajni::ScopedLocalRef { void facebook::gloginit::initialize(const char* tag = "ReactNativeJNI"); -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -13977,30 +7396,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -14009,18 +7412,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -14035,22 +7426,5 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - void YGJNIVanilla::registerNatives(JNIEnv* env); \ No newline at end of file diff --git a/scripts/cxx-api/api-snapshots/ReactAndroidNewarchCxx.api b/scripts/cxx-api/api-snapshots/ReactAndroidNewarchCxx.api index b53bb3d44cf7..e61666350cc0 100644 --- a/scripts/cxx-api/api-snapshots/ReactAndroidNewarchCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAndroidNewarchCxx.api @@ -319,86 +319,6 @@ union jvalue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -453,136 +373,26 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidHorizontalScrollContentViewShadowNodeComponentName[]; -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AndroidTextInputComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageFetcherKey[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr auto facebook::react::rncore_ModuleProvider; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_BASE_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_CACHE_ID; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_FRAGMENTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_IS_ATTACHMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_REACT_TAG; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_TEXT_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_WIDTH; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ADJUST_FONT_SIZE_TO_FIT; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ELLIPSIZE_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_HYPHENATION_FREQUENCY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_INCLUDE_FONT_PADDING; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MAX_NUMBER_OF_LINES; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SCALE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_ALIGN_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_WIDTH_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ACCESSIBILITY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALLOW_FONT_SCALING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BACKGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BEST_WRITING_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_FAMILY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIANT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIATION_SETTINGS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_WEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FOREGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_IS_HIGHLIGHTED; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LAYOUT_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LETTER_SPACING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_MAX_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_OPACITY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_LINE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_EFFECTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DX; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_RADIUS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_TRANSFORM; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_NAME; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_PROPS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_ATTRIBUTED_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_MOST_RECENT_EVENT_COUNT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_PARAGRAPH_ATTRIBUTES; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; using facebook::react::AndroidDrawerLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidDrawerLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidDrawerLayoutState = facebook::react::StateData; -using facebook::react::AndroidHorizontalScrollContentViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidSwipeRefreshLayoutState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -590,22 +400,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -615,139 +410,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = float; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = facebook::react::HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = facebook::react::HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TracingStateListener = std::function; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; template concept facebook::react::StateDataWithJNIReference = requires(StateDataT stateData) { { stateData.getJNIReference() } -> std::same_as>; @@ -756,51 +470,6 @@ template concept facebook::react::StateDataWithMapBuffer = requires(StateDataT stateData) { { stateData.getMapBuffer() } -> std::same_as; }; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -818,51 +487,18 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; AAssetManager* facebook::react::extractAssetManager(jni::alias_ref assetManager); JSI_EXPORT std::shared_ptr facebook::react::FBReactNativeSpec_ModuleProvider(const std::string& moduleName, const facebook::react::JavaTurboModule::InitParams& params); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::AnimatedPropsBuffer facebook::react::encodeAnimatedProps(const std::unordered_map& updates); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); @@ -870,33 +506,19 @@ facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uin facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::MapBuffer facebook::react::serializeImageRequests(const std::vector& items); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString& attributedString); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString::Fragment& fragment); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::FontVariant& fontVariant); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphAttributes& paragraphAttributes); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphState& paragraphState); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::TextAttributes& textAttributes); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -905,17 +527,12 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); folly::dynamic facebook::react::toDynamic(const YGValue& dimension); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidProgressBarProps& props); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidTextInputTextShadowOffsetStruct& value); folly::dynamic facebook::react::toDynamic(const facebook::react::BackgroundImage& backgroundImage); folly::dynamic facebook::react::toDynamic(const facebook::react::BoxShadow& boxShadow); folly::dynamic facebook::react::toDynamic(const facebook::react::EdgeInsets& edgeInsets); @@ -923,7 +540,6 @@ folly::dynamic facebook::react::toDynamic(const facebook::react::FilterFunction& folly::dynamic facebook::react::toDynamic(const facebook::react::ImageSource& imageSource); folly::dynamic facebook::react::toDynamic(const facebook::react::Point& point); folly::dynamic facebook::react::toDynamic(const facebook::react::SharedColor& sharedColor); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); @@ -934,88 +550,32 @@ folly::dynamic facebook::react::toDynamic(uint32_t value); int facebook::react::toAndroidRepr(const facebook::react::SharedColor& color); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); -std::string facebook::react::toString(const facebook::react::DataDetectorType& value); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unique_ptr facebook::react::loadScriptFromAssets(AAssetManager* assetManager, const std::string& assetName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -1027,12 +587,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); template jni::local_ref> facebook::react::makeJWeakReference(jni::alias_ref ref); @@ -1054,11 +608,6 @@ uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); void facebook::react::addDynamicToJArray(jni::alias_ref> jarray, jint index, const folly::dynamic& dyn); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::ensureThreadDurationJNIEnvAttached(); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -1068,36 +617,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -1108,24 +638,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::DataDetectorType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::EdgeInsets& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageResizeMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -1134,15 +656,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::reactAndroidLoggingHook(const std::string& message, unsigned int logLevel); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); @@ -1150,17 +663,10 @@ void facebook::react::serializeTransformAxis(const facebook::react::TransformOpe void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -1232,11 +738,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - class facebook::react::AndroidAnimationChoreographer : public facebook::react::AnimationChoreographer { public virtual void pause() override; public virtual void resume() override; @@ -1295,25 +796,9 @@ class facebook::react::AndroidHorizontalScrollContentViewProps : public facebook public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidHorizontalScrollContentViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidProgressBarEventEmitter : public facebook::react::BaseViewEventEmitter { } -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const facebook::react::AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidProgressBarProps : public facebook::react::HostPlatformViewProps { public AndroidProgressBarProps() = default; public AndroidProgressBarProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidProgressBarProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1328,14 +813,6 @@ class facebook::react::AndroidProgressBarProps : public facebook::react::HostPla public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - class facebook::react::AndroidSwipeRefreshLayoutEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::AndroidSwipeRefreshLayoutEventEmitter::OnRefresh value) const; } @@ -1356,11 +833,6 @@ class facebook::react::AndroidSwipeRefreshLayoutProps : public facebook::react:: public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidSwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::AndroidSwitchEventEmitter::OnChange value) const; } @@ -1370,11 +842,6 @@ struct facebook::react::AndroidSwitchEventEmitter::OnChange { public int target; } -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatformViewProps { public AndroidSwitchProps() = default; public AndroidSwitchProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidSwitchProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1391,235 +858,6 @@ class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidTextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public AndroidTextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; -} - -class facebook::react::AndroidTextInputEventEmitter : public facebook::react::BaseViewEventEmitter { -} - -class facebook::react::AndroidTextInputProps : public facebook::react::BaseTextInputProps { - public AndroidTextInputProps() = default; - public AndroidTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool allowFontScaling; - public bool autoCorrect; - public bool caretHidden; - public bool contextMenuHidden; - public bool disableFullscreenUI; - public bool hasPadding; - public bool hasPaddingBottom; - public bool hasPaddingEnd; - public bool hasPaddingHorizontal; - public bool hasPaddingLeft; - public bool hasPaddingRight; - public bool hasPaddingStart; - public bool hasPaddingTop; - public bool hasPaddingVertical; - public bool includeFontPadding; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AndroidTextInputTextShadowOffsetStruct textShadowOffset; - public facebook::react::Float fontSize; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor color; - public facebook::react::SharedColor textShadowColor; - public folly::dynamic getDynamic() const; - public int inlineImagePadding; - public int numberOfLines; - public std::string autoComplete; - public std::string fontFamily; - public std::string fontStyle; - public std::string fontWeight; - public std::string importantForAutofill; - public std::string inlineImageLeft; - public std::string keyboardType; - public std::string returnKeyLabel; - public std::string returnKeyType; - public std::string textAlign; - public std::string textBreakStrategy; - public std::string textDecorationLine; - public std::string textTransform; - public std::string value; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::AndroidTextInputShadowNode : public facebook::react::ConcreteViewShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public AndroidTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::AndroidTextInputState { - public AndroidTextInputState() = default; - public AndroidTextInputState(const facebook::react::AndroidTextInputState& previousState, const folly::dynamic& data); - public AndroidTextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public int64_t cachedAttributedStringId; - public int64_t mostRecentEventCount; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -1638,153 +876,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void appendTextAttributesProps(folly::dynamic& result, const facebook::react::BaseTextProps* prevProps) const; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1841,16 +932,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - class facebook::react::BindingsInstallerHolder : public jni::HybridClass { public static constexpr auto kJavaDescriptor; public using BindingsInstallFunc = std::function& callInvoker)>; @@ -1868,72 +949,6 @@ class facebook::react::BlobModuleJSIBindings : public jni::JavaClass messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1948,13 +963,6 @@ class facebook::react::CallInvokerHolder : public jni::HybridClass getCallInvoker(); } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1964,32 +972,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -2095,11 +1077,6 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - class facebook::react::DefaultComponentsRegistry : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public static std::function)> registerCodegenComponentDescriptorsFromEntryPoint; @@ -2122,66 +1099,12 @@ class facebook::react::DefaultTurboModuleManagerDelegate : public jni::HybridCla public std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker) override; } -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -2274,15 +1197,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -2331,13 +1245,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - class facebook::react::FabricMountingManager { public FabricMountingManager(const facebook::react::FabricMountingManager&) = delete; public FabricMountingManager(jni::global_ref& javaUIManager); @@ -2376,38 +1283,6 @@ class facebook::react::FocusOrderingHelper { public static void traverseAndUpdateNextFocusableElement(const std::shared_ptr& parentShadowNode, const std::shared_ptr& focusedShadowNode, const std::shared_ptr& currNode, facebook::react::FocusDirection focusDirection, const facebook::react::UIManager& uimanager, facebook::react::Rect sourceRect, std::optional& nextRect, std::shared_ptr& nextNode); } -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -2460,30 +1335,6 @@ class facebook::react::HighResTimeStamp { public static facebook::react::HighResTimeStamp now() noexcept; } -class facebook::react::HostPlatformParagraphProps : public facebook::react::BaseParagraphProps { - public HostPlatformParagraphProps() = default; - public HostPlatformParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool disabled; - public std::optional dataDetectorType; - public std::optional selectionColor; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::HostPlatformScrollViewProps : public facebook::react::BaseScrollViewProps { - public HostPlatformScrollViewProps() = default; - public HostPlatformScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool nestedScrollEnabled; - public bool sendMomentumEvents; - public facebook::react::SharedColor endFillColor; - public folly::dynamic fadingEdgeLength; - public std::string overScrollMode; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::HostPlatformViewProps : public facebook::react::BaseViewProps { public HostPlatformViewProps() = default; public HostPlatformViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformViewProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -2515,36 +1366,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - -class facebook::react::ImageFetcher { - public ImageFetcher(const facebook::react::ImageFetcher&) = delete; - public ImageFetcher(facebook::react::ImageFetcher&&) = delete; - public ImageFetcher(std::shared_ptr contextContainer); - public facebook::react::ImageFetcher& operator=(const facebook::react::ImageFetcher&) = delete; - public facebook::react::ImageFetcher& operator=(facebook::react::ImageFetcher&&) = delete; - public void flushImageRequests(); - public ~ImageFetcher() = default; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -2556,27 +1383,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -2639,15 +1445,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -2675,15 +1472,6 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public ImageState(const facebook::react::ImageState& previousState, folly::dynamic data); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; - public folly::dynamic getDynamic() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; @@ -2706,43 +1494,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JArrayBuffer : public jni::HybridClass { public JArrayBuffer(std::shared_ptr buffer, bool owningBytes) noexcept; public bool hasBytes() const noexcept; @@ -2822,10 +1573,6 @@ class facebook::react::JNativeModulePerfLogger : public jni::HybridClass get() = 0; } -class facebook::react::JPreparedLayout : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; -} - class facebook::react::JReactExceptionManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public void reportJsException(facebook::jsi::Runtime& runtime, const facebook::react::JsErrorHandler::ProcessedError& error); @@ -2936,46 +1683,6 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass { public facebook::react::MapBuffer getMapBuffer(); public static constexpr auto kJavaDescriptor; @@ -3020,86 +1727,9 @@ struct facebook::react::JavaTurboModule::InitParams { public std::string moduleName; } -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -3132,36 +1762,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -3239,26 +1839,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -3302,85 +1882,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(const facebook::react::ModalHostViewState& previousState, folly::dynamic data); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public folly::dynamic getDynamic() const; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeAccessibilityInfoSpecJSI : public facebook::react::JavaTurboModule { public NativeAccessibilityInfoSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3401,68 +1902,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Jav public NativeAnimatedModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::JavaTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3496,41 +1935,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::JavaTur public NativeBlobModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::JavaTurboModule { public NativeClipboardSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::JavaTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3575,12 +1983,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::JavaTu public NativeI18nManagerSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::JavaTurboModule { public NativeImageEditorSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3597,15 +1999,6 @@ class facebook::react::NativeIntentAndroidSpecJSI : public facebook::react::Java public NativeIntentAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::JavaTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3648,91 +2041,10 @@ class facebook::react::NativeMethodCallInvokerHolder : public jni::HybridClass getNativeMethodCallInvoker(); } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativeNetworkingAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePermissionsAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativePermissionsAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3753,15 +2065,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::JavaTurboMo public NativeRedBoxSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::JavaTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3810,216 +2113,15 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ja public NativeWebSocketModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::ParagraphState { - public ParagraphState() = default; - public ParagraphState(const facebook::react::ParagraphState&, const folly::dynamic&); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager, facebook::react::MeasuredPreparedTextLayout measuredLayout); - public facebook::react::AttributedString attributedString; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::MeasuredPreparedTextLayout measuredLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public jni::local_ref getJNIReference() const; - public std::weak_ptr layoutManager; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; - public static jboolean isTracing(facebook::jni::alias_ref jthis); - public static jint subscribeToTracingStateChanges(facebook::jni::alias_ref jthis, facebook::jni::alias_ref callback); - public static void registerNatives(); - public static void reportMark(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong timestampNanos, facebook::jni::alias_ref detail); - public static void reportMeasure(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong startTimestampNanos, jlong durationNanos, facebook::jni::alias_ref detail); - public static void reportTimeStamp(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong startTimeNanos, jlong endTimeNanos, facebook::jni::alias_ref trackName, facebook::jni::alias_ref trackGroup, facebook::jni::alias_ref color); - public static void unsubscribeFromTracingStateChanges(facebook::jni::alias_ref jthis, jint subscriptionId); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; +class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaClass { + public static constexpr auto kJavaDescriptor; + public static jboolean isTracing(facebook::jni::alias_ref jthis); + public static jint subscribeToTracingStateChanges(facebook::jni::alias_ref jthis, facebook::jni::alias_ref callback); + public static void registerNatives(); + public static void reportMark(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong timestampNanos, facebook::jni::alias_ref detail); + public static void reportMeasure(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong startTimestampNanos, jlong durationNanos, facebook::jni::alias_ref detail); + public static void reportTimeStamp(facebook::jni::alias_ref jthis, facebook::jni::alias_ref name, jlong startTimeNanos, jlong endTimeNanos, facebook::jni::alias_ref trackName, facebook::jni::alias_ref trackGroup, facebook::jni::alias_ref color); + public static void unsubscribeFromTracingStateChanges(facebook::jni::alias_ref jthis, jint subscriptionId); } class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { @@ -4037,21 +2139,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -4109,17 +2196,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -4136,38 +2212,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - class facebook::react::ReadableNativeArray : public jni::HybridClass { protected friend HybridBase; public bool equals(jni::alias_ref other); @@ -4180,198 +2224,6 @@ class facebook::react::ReadableNativeArray : public jni::HybridClass takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -4382,127 +2234,12 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public SafeAreaViewState() = default; - public SafeAreaViewState(const facebook::react::SafeAreaViewState&, folly::dynamic data); - public facebook::react::EdgeInsets padding; - public folly::dynamic getDynamic() const; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(const facebook::react::ScrollViewState& previousState, folly::dynamic data); - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public folly::dynamic getDynamic() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -4602,63 +2339,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -4670,15 +2350,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -4722,48 +2393,6 @@ class facebook::react::StateWrapperImpl : public jni::HybridClass getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - class facebook::react::SurfaceHandlerBinding : public jni::HybridClass { public SurfaceHandlerBinding(facebook::react::SurfaceId surfaceId, const std::string& moduleName); public const facebook::react::SurfaceHandler& getSurfaceHandler(); @@ -4777,43 +2406,6 @@ class facebook::react::SurfaceHandlerBinding : public jni::HybridClass getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -4838,163 +2430,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextLayoutManager { - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextLayoutManager::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measureCachedSpannableById(int64_t cacheId, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::TextLayoutManager::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public using PreparedTextLayout = facebook::react::SafeReleaseJniRef>; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public TextShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteShadowNode; -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -5027,48 +2462,6 @@ class facebook::react::TracingStateCallback : public facebook::jni::JavaClass now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TransformHelper : public facebook::jni::JavaClass { public static constexpr auto * kJavaDescriptor; public static void registerNatives(); @@ -5122,158 +2515,6 @@ class facebook::react::UIConstantsProviderBinding : public facebook::jni::JavaCl public static void registerNatives(); } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5285,33 +2526,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -5327,41 +2541,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -5396,19 +2575,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -5553,54 +2719,6 @@ enum facebook::react::AndroidSwipeRefreshLayoutSize { Large, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -5650,379 +2768,67 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, +enum facebook::react::ColorSpace { + DisplayP3, + sRGB, } -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, +enum facebook::react::Cursor : uint8_t { + Alias, + AllScroll, + Auto, + Cell, + ColResize, + ContextMenu, + Copy, + Crosshair, + Default, + EResize, + EWResize, + Grab, + Grabbing, + Help, + Move, + NEResize, + NESWResize, + NResize, + NSResize, + NWResize, + NWSEResize, + NoDrop, None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, + NotAllowed, + Pointer, + Progress, + RowResize, + SEResize, + SResize, + SWResize, + Text, + Url, + WResize, + Wait, + ZoomIn, + ZoomOut, } -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, +enum facebook::react::DisplayMode { + Hidden, + Suspended, + Visible, } -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, +enum facebook::react::DisplayType { + Contents, + Flex, + Grid, + None, } -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - -enum facebook::react::ColorSpace { - DisplayP3, - sRGB, -} - -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - -enum facebook::react::Cursor : uint8_t { - Alias, - AllScroll, - Auto, - Cell, - ColResize, - ContextMenu, - Copy, - Crosshair, - Default, - EResize, - EWResize, - Grab, - Grabbing, - Help, - Move, - NEResize, - NESWResize, - NResize, - NSResize, - NWResize, - NWSEResize, - NoDrop, - None, - NotAllowed, - Pointer, - Progress, - RowResize, - SEResize, - SResize, - SWResize, - Text, - Url, - WResize, - Wait, - ZoomIn, - ZoomOut, -} - -enum facebook::react::DataDetectorType { - All, - Email, - Link, - None, - PhoneNumber, -} - -enum facebook::react::DisplayMode { - Hidden, - Suspended, - Visible, -} - -enum facebook::react::DisplayType { - Contents, - Flex, - Grid, - None, -} - -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - -enum facebook::react::EventPayloadType { - PointerEvent, - ScrollEvent, - ValueFactory, +enum facebook::react::EventPayloadType { + PointerEvent, + ScrollEvent, + ValueFactory, } enum facebook::react::FilterType { @@ -6047,63 +2853,6 @@ enum facebook::react::FocusDirection { FocusUp, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -6116,12 +2865,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -6154,22 +2897,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -6202,15 +2929,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -6224,61 +2942,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -6291,12 +2954,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -6378,107 +3035,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -6507,18 +3063,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -6550,150 +3094,35 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AndroidTextInputTextShadowOffsetStruct { - public double height; - public double width; +struct facebook::react::AnimatedPropsBuffer { + public std::vector doubles; + public std::vector rawProps; + public std::vector ints; } -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; +struct facebook::react::BackgroundPosition { + public BackgroundPosition(); + public bool operator==(const facebook::react::BackgroundPosition& other) const = default; + public std::optional bottom; + public std::optional left; + public std::optional right; + public std::optional top; } -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; +struct facebook::react::BackgroundRepeat { + public BackgroundRepeat(); + public bool operator==(const facebook::react::BackgroundRepeat& other) const = default; + public facebook::react::BackgroundRepeatStyle x; + public facebook::react::BackgroundRepeatStyle y; } -struct facebook::react::AnimatedPropsBuffer { - public std::vector doubles; - public std::vector rawProps; - public std::vector ints; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - -struct facebook::react::BackgroundPosition { - public BackgroundPosition(); - public bool operator==(const facebook::react::BackgroundPosition& other) const = default; - public std::optional bottom; - public std::optional left; - public std::optional right; - public std::optional top; -} - -struct facebook::react::BackgroundRepeat { - public BackgroundRepeat(); - public bool operator==(const facebook::react::BackgroundRepeat& other) const = default; - public facebook::react::BackgroundRepeatStyle x; - public facebook::react::BackgroundRepeatStyle y; -} - -struct facebook::react::BackgroundSizeLengthPercentage { - public BackgroundSizeLengthPercentage(); - public bool isXAuto() const; - public bool isYAuto() const; - public bool operator==(const facebook::react::BackgroundSizeLengthPercentage& other) const = default; - public std::variant x; - public std::variant y; +struct facebook::react::BackgroundSizeLengthPercentage { + public BackgroundSizeLengthPercentage(); + public bool isXAuto() const; + public bool isYAuto() const; + public bool operator==(const facebook::react::BackgroundSizeLengthPercentage& other) const = default; + public std::variant x; + public std::variant y; } struct facebook::react::BaseTouch { @@ -6767,13 +3196,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -6781,286 +3203,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public bool isDefined; public constexpr Color() = default; @@ -7126,21 +3268,9 @@ enum facebook::react::CppMountItem::Type { UpdateState, } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -7150,11 +3280,6 @@ struct facebook::react::DropShadowParams { public folly::dynamic toDynamic() const; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -7169,12 +3294,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -7200,26 +3319,6 @@ struct facebook::react::ImageRequestItem { public facebook::react::Tag tag; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - struct facebook::react::JAssetManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7292,23 +3391,6 @@ struct facebook::react::JTurboModuleWithJSIBindings : public facebook::jni::Java public static constexpr auto kJavaDescriptor; } -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -7348,19 +3430,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -7373,28 +3442,10 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { public facebook::react::ModalHostViewSupportedOrientationsMask value; } -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - struct facebook::react::NativeDrawable { public bool operator!=(const facebook::react::NativeDrawable& rhs) const; public bool operator==(const facebook::react::NativeDrawable& rhs) const; @@ -7419,73 +3470,6 @@ struct facebook::react::NativeDrawable::Ripple { public std::optional> colorResourcePaths; } -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public bool operator==(const facebook::react::Point& rhs) const = default; public facebook::react::Float x; @@ -7524,11 +3508,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -7551,12 +3530,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -7647,13 +3620,6 @@ struct facebook::react::ReadableType : public facebook::jni::JavaClass getType(folly::dynamic::Type type); } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -7671,82 +3637,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -7763,82 +3653,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -7853,44 +3673,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -7924,12 +3706,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -8050,64 +3826,6 @@ struct facebook::react::WritableNativeMap : public jni::HybridClass val); } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -8120,20 +3838,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -8165,17 +3869,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -8197,25 +3890,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -8563,13 +4237,6 @@ class facebook::react::SafeReleaseJniRef { public ~SafeReleaseJniRef(); } -template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - template class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; @@ -8593,29 +4260,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -8944,13 +4588,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -9286,13 +4923,6 @@ class facebook::react::AsyncPromise { public void resolve(T... value); } -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - struct facebook::react::Bridging { public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); @@ -9367,1114 +4997,102 @@ struct facebook::react::Bridging> : public facebook::react::array template struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); - - -const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; -template -void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); + class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnection : public jni::HybridClass { public static constexpr auto kJavaDescriptor; @@ -10535,250 +5153,6 @@ class facebook::react::jsinspector_modern::JInspectorNetworkReporter : public jn public static void reportWebSocketWillSendHandshakeRequest(jni::alias_ref, jni::alias_ref requestId, jni::alias_ref> headers); } -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; -} - -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; -} - -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; -} - -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; -} - -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; -} - struct facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelegateImpl : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate); @@ -10792,624 +5166,13 @@ class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelega public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) override; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; -} - -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; -} - -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; -} - -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; -} - -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; -} - -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; -} - -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; -} - -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; -} - -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -} - -template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; -} - -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; -} +const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); -} - -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; -} - - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; -} - -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; -} - -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; -} - -struct facebook::react::dom::DOMPoint { - public double x; - public double y; -} - -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; -} - -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; -} - -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} +void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; std::shared_ptr facebook::react::CoreComponentsRegistry::sharedProviderRegistry(); @@ -11549,6 +5312,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -11556,112 +5329,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -11705,9 +5372,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -13569,22 +7233,10 @@ class facebook::yoga::vanillajni::ScopedLocalRef { void facebook::gloginit::initialize(const char* tag = "ReactNativeJNI"); -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -13593,30 +7245,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -13625,18 +7261,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -13651,22 +7275,5 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - void YGJNIVanilla::registerNatives(JNIEnv* env); \ No newline at end of file diff --git a/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api b/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api index e58c3cf65e83..e61666350cc0 100644 --- a/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api @@ -319,86 +319,6 @@ union jvalue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -453,137 +373,26 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidHorizontalScrollContentViewShadowNodeComponentName[]; -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AndroidTextInputComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageFetcherKey[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr auto facebook::react::rncore_ModuleProvider; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_BASE_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_CACHE_ID; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_FRAGMENTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::AS_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_IS_ATTACHMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_REACT_TAG; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_TEXT_ATTRIBUTES; -static constexpr facebook::react::MapBuffer::Key facebook::react::FR_KEY_WIDTH; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ADJUST_FONT_SIZE_TO_FIT; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_ELLIPSIZE_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_HYPHENATION_FREQUENCY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_INCLUDE_FONT_PADDING; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MAX_NUMBER_OF_LINES; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SCALE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_MINIMUM_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_ALIGN_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::PA_KEY_TEXT_WIDTH_MODE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ACCESSIBILITY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALIGNMENT_VERTICAL; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ALLOW_FONT_SCALING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BACKGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_BEST_WRITING_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_FAMILY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIANT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_VARIATION_SETTINGS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FONT_WEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_FOREGROUND_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_IS_HIGHLIGHTED; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LAYOUT_DIRECTION; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LETTER_SPACING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_BREAK_STRATEGY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_LINE_HEIGHT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_MAX_FONT_SIZE_MULTIPLIER; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_OPACITY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_ROLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_LINE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_DECORATION_STYLE; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_EFFECTS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_COLOR; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DX; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_OFFSET_DY; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_SHADOW_RADIUS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TA_KEY_TEXT_TRANSFORM; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_NAME; -static constexpr facebook::react::MapBuffer::Key facebook::react::TE_KEY_PROPS; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_ATTRIBUTED_STRING; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_HASH; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_MOST_RECENT_EVENT_COUNT; -static constexpr facebook::react::MapBuffer::Key facebook::react::TX_STATE_KEY_PARAGRAPH_ATTRIBUTES; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; using facebook::react::AndroidDrawerLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidDrawerLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidDrawerLayoutState = facebook::react::StateData; -using facebook::react::AndroidHorizontalScrollContentViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::AndroidSwipeRefreshLayoutShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::AndroidSwipeRefreshLayoutState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -591,22 +400,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -616,139 +410,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = float; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = facebook::react::HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = facebook::react::HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TracingStateListener = std::function; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; template concept facebook::react::StateDataWithJNIReference = requires(StateDataT stateData) { { stateData.getJNIReference() } -> std::same_as>; @@ -757,51 +470,6 @@ template concept facebook::react::StateDataWithMapBuffer = requires(StateDataT stateData) { { stateData.getMapBuffer() } -> std::same_as; }; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -819,51 +487,18 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; AAssetManager* facebook::react::extractAssetManager(jni::alias_ref assetManager); JSI_EXPORT std::shared_ptr facebook::react::FBReactNativeSpec_ModuleProvider(const std::string& moduleName, const facebook::react::JavaTurboModule::InitParams& params); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::AnimatedPropsBuffer facebook::react::encodeAnimatedProps(const std::unordered_map& updates); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); @@ -871,33 +506,19 @@ facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uin facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::MapBuffer facebook::react::serializeImageRequests(const std::vector& items); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString& attributedString); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::AttributedString::Fragment& fragment); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::FontVariant& fontVariant); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphAttributes& paragraphAttributes); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::ParagraphState& paragraphState); -facebook::react::MapBuffer facebook::react::toMapBuffer(const facebook::react::TextAttributes& textAttributes); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -906,17 +527,12 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); folly::dynamic facebook::react::toDynamic(const YGValue& dimension); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidProgressBarProps& props); -folly::dynamic facebook::react::toDynamic(const facebook::react::AndroidTextInputTextShadowOffsetStruct& value); folly::dynamic facebook::react::toDynamic(const facebook::react::BackgroundImage& backgroundImage); folly::dynamic facebook::react::toDynamic(const facebook::react::BoxShadow& boxShadow); folly::dynamic facebook::react::toDynamic(const facebook::react::EdgeInsets& edgeInsets); @@ -924,7 +540,6 @@ folly::dynamic facebook::react::toDynamic(const facebook::react::FilterFunction& folly::dynamic facebook::react::toDynamic(const facebook::react::ImageSource& imageSource); folly::dynamic facebook::react::toDynamic(const facebook::react::Point& point); folly::dynamic facebook::react::toDynamic(const facebook::react::SharedColor& sharedColor); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); @@ -935,91 +550,32 @@ folly::dynamic facebook::react::toDynamic(uint32_t value); int facebook::react::toAndroidRepr(const facebook::react::SharedColor& color); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); -std::string facebook::react::toString(const facebook::react::DataDetectorType& value); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unique_ptr facebook::react::loadScriptFromAssets(AAssetManager* assetManager, const std::string& assetName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -std::vector> facebook::react::buildNativeModuleList(std::weak_ptr winstance, jni::alias_ref::javaobject> javaModules, std::shared_ptr moduleMessageQueue); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -1031,12 +587,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template folly::dynamic facebook::react::toDynamic(const std::vector& arrayValue); template jni::local_ref> facebook::react::makeJWeakReference(jni::alias_ref ref); @@ -1058,11 +608,6 @@ uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); void facebook::react::addDynamicToJArray(jni::alias_ref> jarray, jint index, const folly::dynamic& dyn); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::ensureThreadDurationJNIEnvAttached(); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -1072,36 +617,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -1112,24 +638,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::DataDetectorType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::EdgeInsets& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageResizeMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -1138,15 +656,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::reactAndroidLoggingHook(const std::string& message, unsigned int logLevel); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); @@ -1154,17 +663,10 @@ void facebook::react::serializeTransformAxis(const facebook::react::TransformOpe void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -1236,11 +738,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - class facebook::react::AndroidAnimationChoreographer : public facebook::react::AnimationChoreographer { public virtual void pause() override; public virtual void resume() override; @@ -1299,25 +796,9 @@ class facebook::react::AndroidHorizontalScrollContentViewProps : public facebook public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidHorizontalScrollContentViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidHorizontalScrollContentViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidProgressBarEventEmitter : public facebook::react::BaseViewEventEmitter { } -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const facebook::react::AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidProgressBarProps : public facebook::react::HostPlatformViewProps { public AndroidProgressBarProps() = default; public AndroidProgressBarProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidProgressBarProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1332,14 +813,6 @@ class facebook::react::AndroidProgressBarProps : public facebook::react::HostPla public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - class facebook::react::AndroidSwipeRefreshLayoutEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::AndroidSwipeRefreshLayoutEventEmitter::OnRefresh value) const; } @@ -1360,11 +833,6 @@ class facebook::react::AndroidSwipeRefreshLayoutProps : public facebook::react:: public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::AndroidSwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::AndroidSwitchEventEmitter::OnChange value) const; } @@ -1374,11 +842,6 @@ struct facebook::react::AndroidSwitchEventEmitter::OnChange { public int target; } -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatformViewProps { public AndroidSwitchProps() = default; public AndroidSwitchProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidSwitchProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -1395,235 +858,6 @@ class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidTextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public AndroidTextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; -} - -class facebook::react::AndroidTextInputEventEmitter : public facebook::react::BaseViewEventEmitter { -} - -class facebook::react::AndroidTextInputProps : public facebook::react::BaseTextInputProps { - public AndroidTextInputProps() = default; - public AndroidTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::AndroidTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool allowFontScaling; - public bool autoCorrect; - public bool caretHidden; - public bool contextMenuHidden; - public bool disableFullscreenUI; - public bool hasPadding; - public bool hasPaddingBottom; - public bool hasPaddingEnd; - public bool hasPaddingHorizontal; - public bool hasPaddingLeft; - public bool hasPaddingRight; - public bool hasPaddingStart; - public bool hasPaddingTop; - public bool hasPaddingVertical; - public bool includeFontPadding; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AndroidTextInputTextShadowOffsetStruct textShadowOffset; - public facebook::react::Float fontSize; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor color; - public facebook::react::SharedColor textShadowColor; - public folly::dynamic getDynamic() const; - public int inlineImagePadding; - public int numberOfLines; - public std::string autoComplete; - public std::string fontFamily; - public std::string fontStyle; - public std::string fontWeight; - public std::string importantForAutofill; - public std::string inlineImageLeft; - public std::string keyboardType; - public std::string returnKeyLabel; - public std::string returnKeyType; - public std::string textAlign; - public std::string textBreakStrategy; - public std::string textDecorationLine; - public std::string textTransform; - public std::string value; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::AndroidTextInputShadowNode : public facebook::react::ConcreteViewShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public AndroidTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::AndroidTextInputState { - public AndroidTextInputState() = default; - public AndroidTextInputState(const facebook::react::AndroidTextInputState& previousState, const folly::dynamic& data); - public AndroidTextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public int64_t cachedAttributedStringId; - public int64_t mostRecentEventCount; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -1642,153 +876,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void appendTextAttributesProps(folly::dynamic& result, const facebook::react::BaseTextProps* prevProps) const; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1845,16 +932,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - class facebook::react::BindingsInstallerHolder : public jni::HybridClass { public static constexpr auto kJavaDescriptor; public using BindingsInstallFunc = std::function& callInvoker)>; @@ -1872,72 +949,6 @@ class facebook::react::BlobModuleJSIBindings : public jni::JavaClass messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1952,13 +963,6 @@ class facebook::react::CallInvokerHolder : public jni::HybridClass getCallInvoker(); } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1968,32 +972,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -2081,17 +1059,6 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::CxxReactPackage : public jni::HybridClass { public static constexpr auto kJavaDescriptor; public virtual std::shared_ptr getModule(const std::string& name, const std::shared_ptr& jsInvoker) = 0; @@ -2110,11 +1077,6 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - class facebook::react::DefaultComponentsRegistry : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public static std::function)> registerCodegenComponentDescriptorsFromEntryPoint; @@ -2137,66 +1099,12 @@ class facebook::react::DefaultTurboModuleManagerDelegate : public jni::HybridCla public std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker) override; } -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -2289,15 +1197,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -2346,13 +1245,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - class facebook::react::FabricMountingManager { public FabricMountingManager(const facebook::react::FabricMountingManager&) = delete; public FabricMountingManager(jni::global_ref& javaUIManager); @@ -2391,38 +1283,6 @@ class facebook::react::FocusOrderingHelper { public static void traverseAndUpdateNextFocusableElement(const std::shared_ptr& parentShadowNode, const std::shared_ptr& focusedShadowNode, const std::shared_ptr& currNode, facebook::react::FocusDirection focusDirection, const facebook::react::UIManager& uimanager, facebook::react::Rect sourceRect, std::optional& nextRect, std::shared_ptr& nextNode); } -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -2475,30 +1335,6 @@ class facebook::react::HighResTimeStamp { public static facebook::react::HighResTimeStamp now() noexcept; } -class facebook::react::HostPlatformParagraphProps : public facebook::react::BaseParagraphProps { - public HostPlatformParagraphProps() = default; - public HostPlatformParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool disabled; - public std::optional dataDetectorType; - public std::optional selectionColor; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::HostPlatformScrollViewProps : public facebook::react::BaseScrollViewProps { - public HostPlatformScrollViewProps() = default; - public HostPlatformScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool nestedScrollEnabled; - public bool sendMomentumEvents; - public facebook::react::SharedColor endFillColor; - public folly::dynamic fadingEdgeLength; - public std::string overScrollMode; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::HostPlatformViewProps : public facebook::react::BaseViewProps { public HostPlatformViewProps() = default; public HostPlatformViewProps(const facebook::react::PropsParserContext& context, const facebook::react::HostPlatformViewProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -2530,36 +1366,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - -class facebook::react::ImageFetcher { - public ImageFetcher(const facebook::react::ImageFetcher&) = delete; - public ImageFetcher(facebook::react::ImageFetcher&&) = delete; - public ImageFetcher(std::shared_ptr contextContainer); - public facebook::react::ImageFetcher& operator=(const facebook::react::ImageFetcher&) = delete; - public facebook::react::ImageFetcher& operator=(facebook::react::ImageFetcher&&) = delete; - public void flushImageRequests(); - public ~ImageFetcher() = default; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -2571,27 +1383,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -2654,15 +1445,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -2690,15 +1472,6 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public ImageState(const facebook::react::ImageState& previousState, folly::dynamic data); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; - public folly::dynamic getDynamic() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; @@ -2714,30 +1487,6 @@ class facebook::react::InspectorNetworkRequestListener : public jni::HybridClass public void onHeaders(jint httpStatusCode, jni::alias_ref> headers); } -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -2745,43 +1494,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JArrayBuffer : public jni::HybridClass { public JArrayBuffer(std::shared_ptr buffer, bool owningBytes) noexcept; public bool hasBytes() const noexcept; @@ -2861,10 +1573,6 @@ class facebook::react::JNativeModulePerfLogger : public jni::HybridClass get() = 0; } -class facebook::react::JPreparedLayout : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; -} - class facebook::react::JReactExceptionManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public void reportJsException(facebook::jsi::Runtime& runtime, const facebook::react::JsErrorHandler::ProcessedError& error); @@ -2975,69 +1683,6 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass { public facebook::react::MapBuffer getMapBuffer(); public static constexpr auto kJavaDescriptor; @@ -3060,22 +1705,6 @@ class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass< public static constexpr auto kJavaDescriptor; } -class facebook::react::JavaNativeModule : public facebook::react::NativeModule { - public JavaNativeModule(std::weak_ptr instance, jni::alias_ref wrapper, std::shared_ptr messageQueueThread); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& params) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int reactMethodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - -class facebook::react::JavaScriptExecutorHolder : public jni::HybridClass { - protected JavaScriptExecutorHolder(std::shared_ptr factory); - public static constexpr auto kJavaDescriptor; - public std::shared_ptr getExecutorFactory(); -} - class facebook::react::JavaTimerRegistry : public facebook::react::PlatformTimerRegistry { public JavaTimerRegistry(jni::global_ref javaTimerManager); public virtual void createRecurringTimer(uint32_t timerID, double delayMS) override; @@ -3098,96 +1727,9 @@ struct facebook::react::JavaTurboModule::InitParams { public std::string moduleName; } -class facebook::react::JniJSModulesUnbundle : public facebook::react::JSModulesUnbundle { - public JniJSModulesUnbundle() = default; - public JniJSModulesUnbundle(AAssetManager* assetManager, std::string moduleDirectory); - public JniJSModulesUnbundle(facebook::react::JniJSModulesUnbundle&& other) = delete; - public facebook::react::JniJSModulesUnbundle& operator=(facebook::react::JSModulesUnbundle&& other) = delete; - public static bool isUnbundle(AAssetManager* assetManager, const std::string& assetName); - public static std::unique_ptr fromEntryFile(AAssetManager* assetManager, const std::string& entryFile); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const override; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -3220,36 +1762,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -3327,33 +1839,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::MethodInvoker { - public MethodInvoker(jni::alias_ref method, std::string methodName, std::string signature, std::string traceName, bool isSync); - public bool isSyncHook() const; - public facebook::react::MethodCallResult invoke(std::weak_ptr& instance, jni::alias_ref module, const folly::dynamic& params); - public std::string getMethodName() const; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::State::Shared createInitialState(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family) const override; - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -3397,103 +1882,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(const facebook::react::ModalHostViewState& previousState, folly::dynamic data); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public folly::dynamic getDynamic() const; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleHolder : public facebook::jni::JavaClass { - public facebook::xplat::module::CxxModule::Provider getProvider(const std::string& moduleName) const; - public static constexpr auto kJavaDescriptor; - public std::string getName() const; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeAccessibilityInfoSpecJSI : public facebook::react::JavaTurboModule { public NativeAccessibilityInfoSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3514,68 +1902,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Jav public NativeAnimatedModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::JavaTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3609,41 +1935,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::JavaTur public NativeBlobModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::JavaTurboModule { public NativeClipboardSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::JavaTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3688,12 +1983,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::JavaTu public NativeI18nManagerSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::JavaTurboModule { public NativeImageEditorSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3710,15 +1999,6 @@ class facebook::react::NativeIntentAndroidSpecJSI : public facebook::react::Java public NativeIntentAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::JavaTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3761,101 +2041,10 @@ class facebook::react::NativeMethodCallInvokerHolder : public jni::HybridClass getNativeMethodCallInvoker(); } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativeNetworkingAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePermissionsAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativePermissionsAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3876,15 +2065,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::JavaTurboMo public NativeRedBoxSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::JavaTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3913,26 +2093,6 @@ class facebook::react::NativeTimingSpecJSI : public facebook::react::JavaTurboMo public NativeTimingSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeToastAndroidSpecJSI : public facebook::react::JavaTurboModule { public NativeToastAndroidSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -3953,172 +2113,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ja public NativeWebSocketModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::ParagraphState { - public ParagraphState() = default; - public ParagraphState(const facebook::react::ParagraphState&, const folly::dynamic&); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager); - public ParagraphState(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, std::weak_ptr layoutManager, facebook::react::MeasuredPreparedTextLayout measuredLayout); - public facebook::react::AttributedString attributedString; - public facebook::react::MapBuffer getMapBuffer() const; - public facebook::react::MeasuredPreparedTextLayout measuredLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public folly::dynamic getDynamic() const; - public jni::local_ref getJNIReference() const; - public std::weak_ptr layoutManager; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public static jboolean isTracing(facebook::jni::alias_ref jthis); @@ -4130,41 +2124,6 @@ class facebook::react::PerformanceTracerCxxInterop : public facebook::jni::JavaC public static void unsubscribeFromTracingStateChanges(facebook::jni::alias_ref jthis, jint subscriptionId); } -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -4180,21 +2139,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -4214,16 +2158,6 @@ class facebook::react::PullToRefreshViewProps : public facebook::react::HostPlat public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RawProps { public RawProps(); public RawProps(const facebook::react::RawProps& other) noexcept; @@ -4262,17 +2196,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -4289,38 +2212,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - class facebook::react::ReadableNativeArray : public jni::HybridClass { protected friend HybridBase; public bool equals(jni::alias_ref other); @@ -4333,226 +2224,6 @@ class facebook::react::ReadableNativeArray : public jni::HybridClass takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -4563,127 +2234,12 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public SafeAreaViewState() = default; - public SafeAreaViewState(const facebook::react::SafeAreaViewState&, folly::dynamic data); - public facebook::react::EdgeInsets padding; - public folly::dynamic getDynamic() const; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(const facebook::react::ScrollViewState& previousState, folly::dynamic data); - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public folly::dynamic getDynamic() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -4783,63 +2339,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -4851,15 +2350,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -4903,48 +2393,6 @@ class facebook::react::StateWrapperImpl : public jni::HybridClass getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - class facebook::react::SurfaceHandlerBinding : public jni::HybridClass { public SurfaceHandlerBinding(facebook::react::SurfaceId surfaceId, const std::string& moduleName); public const facebook::react::SurfaceHandler& getSurfaceHandler(); @@ -4958,43 +2406,6 @@ class facebook::react::SurfaceHandlerBinding : public jni::HybridClass getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -5019,163 +2430,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextLayoutManager { - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextLayoutManager::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measureCachedSpannableById(int64_t cacheId, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::TextLayoutManager::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public using PreparedTextLayout = facebook::react::SafeReleaseJniRef>; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public virtual facebook::react::ComponentName getDiffPropsImplementationTarget() const override; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public TextShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteShadowNode; -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -5208,48 +2462,6 @@ class facebook::react::TracingStateCallback : public facebook::jni::JavaClass now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TransformHelper : public facebook::jni::JavaClass { public static constexpr auto * kJavaDescriptor; public static void registerNatives(); @@ -5303,158 +2515,6 @@ class facebook::react::UIConstantsProviderBinding : public facebook::jni::JavaCl public static void registerNatives(); } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5466,33 +2526,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -5508,41 +2541,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -5577,19 +2575,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -5734,54 +2719,6 @@ enum facebook::react::AndroidSwipeRefreshLayoutSize { Large, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -5831,345 +2768,54 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, +enum facebook::react::ColorSpace { + DisplayP3, + sRGB, } -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, +enum facebook::react::Cursor : uint8_t { + Alias, + AllScroll, + Auto, + Cell, + ColResize, + ContextMenu, + Copy, + Crosshair, + Default, + EResize, + EWResize, + Grab, + Grabbing, + Help, + Move, + NEResize, + NESWResize, + NResize, + NSResize, + NWResize, + NWSEResize, + NoDrop, None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, + NotAllowed, + Pointer, + Progress, + RowResize, + SEResize, + SResize, + SWResize, + Text, + Url, + WResize, + Wait, + ZoomIn, + ZoomOut, } -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - -enum facebook::react::ColorSpace { - DisplayP3, - sRGB, -} - -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - -enum facebook::react::Cursor : uint8_t { - Alias, - AllScroll, - Auto, - Cell, - ColResize, - ContextMenu, - Copy, - Crosshair, - Default, - EResize, - EWResize, - Grab, - Grabbing, - Help, - Move, - NEResize, - NESWResize, - NResize, - NSResize, - NWResize, - NWSEResize, - NoDrop, - None, - NotAllowed, - Pointer, - Progress, - RowResize, - SEResize, - SResize, - SWResize, - Text, - Url, - WResize, - Wait, - ZoomIn, - ZoomOut, -} - -enum facebook::react::DataDetectorType { - All, - Email, - Link, - None, - PhoneNumber, -} - -enum facebook::react::DisplayMode { - Hidden, - Suspended, - Visible, +enum facebook::react::DisplayMode { + Hidden, + Suspended, + Visible, } enum facebook::react::DisplayType { @@ -6179,27 +2825,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -6228,63 +2853,6 @@ enum facebook::react::FocusDirection { FocusUp, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -6297,12 +2865,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -6335,22 +2897,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -6383,15 +2929,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -6405,61 +2942,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -6472,12 +2954,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -6559,107 +3035,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -6688,18 +3063,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -6731,127 +3094,12 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AndroidTextInputTextShadowOffsetStruct { - public double height; - public double width; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - struct facebook::react::AnimatedPropsBuffer { public std::vector doubles; public std::vector rawProps; public std::vector ints; } -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - struct facebook::react::BackgroundPosition { public BackgroundPosition(); public bool operator==(const facebook::react::BackgroundPosition& other) const = default; @@ -6948,13 +3196,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -6962,286 +3203,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public bool isDefined; public constexpr Color() = default; @@ -7307,21 +3268,9 @@ enum facebook::react::CppMountItem::Type { UpdateState, } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -7331,11 +3280,6 @@ struct facebook::react::DropShadowParams { public folly::dynamic toDynamic() const; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -7350,12 +3294,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -7381,41 +3319,10 @@ struct facebook::react::ImageRequestItem { public facebook::react::Tag tag; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - struct facebook::react::JAssetManager : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } -struct facebook::react::JBaseJavaModule : public facebook::jni::JavaClass { - public static constexpr auto kJavaDescriptor; -} - struct facebook::react::JCallback : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7445,14 +3352,6 @@ struct facebook::react::JJavaTimerManager : public facebook::jni::JavaClass { - public jni::local_ref getMethod() const; - public static constexpr auto kJavaDescriptor; - public std::string getName() const; - public std::string getSignature() const; - public std::string getType() const; -} - struct facebook::react::JMountItem : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7471,11 +3370,6 @@ struct facebook::react::JReactHostImpl : public facebook::jni::JavaClass message); } -struct facebook::react::JReflectMethod : public facebook::jni::JavaClass { - public jmethodID getMethodID(); - public static constexpr auto kJavaDescriptor; -} - struct facebook::react::JTaskInterface : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; } @@ -7497,30 +3391,6 @@ struct facebook::react::JTurboModuleWithJSIBindings : public facebook::jni::Java public static constexpr auto kJavaDescriptor; } -struct facebook::react::JavaModuleWrapper : public facebook::jni::JavaClass { - public jni::local_ref getModule(); - public jni::local_ref::javaobject> getMethodDescriptors(); - public static constexpr auto kJavaDescriptor; - public std::string getName() const; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -7560,19 +3430,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -7585,47 +3442,10 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { public facebook::react::ModalHostViewSupportedOrientationsMask value; } -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - struct facebook::react::NativeDrawable { public bool operator!=(const facebook::react::NativeDrawable& rhs) const; public bool operator==(const facebook::react::NativeDrawable& rhs) const; @@ -7650,73 +3470,6 @@ struct facebook::react::NativeDrawable::Ripple { public std::optional> colorResourcePaths; } -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public bool operator==(const facebook::react::Point& rhs) const = default; public facebook::react::Float x; @@ -7755,11 +3508,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -7782,12 +3530,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -7878,13 +3620,6 @@ struct facebook::react::ReadableType : public facebook::jni::JavaClass getType(folly::dynamic::Type type); } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -7902,82 +3637,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -7994,82 +3653,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -8084,44 +3673,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -8155,12 +3706,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -8281,64 +3826,6 @@ struct facebook::react::WritableNativeMap : public jni::HybridClass val); } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -8351,20 +3838,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -8396,17 +3869,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -8428,25 +3890,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -8795,14 +4238,7 @@ class facebook::react::SafeReleaseJniRef { } template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - -template -class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { +class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; public ConcreteComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); public using ConcreteEventEmitter = typename ShadowNodeT::ConcreteEventEmitter; @@ -8824,29 +4260,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -9175,13 +4588,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -9517,13 +4923,6 @@ class facebook::react::AsyncPromise { public void resolve(T... value); } -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - struct facebook::react::Bridging { public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); @@ -9598,1114 +4997,102 @@ struct facebook::react::Bridging> : public facebook::react::array template struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); - - -const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; -template -void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& viewProps); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps& viewProps); + class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnection : public jni::HybridClass { public static constexpr auto kJavaDescriptor; @@ -10766,250 +5153,6 @@ class facebook::react::jsinspector_modern::JInspectorNetworkReporter : public jn public static void reportWebSocketWillSendHandshakeRequest(jni::alias_ref, jni::alias_ref requestId, jni::alias_ref> headers); } -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; -} - -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; -} - -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; -} - -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; -} - -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; -} - struct facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelegateImpl : public facebook::jni::JavaClass { public static constexpr auto kJavaDescriptor; public std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate); @@ -11023,624 +5166,13 @@ class facebook::react::jsinspector_modern::JCxxInspectorPackagerConnectionDelega public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) override; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; -} - -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; -} - -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; -} - -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; -} - -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; -} - -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; -} - -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; -} - -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; -} - -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -} - -template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; -} - -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; -} - -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; -} +const char* facebook::react::exceptions::gUnexpectedNativeTypeExceptionClass; template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); -} - -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; -} - - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; -} - -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; -} - -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; -} - -struct facebook::react::dom::DOMPoint { - public double x; - public double y; -} - -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; -} - -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; -} - -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} +void facebook::react::exceptions::throwIfObjectAlreadyConsumed(const T& t, const char* msg); -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +constexpr facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; std::shared_ptr facebook::react::CoreComponentsRegistry::sharedProviderRegistry(); @@ -11780,6 +5312,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -11787,112 +5329,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -11936,9 +5372,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -13800,22 +7233,10 @@ class facebook::yoga::vanillajni::ScopedLocalRef { void facebook::gloginit::initialize(const char* tag = "ReactNativeJNI"); -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -13824,30 +7245,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -13856,18 +7261,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -13882,22 +7275,5 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - void YGJNIVanilla::registerNatives(JNIEnv* env); \ No newline at end of file diff --git a/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api b/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api index 193fb5bb0240..132361aa5733 100644 --- a/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api @@ -313,15 +313,6 @@ category UIView(React) { public virtual void removeReactSubview:(UIView* subview); } -class ObjCTimerRegistry : public facebook::react::PlatformTimerRegistry { - public ObjCTimerRegistry(); - public RCTTiming* _Null_unspecified timing; - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) override; - public virtual void createTimer(uint32_t timerID, double delayMS) override; - public virtual void deleteTimer(uint32_t timerID) override; - public virtual void setTimerManager(std::weak_ptr timerManager) override; -} - class RCTComponentViewClassDescriptor { public Class viewClass; public bool observesMountingTransactionDidMount; @@ -1151,20 +1142,6 @@ interface RCTGradientUtils : public NSObject { interface RCTHTTPRequestHandler : public NSObject { } -interface RCTHost : public NSObject { - public @property (assign, readonly) RCTModuleRegistry* moduleRegistry; - public @property (assign, readonly) RCTSurfacePresenter* surfacePresenter; - public @property (weak) id runtimeDelegate; - public virtual RCTFabricSurface* createSurfaceWithModuleName:initialProperties:(NSString* moduleName, NSDictionary* properties); - public virtual RCTFabricSurface* createSurfaceWithModuleName:mode:initialProperties:(NSString* moduleName, facebook::react::DisplayMode displayMode, NSDictionary* properties); - public virtual instancetype initWithBundleURL:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(NSURL* bundleURL, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:bundleConfiguration:devMenuConfiguration:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions, RCTBundleConfiguration* bundleConfiguration, RCTDevMenuConfiguration* devMenuConfiguration); - public virtual std::shared_ptr jsCallInvoker(); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void start(); -} - interface RCTI18nManager : public NSObject { } @@ -1259,17 +1236,6 @@ interface RCTInspectorWebSocketReporter : public NSObject { public virtual static void reportWillSendHandshakeRequest:request:(_Nullable NSString* requestId, NSURLRequest* request); } -interface RCTInstance : public NSObject { - public @property (assign, readonly) std::shared_ptr jsCallInvoker; - public @property (strong, readonly) RCTSurfacePresenter* surfacePresenter; - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:devMenuConfiguration:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions, RCTDevMenuConfiguration* _Nullable devMenuConfiguration); - public virtual void callFunctionOnBufferedRuntimeExecutor:(std::function&& executor); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void invalidate(); - public virtual void registerSegmentWithId:path:(NSNumber* segmentId, NSString* path); -} - interface RCTInterpolationAnimatedNode : public RCTValueAnimatedNode { } @@ -1287,15 +1253,6 @@ interface RCTJSStackFrame : public NSObject { public virtual static instancetype stackFrameWithLine:(NSString* line); } -interface RCTJSThreadManager : public NSObject { - public virtual std::shared_ptr jsMessageThread(); - public virtual void dispatchToJSThread:(dispatch_block_t block); -} - -interface RCTJSTimerExecutor : public NSObject { - public virtual void setTimerManager:(std::weak_ptr timerManager); -} - interface RCTJavaScriptLoader : public NSObject { public virtual static NSData* attemptSynchronousLoadOfBundleAtURL:sourceLength:error:(NSURL* scriptURL, int64_t* sourceLength, NSError** error); public virtual static void loadBundleAtURL:onProgress:onComplete:(NSURL* scriptURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock onComplete); @@ -1948,15 +1905,6 @@ interface RCTSyncImageManager : public NSObject { interface RCTTextInputComponentView : public RCTViewComponentView { } -interface RCTTextLayoutManager : public NSObject { - public virtual facebook::react::LinesMeasurements getLinesForAttributedString:paragraphAttributes:size:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGSize size); - public virtual facebook::react::TextMeasurement measureAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual facebook::react::TextMeasurement measureNSAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(NSAttributedString* attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual std::shared_ptr getEventEmitterWithAttributeString:paragraphAttributes:frame:atPoint:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, CGPoint point); - public virtual void drawAttributedString:paragraphAttributes:frame:drawHighlightPath:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, void(^)(UIBezierPath* highlightPath) block); - public virtual void getRectWithAttributedString:paragraphAttributes:enumerateAttribute:frame:usingBlock:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, NSString* enumerateAttribute, CGRect frame, RCTTextLayoutFragmentEnumerationBlock block); -} - interface RCTTextSelection : public NSObject { public @property (assign, readonly) NSInteger end; public @property (assign, readonly) NSInteger start; @@ -2682,10 +2630,6 @@ protocol RCTComponentViewProtocol : public NSObject { public virtual void updateState:oldState:(const facebook::react::State::Shared& state, const facebook::react::State::Shared& oldState); } -protocol RCTContextContainerHandling : public NSObject { - public virtual void didCreateContextContainer:(std::shared_ptr contextContainer); -} - protocol RCTCustomPullToRefreshViewProtocol { } @@ -2784,18 +2728,6 @@ protocol RCTFrameUpdateObserver : public NSObjectNSObject { public virtual void didUpdateFrame:(RCTFrameUpdate* update); } -protocol RCTHostDelegate : public NSObject { - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); - public virtual void host:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTHost* host, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual void hostDidStart:(RCTHost* host); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - -protocol RCTHostRuntimeDelegate : public NSObject { - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); -} - protocol RCTImageCache : public NSObject { public virtual UIImage* imageForUrl:size:scale:resizeMode:(NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode); public virtual void addImageToCache:URL:size:scale:resizeMode:response:(UIImage* image, NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode, NSURLResponse* response); @@ -2872,13 +2804,6 @@ protocol RCTInitializing : public NSObject { protocol RCTInputAccessoryViewProtocol : public NSObject { } -protocol RCTInstanceDelegate : public RCTContextContainerHandling { - public virtual BOOL instance:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTInstance* instance, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void instance:didInitializeRuntime:(RCTInstance* instance, facebook::jsi::Runtime& runtime); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - protocol RCTInvalidating : public NSObject { public virtual void invalidate(); } @@ -3145,16 +3070,6 @@ struct RCTCornerRadii { public CGFloat topRightVertical; } -struct RCTFontProperties { - public CGFloat size; - public CGFloat sizeMultiplier; - public NSDictionary* _Nullable variations; - public NSString* family; - public RCTFontStyle style; - public RCTFontVariant variant; - public UIFontWeight weight; -} - struct RCTLayoutContext { public CGPoint absolutePosition; public __unsafe_unretained NSHashTable* _Nonnull other; @@ -3213,86 +3128,6 @@ struct RCTRequired { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -3347,72 +3182,23 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::TextInputComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; template using facebook::react::LazyVector = FB::LazyVector; template using facebook::react::ModuleConstants = _RCTTypedModuleConstants*; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -3420,22 +3206,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -3445,184 +3216,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::CrashManagerProvider = std::function()>; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; using facebook::react::EventEmitterCallback = std::function; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = CGFloat; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -3640,78 +3285,38 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; NSArray* facebook::react::extractKeysFromFollyDynamic(const folly::dynamic& dyn); NSError* facebook::react::tryAndReturnError(const std::function& func); NSString* facebook::react::deriveSourceURL(NSURL* url); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -3720,101 +3325,40 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::convertIdToFollyDynamic(id json); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); id facebook::react::convertFollyDynamicToId(const folly::dynamic& dyn); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -3828,12 +3372,6 @@ RCTManagedPointer* facebook::react::managedPointer(P initializer); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template facebook::react::ModuleConstants facebook::react::typedConstants(typename T::Builder::Input&& value); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); @@ -3852,11 +3390,6 @@ uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexc uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::executeSynchronouslyOnSameThread_CAN_DEADLOCK(const facebook::react::RuntimeExecutor& runtimeExecutor, std::function&& runtimeWork); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -3866,42 +3399,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AutocapitalizationType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardAppearance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ReturnKeyType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Selection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextInputAccessoryVisibilityMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -3912,9 +3420,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -3923,12 +3428,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -3937,16 +3438,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::installLegacyUIManagerConstantsProviderBinding(facebook::jsi::Runtime& runtime); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); @@ -3954,17 +3445,10 @@ void facebook::react::serializeTransformOperationValue(const std::string& operat void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); void facebook::react::unsafeExecuteOnMainThreadSync(std::function work); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -4032,149 +3516,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public facebook::react::SharedColor color; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number transactionNumber, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public std::string debugID() const; - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public std::string debugID() const; - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AppleEventBeat : public facebook::react::EventBeat, public facebook::react::RunLoopObserver::Delegate { public AppleEventBeat(const facebook::react::AppleEventBeat&) = delete; public AppleEventBeat(facebook::react::AppleEventBeat&&) = delete; @@ -4206,151 +3547,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -4407,82 +3603,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -4492,13 +3612,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -4508,32 +3621,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -4599,17 +3686,6 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::DebugStringConvertible { } @@ -4621,71 +3697,12 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public DebuggingOverlayProps(const facebook::react::PropsParserContext& context, const facebook::react::DebuggingOverlayProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -4756,15 +3773,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -4813,45 +3821,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -4922,26 +3891,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -4953,25 +3908,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -5022,15 +3958,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -5057,24 +3984,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::InputAccessoryEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5084,42 +3999,6 @@ class facebook::react::InputAccessoryProps : public facebook::react::HostPlatfor public facebook::react::SharedColor backgroundColor; } -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -5127,43 +4006,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -5203,165 +4045,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr r) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSIRuntimeHolder : public facebook::react::JSRuntime { - public JSIRuntimeHolder(std::unique_ptr runtime); - public virtual facebook::jsi::Runtime& getRuntime() noexcept override; -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - -class facebook::react::JSRuntime { - public virtual facebook::jsi::Runtime& getRuntime() noexcept = 0; - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual ~JSRuntime() = default; -} - -class facebook::react::JSRuntimeFactory { - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept = 0; - public virtual ~JSRuntimeFactory() = default; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -5394,44 +4080,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -5513,25 +4161,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -5573,95 +4202,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public int identifier; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NSDataBigString : public facebook::react::JSBigString { public NSDataBigString(NSData* data); public virtual bool isAscii() const override; @@ -5689,68 +4229,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Obj public NativeAnimatedModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::ObjCTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5767,41 +4245,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::ObjCTur public NativeBlobModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::ObjCTurboModule { public NativeClipboardSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::ObjCTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5842,12 +4289,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::ObjCTu public NativeI18nManagerSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::ObjCTurboModule { public NativeImageEditorSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5860,15 +4301,6 @@ class facebook::react::NativeImageStoreIOSSpecJSI : public facebook::react::ObjC public NativeImageStoreIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::ObjCTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5891,101 +4323,10 @@ class facebook::react::NativeMethodCallInvoker { public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativeNetworkingIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePlatformConstantsIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativePlatformConstantsIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6006,15 +4347,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::ObjCTurboMo public NativeRedBoxSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::ObjCTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6043,26 +4375,6 @@ class facebook::react::NativeTimingSpecJSI : public facebook::react::ObjCTurboMo public NativeTimingSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeVibrationSpecJSI : public facebook::react::ObjCTurboModule { public NativeVibrationSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6079,24 +4391,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule { protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override; protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override; @@ -6133,179 +4427,10 @@ struct facebook::react::ObjCTurboModule::InitParams { public std::string moduleName; } -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PlatformRunLoopObserver : public facebook::react::RunLoopObserver { - public PlatformRunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner, CFRunLoopRef runLoop); - public virtual bool isOnRunLoopThread() const noexcept override; - public ~PlatformRunLoopObserver(); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; +class facebook::react::PlatformRunLoopObserver : public facebook::react::RunLoopObserver { + public PlatformRunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner, CFRunLoopRef runLoop); + public virtual bool isOnRunLoopThread() const noexcept override; + public ~PlatformRunLoopObserver(); } class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { @@ -6319,21 +4444,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -6351,30 +4461,12 @@ class facebook::react::PullToRefreshViewProps : public facebook::react::HostPlat public std::string title; } -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RCTBlobCollector : public facebook::jsi::HostObject { public RCTBlobCollector(RCTBlobManager* blobManager, const std::string& blobId); public static void install(facebook::jsi::Runtime& runtime, RCTBlobManager* blobManager); public ~RCTBlobCollector(); } -class facebook::react::RCTHermesInstance : public facebook::react::JSRuntimeFactory { - public RCTHermesInstance(); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider, bool allocInOldGenBeforeTTI); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTHermesInstance() override; -} - class facebook::react::RCTImageResponseObserverProxy : public facebook::react::ImageResponseObserver { public RCTImageResponseObserverProxy(id delegate = nil); public virtual void didReceiveFailure(const facebook::react::ImageLoadError& error) const override; @@ -6382,12 +4474,6 @@ class facebook::react::RCTImageResponseObserverProxy : public facebook::react::I public virtual void didReceiveProgress(float progress, int64_t loaded, int64_t total) const override; } -class facebook::react::RCTJscInstance : public facebook::react::JSRuntimeFactory { - public RCTJscInstance(); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTJscInstance(); -} - class facebook::react::RCTMessageThread : public facebook::react::MessageQueueThread, public std::enable_shared_from_this { public RCTMessageThread(NSRunLoop* runLoop, RCTJavaScriptCompleteBlock errorBlock); public virtual void quitSynchronous() override; @@ -6435,15 +4521,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -6460,258 +4537,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -6720,105 +4545,6 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public SafeAreaViewProps(const facebook::react::PropsParserContext& context, const facebook::react::SafeAreaViewProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public Sealable(); public Sealable(const facebook::react::Sealable& other); @@ -6831,22 +4557,6 @@ class facebook::react::Sealable { public ~Sealable() noexcept; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - -class facebook::react::Selection { - public int end; - public int start; -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -6946,63 +4656,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -7014,15 +4667,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -7046,90 +4690,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -7152,207 +4712,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public facebook::react::SharedColor trackColorForTrue; } -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public TextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputProps : public facebook::react::BaseTextInputProps { - public TextInputProps() = default; - public TextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::TextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool onChangeSync; - public bool onKeyPressSync; - public const facebook::react::TextInputTraits traits; - public const std::string inputAccessoryViewButtonLabel; - public const std::string inputAccessoryViewID; - public std::optional selection; -} - -class facebook::react::TextInputShadowNode : public facebook::react::BaseTextInputShadowNode { -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextInputTraits { - public bool caretHidden; - public bool clearTextOnFocus; - public bool contextMenuHidden; - public bool editable; - public bool enablesReturnKeyAutomatically; - public bool scrollEnabled; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AutocapitalizationType autocapitalizationType; - public facebook::react::KeyboardAppearance keyboardAppearance; - public facebook::react::KeyboardType keyboardType; - public facebook::react::ReturnKeyType returnKeyType; - public facebook::react::TextInputAccessoryVisibilityMode clearButtonMode; - public std::optional autoCorrect; - public std::optional smartInsertDelete; - public std::optional spellCheck; - public std::string passwordRules; - public std::string textContentType; - public std::vector dataDetectorTypes; -} - -class facebook::react::TextLayoutManager { - protected facebook::react::LineMeasureCache lineMeasureCache_; - protected facebook::react::TextMeasureCache textMeasureCache_; - protected std::shared_ptr contextContainer_; - protected std::shared_ptr nativeTextLayoutManager_; - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public std::shared_ptr getNativeTextLayoutManager() const; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -7372,48 +4731,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -7444,158 +4761,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -7605,32 +4770,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public std::string name; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -7646,41 +4785,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -7713,19 +4817,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public int renderState; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -7849,61 +4940,6 @@ enum facebook::react::ActivityIndicatorViewSize { Small, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - -enum facebook::react::AutocapitalizationType { - Characters, - None, - Sentences, - Words, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -7953,294 +4989,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -8293,27 +5046,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -8333,66 +5065,9 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - -enum facebook::react::GradientDirectionType { - Angle, - Keyword, +enum facebook::react::GradientDirectionType { + Angle, + Keyword, } enum facebook::react::GradientKeyword : uint8_t { @@ -8402,12 +5077,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -8429,29 +5098,6 @@ enum facebook::react::Isolation { Isolate, } -enum facebook::react::KeyboardAppearance { - Dark, - Default, - Light, -} - -enum facebook::react::KeyboardType { - ASCIICapable, - ASCIICapableNumberPad, - DecimalPad, - Default, - EmailAddress, - NamePhonePad, - NumberPad, - NumbersAndPunctuation, - Numeric, - PhonePad, - Twitter, - URL, - VisiblePassword, - WebSearch, -} - enum facebook::react::LayoutConformance : uint8_t { Compatibility, Strict, @@ -8463,22 +5109,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -8511,15 +5141,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -8533,61 +5154,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -8600,29 +5166,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - -enum facebook::react::ReturnKeyType { - Continue, - Default, - Done, - EmergencyCall, - Go, - Google, - Join, - Next, - None, - Previous, - Route, - Search, - Send, - Yahoo, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -8704,114 +5247,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextInputAccessoryVisibilityMode { - Always, - Never, - UnlessEditing, - WhileEditing, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -8840,18 +5275,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -8883,116 +5306,6 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - struct facebook::react::BackgroundPosition { public BackgroundPosition(); public bool operator==(const facebook::react::BackgroundPosition& other) const = default; @@ -9092,13 +5405,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -9106,286 +5412,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public Color(); public Color(const facebook::react::ColorComponents& components); @@ -9422,21 +5448,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -9445,11 +5459,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicColor { public int32_t darkColor; public int32_t highContrastDarkColor; @@ -9471,12 +5480,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -9502,50 +5505,6 @@ struct facebook::react::ImageURLLoaderAttribution { public std::string queryRootName; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -9585,19 +5544,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -9609,112 +5555,8 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - -struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { - public facebook::react::ModalHostViewSupportedOrientationsMask value; -} - -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; +struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { + public facebook::react::ModalHostViewSupportedOrientationsMask value; } struct facebook::react::Point { @@ -9755,11 +5597,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -9782,12 +5619,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -9850,13 +5681,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -9874,82 +5698,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector& path) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -9966,82 +5714,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -10053,44 +5731,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -10124,12 +5764,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -10206,64 +5840,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -10276,20 +5852,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -10320,13 +5882,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - template class facebook::react::RCTIdentifierPool { public int dequeue(); @@ -10334,10 +5889,6 @@ class facebook::react::RCTIdentifierPool { public void reset(); } -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -10355,25 +5906,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -10683,13 +6215,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging> { } -template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - template class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; @@ -10713,29 +6238,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -11046,13 +6548,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -11415,2140 +6910,268 @@ struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfile } template -struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static double resizeObserverIdToJs(facebook::jsi::Runtime& rt, decltype(types.resizeObserverId) value); - public static facebook::jsi::Array borderBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.borderBoxSize) value); - public static facebook::jsi::Array contentBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.contentBoxSize) value); - public static facebook::jsi::Array contentRectToJs(facebook::jsi::Runtime& rt, decltype(types.contentRect) value); - public static facebook::jsi::Array devicePixelContentBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.devicePixelContentBoxSize) value); - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); - public static facebook::jsi::Value targetInstanceHandleToJs(facebook::jsi::Runtime& rt, decltype(types.targetInstanceHandle) value); -} - -template -struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static double resizeObserverIdToJs(facebook::jsi::Runtime& rt, decltype(types.resizeObserverId) value); - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); - public static facebook::jsi::Value targetShadowNodeToJs(facebook::jsi::Runtime& rt, decltype(types.targetShadowNode) value); - public static std::optional boxToJs(facebook::jsi::Runtime& rt, decltype(types.box) value); -} - -template -struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); - public static facebook::jsi::String scriptURLToJs(facebook::jsi::Runtime& rt, decltype(types.scriptURL) value); -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; +struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static double resizeObserverIdToJs(facebook::jsi::Runtime& rt, decltype(types.resizeObserverId) value); + public static facebook::jsi::Array borderBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.borderBoxSize) value); + public static facebook::jsi::Array contentBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.contentBoxSize) value); + public static facebook::jsi::Array contentRectToJs(facebook::jsi::Runtime& rt, decltype(types.contentRect) value); + public static facebook::jsi::Array devicePixelContentBoxSizeToJs(facebook::jsi::Runtime& rt, decltype(types.devicePixelContentBoxSize) value); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); + public static facebook::jsi::Value targetInstanceHandleToJs(facebook::jsi::Runtime& rt, decltype(types.targetInstanceHandle) value); } -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static double resizeObserverIdToJs(facebook::jsi::Runtime& rt, decltype(types.resizeObserverId) value); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); + public static facebook::jsi::Value targetShadowNodeToJs(facebook::jsi::Runtime& rt, decltype(types.targetShadowNode) value); + public static std::optional boxToJs(facebook::jsi::Runtime& rt, decltype(types.box) value); } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); + public static facebook::jsi::String scriptURLToJs(facebook::jsi::Runtime& rt, decltype(types.scriptURL) value); } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); facebook::jsi::Value facebook::react::TurboModuleConvertUtils::convertObjCObjectToJSIValue(facebook::jsi::Runtime& runtime, id value); @@ -13558,9 +7181,6 @@ id facebook::react::TurboModuleConvertUtils::convertJSIValueToObjCObject(faceboo static const facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; - - template constexpr bool facebook::react::bridging::supportsToJs(), std::declval(), nullptr))>>; template @@ -13694,6 +7314,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -13701,112 +7331,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -13850,9 +7374,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -16025,22 +9546,10 @@ struct std::hash { public size_t operator()(const RCTComponentViewDescriptor& componentViewDescriptor) const; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -16049,30 +9558,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -16081,18 +9574,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -16107,23 +9588,6 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - template FB::LazyIterator FB::operator+(typename FB::LazyIterator::difference_type n, const FB::LazyIterator& i); diff --git a/scripts/cxx-api/api-snapshots/ReactAppleNewarchCxx.api b/scripts/cxx-api/api-snapshots/ReactAppleNewarchCxx.api index 81674ace5e1c..84c15bfa7752 100644 --- a/scripts/cxx-api/api-snapshots/ReactAppleNewarchCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAppleNewarchCxx.api @@ -313,15 +313,6 @@ category UIView(React) { public virtual void removeReactSubview:(UIView* subview); } -class ObjCTimerRegistry : public facebook::react::PlatformTimerRegistry { - public ObjCTimerRegistry(); - public RCTTiming* _Null_unspecified timing; - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) override; - public virtual void createTimer(uint32_t timerID, double delayMS) override; - public virtual void deleteTimer(uint32_t timerID) override; - public virtual void setTimerManager(std::weak_ptr timerManager) override; -} - class RCTComponentViewClassDescriptor { public Class viewClass; public bool observesMountingTransactionDidMount; @@ -1151,20 +1142,6 @@ interface RCTGradientUtils : public NSObject { interface RCTHTTPRequestHandler : public NSObject { } -interface RCTHost : public NSObject { - public @property (assign, readonly) RCTModuleRegistry* moduleRegistry; - public @property (assign, readonly) RCTSurfacePresenter* surfacePresenter; - public @property (weak) id runtimeDelegate; - public virtual RCTFabricSurface* createSurfaceWithModuleName:initialProperties:(NSString* moduleName, NSDictionary* properties); - public virtual RCTFabricSurface* createSurfaceWithModuleName:mode:initialProperties:(NSString* moduleName, facebook::react::DisplayMode displayMode, NSDictionary* properties); - public virtual instancetype initWithBundleURL:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(NSURL* bundleURL, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:bundleConfiguration:devMenuConfiguration:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions, RCTBundleConfiguration* bundleConfiguration, RCTDevMenuConfiguration* devMenuConfiguration); - public virtual std::shared_ptr jsCallInvoker(); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void start(); -} - interface RCTI18nManager : public NSObject { } @@ -1259,17 +1236,6 @@ interface RCTInspectorWebSocketReporter : public NSObject { public virtual static void reportWillSendHandshakeRequest:request:(_Nullable NSString* requestId, NSURLRequest* request); } -interface RCTInstance : public NSObject { - public @property (assign, readonly) std::shared_ptr jsCallInvoker; - public @property (strong, readonly) RCTSurfacePresenter* surfacePresenter; - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:devMenuConfiguration:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions, RCTDevMenuConfiguration* _Nullable devMenuConfiguration); - public virtual void callFunctionOnBufferedRuntimeExecutor:(std::function&& executor); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void invalidate(); - public virtual void registerSegmentWithId:path:(NSNumber* segmentId, NSString* path); -} - interface RCTInterpolationAnimatedNode : public RCTValueAnimatedNode { } @@ -1287,15 +1253,6 @@ interface RCTJSStackFrame : public NSObject { public virtual static instancetype stackFrameWithLine:(NSString* line); } -interface RCTJSThreadManager : public NSObject { - public virtual std::shared_ptr jsMessageThread(); - public virtual void dispatchToJSThread:(dispatch_block_t block); -} - -interface RCTJSTimerExecutor : public NSObject { - public virtual void setTimerManager:(std::weak_ptr timerManager); -} - interface RCTJavaScriptLoader : public NSObject { public virtual static NSData* attemptSynchronousLoadOfBundleAtURL:sourceLength:error:(NSURL* scriptURL, int64_t* sourceLength, NSError** error); public virtual static void loadBundleAtURL:onProgress:onComplete:(NSURL* scriptURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock onComplete); @@ -1941,15 +1898,6 @@ interface RCTSyncImageManager : public NSObject { interface RCTTextInputComponentView : public RCTViewComponentView { } -interface RCTTextLayoutManager : public NSObject { - public virtual facebook::react::LinesMeasurements getLinesForAttributedString:paragraphAttributes:size:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGSize size); - public virtual facebook::react::TextMeasurement measureAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual facebook::react::TextMeasurement measureNSAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(NSAttributedString* attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual std::shared_ptr getEventEmitterWithAttributeString:paragraphAttributes:frame:atPoint:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, CGPoint point); - public virtual void drawAttributedString:paragraphAttributes:frame:drawHighlightPath:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, void(^)(UIBezierPath* highlightPath) block); - public virtual void getRectWithAttributedString:paragraphAttributes:enumerateAttribute:frame:usingBlock:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, NSString* enumerateAttribute, CGRect frame, RCTTextLayoutFragmentEnumerationBlock block); -} - interface RCTTextSelection : public NSObject { public @property (assign, readonly) NSInteger end; public @property (assign, readonly) NSInteger start; @@ -2674,10 +2622,6 @@ protocol RCTComponentViewProtocol : public NSObject { public virtual void updateState:oldState:(const facebook::react::State::Shared& state, const facebook::react::State::Shared& oldState); } -protocol RCTContextContainerHandling : public NSObject { - public virtual void didCreateContextContainer:(std::shared_ptr contextContainer); -} - protocol RCTCustomPullToRefreshViewProtocol { } @@ -2776,18 +2720,6 @@ protocol RCTFrameUpdateObserver : public NSObjectNSObject { public virtual void didUpdateFrame:(RCTFrameUpdate* update); } -protocol RCTHostDelegate : public NSObject { - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); - public virtual void host:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTHost* host, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual void hostDidStart:(RCTHost* host); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - -protocol RCTHostRuntimeDelegate : public NSObject { - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); -} - protocol RCTImageCache : public NSObject { public virtual UIImage* imageForUrl:size:scale:resizeMode:(NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode); public virtual void addImageToCache:URL:size:scale:resizeMode:response:(UIImage* image, NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode, NSURLResponse* response); @@ -2864,13 +2796,6 @@ protocol RCTInitializing : public NSObject { protocol RCTInputAccessoryViewProtocol : public NSObject { } -protocol RCTInstanceDelegate : public RCTContextContainerHandling { - public virtual BOOL instance:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTInstance* instance, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void instance:didInitializeRuntime:(RCTInstance* instance, facebook::jsi::Runtime& runtime); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - protocol RCTInvalidating : public NSObject { public virtual void invalidate(); } @@ -3137,16 +3062,6 @@ struct RCTCornerRadii { public CGFloat topRightVertical; } -struct RCTFontProperties { - public CGFloat size; - public CGFloat sizeMultiplier; - public NSDictionary* _Nullable variations; - public NSString* family; - public RCTFontStyle style; - public RCTFontVariant variant; - public UIFontWeight weight; -} - struct RCTLayoutContext { public CGPoint absolutePosition; public __unsafe_unretained NSHashTable* _Nonnull other; @@ -3205,86 +3120,6 @@ struct RCTRequired { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -3339,71 +3174,23 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::TextInputComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; template using facebook::react::LazyVector = FB::LazyVector; template using facebook::react::ModuleConstants = _RCTTypedModuleConstants*; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -3411,22 +3198,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -3436,184 +3208,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::CrashManagerProvider = std::function()>; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; using facebook::react::EventEmitterCallback = std::function; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = CGFloat; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -3631,78 +3277,38 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; NSArray* facebook::react::extractKeysFromFollyDynamic(const folly::dynamic& dyn); NSError* facebook::react::tryAndReturnError(const std::function& func); NSString* facebook::react::deriveSourceURL(NSURL* url); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -3711,99 +3317,40 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::convertIdToFollyDynamic(id json); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); id facebook::react::convertFollyDynamicToId(const folly::dynamic& dyn); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -3817,12 +3364,6 @@ RCTManagedPointer* facebook::react::managedPointer(P initializer); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template facebook::react::ModuleConstants facebook::react::typedConstants(typename T::Builder::Input&& value); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); @@ -3841,11 +3382,6 @@ uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexc uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::executeSynchronouslyOnSameThread_CAN_DEADLOCK(const facebook::react::RuntimeExecutor& runtimeExecutor, std::function&& runtimeWork); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -3855,42 +3391,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AutocapitalizationType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardAppearance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ReturnKeyType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Selection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextInputAccessoryVisibilityMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -3901,9 +3412,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -3912,12 +3420,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -3926,16 +3430,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::installLegacyUIManagerConstantsProviderBinding(facebook::jsi::Runtime& runtime); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); @@ -3943,17 +3437,10 @@ void facebook::react::serializeTransformOperationValue(const std::string& operat void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); void facebook::react::unsafeExecuteOnMainThreadSync(std::function work); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -4021,147 +3508,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public facebook::react::SharedColor color; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number transactionNumber, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AppleEventBeat : public facebook::react::EventBeat, public facebook::react::RunLoopObserver::Delegate { public AppleEventBeat(const facebook::react::AppleEventBeat&) = delete; public AppleEventBeat(facebook::react::AppleEventBeat&&) = delete; @@ -4193,151 +3539,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -4394,82 +3595,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -4479,13 +3604,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -4495,32 +3613,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -4597,71 +3689,12 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public DebuggingOverlayProps(const facebook::react::PropsParserContext& context, const facebook::react::DebuggingOverlayProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -4732,15 +3765,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -4789,45 +3813,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -4897,26 +3882,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -4928,25 +3899,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -4997,15 +3949,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -5032,24 +3975,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::InputAccessoryEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5059,18 +3990,6 @@ class facebook::react::InputAccessoryProps : public facebook::react::HostPlatfor public facebook::react::SharedColor backgroundColor; } -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -5078,43 +3997,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -5154,142 +4036,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSIRuntimeHolder : public facebook::react::JSRuntime { - public JSIRuntimeHolder(std::unique_ptr runtime); - public virtual facebook::jsi::Runtime& getRuntime() noexcept override; -} - -class facebook::react::JSRuntime { - public virtual facebook::jsi::Runtime& getRuntime() noexcept = 0; - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual ~JSRuntime() = default; -} - -class facebook::react::JSRuntimeFactory { - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept = 0; - public virtual ~JSRuntimeFactory() = default; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -5322,44 +4071,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -5441,25 +4152,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -5501,83 +4193,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public int identifier; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NSDataBigString : public facebook::react::JSBigString { public NSDataBigString(NSData* data); public virtual bool isAscii() const override; @@ -5605,68 +4220,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Obj public NativeAnimatedModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::ObjCTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5683,41 +4236,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::ObjCTur public NativeBlobModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::ObjCTurboModule { public NativeClipboardSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::ObjCTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5758,12 +4280,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::ObjCTu public NativeI18nManagerSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::ObjCTurboModule { public NativeImageEditorSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5776,15 +4292,6 @@ class facebook::react::NativeImageStoreIOSSpecJSI : public facebook::react::ObjC public NativeImageStoreIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::ObjCTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5807,91 +4314,10 @@ class facebook::react::NativeMethodCallInvoker { public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativeNetworkingIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePlatformConstantsIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativePlatformConstantsIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5912,15 +4338,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::ObjCTurboMo public NativeRedBoxSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::ObjCTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5965,24 +4382,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule { protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override; protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override; @@ -6019,181 +4418,12 @@ struct facebook::react::ObjCTurboModule::InitParams { public std::string moduleName; } -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - class facebook::react::PlatformRunLoopObserver : public facebook::react::RunLoopObserver { public PlatformRunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner, CFRunLoopRef runLoop); public virtual bool isOnRunLoopThread() const noexcept override; public ~PlatformRunLoopObserver(); } -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -6205,21 +4435,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -6243,14 +4458,6 @@ class facebook::react::RCTBlobCollector : public facebook::jsi::HostObject { public ~RCTBlobCollector(); } -class facebook::react::RCTHermesInstance : public facebook::react::JSRuntimeFactory { - public RCTHermesInstance(); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider, bool allocInOldGenBeforeTTI); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTHermesInstance() override; -} - class facebook::react::RCTImageResponseObserverProxy : public facebook::react::ImageResponseObserver { public RCTImageResponseObserverProxy(id delegate = nil); public virtual void didReceiveFailure(const facebook::react::ImageLoadError& error) const override; @@ -6258,12 +4465,6 @@ class facebook::react::RCTImageResponseObserverProxy : public facebook::react::I public virtual void didReceiveProgress(float progress, int64_t loaded, int64_t total) const override; } -class facebook::react::RCTJscInstance : public facebook::react::JSRuntimeFactory { - public RCTJscInstance(); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTJscInstance(); -} - class facebook::react::RCTMessageThread : public facebook::react::MessageQueueThread, public std::enable_shared_from_this { public RCTMessageThread(NSRunLoop* runLoop, RCTJavaScriptCompleteBlock errorBlock); public virtual void quitSynchronous() override; @@ -6311,15 +4512,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -6336,230 +4528,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -6568,127 +4536,12 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public SafeAreaViewProps(const facebook::react::PropsParserContext& context, const facebook::react::SafeAreaViewProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - -class facebook::react::Selection { - public int end; - public int start; -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -6788,63 +4641,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -6856,15 +4652,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -6888,90 +4675,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -6994,207 +4697,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public facebook::react::SharedColor trackColorForTrue; } -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public TextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputProps : public facebook::react::BaseTextInputProps { - public TextInputProps() = default; - public TextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::TextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool onChangeSync; - public bool onKeyPressSync; - public const facebook::react::TextInputTraits traits; - public const std::string inputAccessoryViewButtonLabel; - public const std::string inputAccessoryViewID; - public std::optional selection; -} - -class facebook::react::TextInputShadowNode : public facebook::react::BaseTextInputShadowNode { -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextInputTraits { - public bool caretHidden; - public bool clearTextOnFocus; - public bool contextMenuHidden; - public bool editable; - public bool enablesReturnKeyAutomatically; - public bool scrollEnabled; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AutocapitalizationType autocapitalizationType; - public facebook::react::KeyboardAppearance keyboardAppearance; - public facebook::react::KeyboardType keyboardType; - public facebook::react::ReturnKeyType returnKeyType; - public facebook::react::TextInputAccessoryVisibilityMode clearButtonMode; - public std::optional autoCorrect; - public std::optional smartInsertDelete; - public std::optional spellCheck; - public std::string passwordRules; - public std::string textContentType; - public std::vector dataDetectorTypes; -} - -class facebook::react::TextLayoutManager { - protected facebook::react::LineMeasureCache lineMeasureCache_; - protected facebook::react::TextMeasureCache textMeasureCache_; - protected std::shared_ptr contextContainer_; - protected std::shared_ptr nativeTextLayoutManager_; - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public std::shared_ptr getNativeTextLayoutManager() const; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -7214,48 +4716,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -7286,158 +4746,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -7447,32 +4755,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public std::string name; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -7488,41 +4770,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -7555,19 +4802,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public int renderState; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -7691,61 +4925,6 @@ enum facebook::react::ActivityIndicatorViewSize { Small, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - -enum facebook::react::AutocapitalizationType { - Characters, - None, - Sentences, - Words, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -7795,294 +4974,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -8135,27 +5031,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -8175,63 +5050,6 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -8244,12 +5062,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -8271,29 +5083,6 @@ enum facebook::react::Isolation { Isolate, } -enum facebook::react::KeyboardAppearance { - Dark, - Default, - Light, -} - -enum facebook::react::KeyboardType { - ASCIICapable, - ASCIICapableNumberPad, - DecimalPad, - Default, - EmailAddress, - NamePhonePad, - NumberPad, - NumbersAndPunctuation, - Numeric, - PhonePad, - Twitter, - URL, - VisiblePassword, - WebSearch, -} - enum facebook::react::LayoutConformance : uint8_t { Compatibility, Strict, @@ -8305,22 +5094,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -8353,15 +5126,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -8375,61 +5139,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -8442,29 +5151,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - -enum facebook::react::ReturnKeyType { - Continue, - Default, - Done, - EmergencyCall, - Go, - Google, - Join, - Next, - None, - Previous, - Route, - Search, - Send, - Yahoo, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -8546,114 +5232,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextInputAccessoryVisibilityMode { - Always, - Never, - UnlessEditing, - WhileEditing, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -8682,18 +5260,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -8725,116 +5291,6 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - struct facebook::react::BackgroundPosition { public BackgroundPosition(); public bool operator==(const facebook::react::BackgroundPosition& other) const = default; @@ -8934,13 +5390,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -8948,286 +5397,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public Color(); public Color(const facebook::react::ColorComponents& components); @@ -9264,21 +5433,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -9287,11 +5444,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicColor { public int32_t darkColor; public int32_t highContrastDarkColor; @@ -9313,12 +5465,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -9344,43 +5490,6 @@ struct facebook::react::ImageURLLoaderAttribution { public std::string queryRootName; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -9420,19 +5529,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -9444,95 +5540,10 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { public facebook::react::ModalHostViewSupportedOrientationsMask value; } -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public bool operator==(const facebook::react::Point& rhs) const = default; public facebook::react::Float x; @@ -9571,11 +5582,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -9598,12 +5604,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -9666,13 +5666,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -9690,82 +5683,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector& path) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -9782,82 +5699,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -9869,44 +5716,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -9940,12 +5749,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -10022,64 +5825,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -10092,20 +5837,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -10136,13 +5867,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - template class facebook::react::RCTIdentifierPool { public int dequeue(); @@ -10150,10 +5874,6 @@ class facebook::react::RCTIdentifierPool { public void reset(); } -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -10171,25 +5891,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -10499,13 +6200,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging> { } -template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - template class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; @@ -10529,29 +6223,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -10862,13 +6533,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -11096,2141 +6760,269 @@ template struct facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; +template +struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; +template +struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); facebook::jsi::Value facebook::react::TurboModuleConvertUtils::convertObjCObjectToJSIValue(facebook::jsi::Runtime& runtime, id value); @@ -13240,9 +7032,6 @@ id facebook::react::TurboModuleConvertUtils::convertJSIValueToObjCObject(faceboo static const facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; - - template constexpr bool facebook::react::bridging::supportsToJs(), std::declval(), nullptr))>>; template @@ -13376,6 +7165,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -13383,112 +7182,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -13532,9 +7225,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -15707,22 +9397,10 @@ struct std::hash { public size_t operator()(const RCTComponentViewDescriptor& componentViewDescriptor) const; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -15731,30 +9409,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -15763,18 +9425,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -15789,23 +9439,6 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - template FB::LazyIterator FB::operator+(typename FB::LazyIterator::difference_type n, const FB::LazyIterator& i); diff --git a/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api b/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api index db9d046d055f..6037f5c2833d 100644 --- a/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api @@ -313,15 +313,6 @@ category UIView(React) { public virtual void removeReactSubview:(UIView* subview); } -class ObjCTimerRegistry : public facebook::react::PlatformTimerRegistry { - public ObjCTimerRegistry(); - public RCTTiming* _Null_unspecified timing; - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) override; - public virtual void createTimer(uint32_t timerID, double delayMS) override; - public virtual void deleteTimer(uint32_t timerID) override; - public virtual void setTimerManager(std::weak_ptr timerManager) override; -} - class RCTComponentViewClassDescriptor { public Class viewClass; public bool observesMountingTransactionDidMount; @@ -1151,20 +1142,6 @@ interface RCTGradientUtils : public NSObject { interface RCTHTTPRequestHandler : public NSObject { } -interface RCTHost : public NSObject { - public @property (assign, readonly) RCTModuleRegistry* moduleRegistry; - public @property (assign, readonly) RCTSurfacePresenter* surfacePresenter; - public @property (weak) id runtimeDelegate; - public virtual RCTFabricSurface* createSurfaceWithModuleName:initialProperties:(NSString* moduleName, NSDictionary* properties); - public virtual RCTFabricSurface* createSurfaceWithModuleName:mode:initialProperties:(NSString* moduleName, facebook::react::DisplayMode displayMode, NSDictionary* properties); - public virtual instancetype initWithBundleURL:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(NSURL* bundleURL, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithBundleURLProvider:hostDelegate:turboModuleManagerDelegate:jsEngineProvider:launchOptions:bundleConfiguration:devMenuConfiguration:(RCTHostBundleURLProvider provider, id hostDelegate, id turboModuleManagerDelegate, RCTHostJSEngineProvider jsEngineProvider, _Nullable NSDictionary* launchOptions, RCTBundleConfiguration* bundleConfiguration, RCTDevMenuConfiguration* devMenuConfiguration); - public virtual std::shared_ptr jsCallInvoker(); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void start(); -} - interface RCTI18nManager : public NSObject { } @@ -1259,17 +1236,6 @@ interface RCTInspectorWebSocketReporter : public NSObject { public virtual static void reportWillSendHandshakeRequest:request:(_Nullable NSString* requestId, NSURLRequest* request); } -interface RCTInstance : public NSObject { - public @property (assign, readonly) std::shared_ptr jsCallInvoker; - public @property (strong, readonly) RCTSurfacePresenter* surfacePresenter; - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions); - public virtual instancetype initWithDelegate:jsRuntimeFactory:bundleManager:turboModuleManagerDelegate:moduleRegistry:parentInspectorTarget:launchOptions:devMenuConfiguration:(id delegate, std::shared_ptr jsRuntimeFactory, RCTBundleManager* bundleManager, id turboModuleManagerDelegate, RCTModuleRegistry* moduleRegistry, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget, _Nullable NSDictionary* launchOptions, RCTDevMenuConfiguration* _Nullable devMenuConfiguration); - public virtual void callFunctionOnBufferedRuntimeExecutor:(std::function&& executor); - public virtual void callFunctionOnJSModule:method:args:(NSString* moduleName, NSString* method, NSArray* args); - public virtual void invalidate(); - public virtual void registerSegmentWithId:path:(NSNumber* segmentId, NSString* path); -} - interface RCTInterpolationAnimatedNode : public RCTValueAnimatedNode { } @@ -1287,15 +1253,6 @@ interface RCTJSStackFrame : public NSObject { public virtual static instancetype stackFrameWithLine:(NSString* line); } -interface RCTJSThreadManager : public NSObject { - public virtual std::shared_ptr jsMessageThread(); - public virtual void dispatchToJSThread:(dispatch_block_t block); -} - -interface RCTJSTimerExecutor : public NSObject { - public virtual void setTimerManager:(std::weak_ptr timerManager); -} - interface RCTJavaScriptLoader : public NSObject { public virtual static NSData* attemptSynchronousLoadOfBundleAtURL:sourceLength:error:(NSURL* scriptURL, int64_t* sourceLength, NSError** error); public virtual static void loadBundleAtURL:onProgress:onComplete:(NSURL* scriptURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock onComplete); @@ -1948,15 +1905,6 @@ interface RCTSyncImageManager : public NSObject { interface RCTTextInputComponentView : public RCTViewComponentView { } -interface RCTTextLayoutManager : public NSObject { - public virtual facebook::react::LinesMeasurements getLinesForAttributedString:paragraphAttributes:size:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGSize size); - public virtual facebook::react::TextMeasurement measureAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual facebook::react::TextMeasurement measureNSAttributedString:paragraphAttributes:layoutContext:layoutConstraints:(NSAttributedString* attributedString, facebook::react::ParagraphAttributes paragraphAttributes, facebook::react::TextLayoutContext layoutContext, facebook::react::LayoutConstraints layoutConstraints); - public virtual std::shared_ptr getEventEmitterWithAttributeString:paragraphAttributes:frame:atPoint:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, CGPoint point); - public virtual void drawAttributedString:paragraphAttributes:frame:drawHighlightPath:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, CGRect frame, void(^)(UIBezierPath* highlightPath) block); - public virtual void getRectWithAttributedString:paragraphAttributes:enumerateAttribute:frame:usingBlock:(facebook::react::AttributedString attributedString, facebook::react::ParagraphAttributes paragraphAttributes, NSString* enumerateAttribute, CGRect frame, RCTTextLayoutFragmentEnumerationBlock block); -} - interface RCTTextSelection : public NSObject { public @property (assign, readonly) NSInteger end; public @property (assign, readonly) NSInteger start; @@ -2682,10 +2630,6 @@ protocol RCTComponentViewProtocol : public NSObject { public virtual void updateState:oldState:(const facebook::react::State::Shared& state, const facebook::react::State::Shared& oldState); } -protocol RCTContextContainerHandling : public NSObject { - public virtual void didCreateContextContainer:(std::shared_ptr contextContainer); -} - protocol RCTCustomPullToRefreshViewProtocol { } @@ -2784,18 +2728,6 @@ protocol RCTFrameUpdateObserver : public NSObjectNSObject { public virtual void didUpdateFrame:(RCTFrameUpdate* update); } -protocol RCTHostDelegate : public NSObject { - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); - public virtual void host:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTHost* host, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual void hostDidStart:(RCTHost* host); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - -protocol RCTHostRuntimeDelegate : public NSObject { - public virtual void host:didInitializeRuntime:(RCTHost* host, facebook::jsi::Runtime& runtime); -} - protocol RCTImageCache : public NSObject { public virtual UIImage* imageForUrl:size:scale:resizeMode:(NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode); public virtual void addImageToCache:URL:size:scale:resizeMode:response:(UIImage* image, NSString* url, CGSize size, CGFloat scale, RCTResizeMode resizeMode, NSURLResponse* response); @@ -2872,13 +2804,6 @@ protocol RCTInitializing : public NSObject { protocol RCTInputAccessoryViewProtocol : public NSObject { } -protocol RCTInstanceDelegate : public RCTContextContainerHandling { - public virtual BOOL instance:didReceiveJSErrorStack:message:originalMessage:name:componentStack:exceptionId:isFatal:extraData:(RCTInstance* instance, NSArray*>* stack, NSString* message, NSString* _Nullable originalMessage, NSString* _Nullable name, NSString* _Nullable componentStack, NSUInteger exceptionId, BOOL isFatal, NSDictionary* extraData); - public virtual NSArray* unstableModulesRequiringMainQueueSetup(); - public virtual void instance:didInitializeRuntime:(RCTInstance* instance, facebook::jsi::Runtime& runtime); - public virtual void loadBundleAtURL:onProgress:onComplete:(NSURL* sourceURL, RCTSourceLoadProgressBlock onProgress, RCTSourceLoadBlock loadCallback); -} - protocol RCTInvalidating : public NSObject { public virtual void invalidate(); } @@ -3145,16 +3070,6 @@ struct RCTCornerRadii { public CGFloat topRightVertical; } -struct RCTFontProperties { - public CGFloat size; - public CGFloat sizeMultiplier; - public NSDictionary* _Nullable variations; - public NSString* family; - public RCTFontStyle style; - public RCTFontVariant variant; - public UIFontWeight weight; -} - struct RCTLayoutContext { public CGPoint absolutePosition; public __unsafe_unretained NSHashTable* _Nonnull other; @@ -3213,86 +3128,6 @@ struct RCTRequired { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -3347,72 +3182,23 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::TextInputComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; template using facebook::react::LazyVector = FB::LazyVector; template using facebook::react::ModuleConstants = _RCTTypedModuleConstants*; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; using facebook::react::ActivityIndicatorViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::ActivityIndicatorViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::ActivityIndicatorViewState = facebook::react::StateData; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -3420,22 +3206,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -3445,184 +3216,58 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::CrashManagerProvider = std::function()>; using facebook::react::DebuggingOverlayComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::DebuggingOverlayShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::DebuggingOverlayState = facebook::react::StateData; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = facebook::react::NativeAnimatedTurboModuleEndResult, std::optional>; using facebook::react::EventEmitterCallback = std::function; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; using facebook::react::Float = CGFloat; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; using facebook::react::ModalHostViewSupportedOrientationsMask = uint32_t; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = facebook::react::NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = facebook::react::NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = facebook::react::NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = facebook::react::NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = facebook::react::NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; using facebook::react::PullToRefreshViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::PullToRefreshViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::PullToRefreshViewState = facebook::react::StateData; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; using facebook::react::UnimplementedNativeViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::UnimplementedNativeViewShadowNode = facebook::react::ConcreteViewShadowNode; using facebook::react::UnimplementedNativeViewState = facebook::react::StateData; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -3640,78 +3285,38 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; NSArray* facebook::react::extractKeysFromFollyDynamic(const folly::dynamic& dyn); NSError* facebook::react::tryAndReturnError(const std::function& func); NSString* facebook::react::deriveSourceURL(NSURL* url); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::hostPlatformColorIsColorMeaningful(facebook::react::Color color) noexcept; bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(facebook::react::Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::Color facebook::react::hostPlatformColorFromComponents(facebook::react::ColorComponents components); facebook::react::Color facebook::react::hostPlatformColorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorComponents facebook::react::colorComponentsFromHostPlatformColor(facebook::react::Color color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::Float facebook::react::floatFromYogaFloat(float value); facebook::react::Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::parsePlatformColor(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); @@ -3720,101 +3325,40 @@ facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(facebook::react::Float value); float facebook::react::alphaFromHostPlatformColor(facebook::react::Color color); float facebook::react::blueFromHostPlatformColor(facebook::react::Color color); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; float facebook::react::greenFromHostPlatformColor(facebook::react::Color color); float facebook::react::redFromHostPlatformColor(facebook::react::Color color); -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(facebook::react::Float value); folly::dynamic facebook::react::convertIdToFollyDynamic(id json); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); id facebook::react::convertFollyDynamicToId(const folly::dynamic& dyn); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -facebook::react::Float facebook::react::roundToPixel(facebook::react::Float value, facebook::react::Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, facebook::react::Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, facebook::react::Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, facebook::react::Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -3828,12 +3372,6 @@ RCTManagedPointer* facebook::react::managedPointer(P initializer); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template facebook::react::ModuleConstants facebook::react::typedConstants(typename T::Builder::Input&& value); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); @@ -3852,11 +3390,6 @@ uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexc uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; void facebook::react::FBReactNativeSpec_registerComponentDescriptorsFromCodegen(std::shared_ptr registry); -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::executeSynchronouslyOnSameThread_CAN_DEADLOCK(const facebook::react::RuntimeExecutor& runtimeExecutor, std::function&& runtimeWork); void facebook::react::fromRawValue(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); @@ -3866,42 +3399,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AutocapitalizationType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardAppearance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::KeyboardType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ReturnKeyType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Selection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextInputAccessoryVisibilityMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -3912,9 +3420,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -3923,12 +3428,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -3937,16 +3438,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::installLegacyUIManagerConstantsProviderBinding(facebook::jsi::Runtime& runtime); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); @@ -3954,17 +3445,10 @@ void facebook::react::serializeTransformOperationValue(const std::string& operat void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); void facebook::react::unsafeExecuteOnMainThreadSync(std::function work); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator&(facebook::react::ModalHostViewSupportedOrientationsMask const lhs, enum facebook::react::ModalHostViewSupportedOrientations const rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); @@ -4032,147 +3516,6 @@ class facebook::react::ActivityIndicatorViewProps : public facebook::react::Host public facebook::react::SharedColor color; } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AnimatedModule : public facebook::react::NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number transactionNumber, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AppleEventBeat : public facebook::react::EventBeat, public facebook::react::RunLoopObserver::Delegate { public AppleEventBeat(const facebook::react::AppleEventBeat&) = delete; public AppleEventBeat(facebook::react::AppleEventBeat&&) = delete; @@ -4204,151 +3547,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Float decelerationRate; - public facebook::react::Float endDraggingSensitivityMultiplier; - public facebook::react::Float maximumZoomScale; - public facebook::react::Float minimumZoomScale; - public facebook::react::Float scrollEventThrottle; - public facebook::react::Float snapToInterval; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(facebook::react::Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -4405,82 +3603,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -4490,13 +3612,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -4506,32 +3621,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::Color getColor(); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -4597,17 +3686,6 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::DebugStringConvertible { } @@ -4619,71 +3697,12 @@ class facebook::react::DebuggingOverlayProps : public facebook::react::HostPlatf public DebuggingOverlayProps(const facebook::react::PropsParserContext& context, const facebook::react::DebuggingOverlayProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -4754,15 +3773,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -4811,45 +3821,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -4919,26 +3890,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -4950,25 +3907,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::Float blurRadius; - public facebook::react::Float resizeMultiplier; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional progressiveRenderingEnabled; - public std::optional fadeDuration; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -5019,15 +3957,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public bool operator==(const facebook::react::ImageSource& rhs) const; public facebook::react::Float scale; @@ -5054,24 +3983,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const facebook::react::ImageRequestParams& imageRequestParams); - public const facebook::react::ImageRequest& getImageRequest() const; - public const facebook::react::ImageRequestParams& getImageRequestParams() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::InputAccessoryEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -5081,42 +3998,6 @@ class facebook::react::InputAccessoryProps : public facebook::react::HostPlatfor public facebook::react::SharedColor backgroundColor; } -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -5124,43 +4005,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(facebook::react::Float threshold, facebook::react::Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -5200,165 +4044,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr r) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSIRuntimeHolder : public facebook::react::JSRuntime { - public JSIRuntimeHolder(std::unique_ptr runtime); - public virtual facebook::jsi::Runtime& getRuntime() noexcept override; -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - -class facebook::react::JSRuntime { - public virtual facebook::jsi::Runtime& getRuntime() noexcept = 0; - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual ~JSRuntime() = default; -} - -class facebook::react::JSRuntimeFactory { - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept = 0; - public virtual ~JSRuntimeFactory() = default; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(facebook::react::Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -5391,44 +4079,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public LegacyViewManagerInteropComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -5510,25 +4160,6 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ModalHostViewEventEmitter : public facebook::react::BaseViewEventEmitter { public static char const* toString(const facebook::react::ModalHostViewEventEmitter::OnOrientationChangeOrientation value); public void onDismiss(facebook::react::ModalHostViewEventEmitter::OnDismiss value) const; @@ -5570,95 +4201,6 @@ class facebook::react::ModalHostViewProps : public facebook::react::HostPlatform public int identifier; } -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NSDataBigString : public facebook::react::JSBigString { public NSDataBigString(NSData* data); public virtual bool isAscii() const override; @@ -5686,68 +4228,6 @@ class facebook::react::NativeAnimatedModuleSpecJSI : public facebook::react::Obj public NativeAnimatedModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - class facebook::react::NativeAnimatedTurboModuleSpecJSI : public facebook::react::ObjCTurboModule { public NativeAnimatedTurboModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5764,41 +4244,10 @@ class facebook::react::NativeBlobModuleSpecJSI : public facebook::react::ObjCTur public NativeBlobModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeCPUTime : public facebook::react::NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - class facebook::react::NativeClipboardSpecJSI : public facebook::react::ObjCTurboModule { public NativeClipboardSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeDOM : public facebook::react::NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - class facebook::react::NativeDevLoadingViewSpecJSI : public facebook::react::ObjCTurboModule { public NativeDevLoadingViewSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5839,12 +4288,6 @@ class facebook::react::NativeI18nManagerSpecJSI : public facebook::react::ObjCTu public NativeI18nManagerSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIdleCallbacks : public facebook::react::NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - class facebook::react::NativeImageEditorSpecJSI : public facebook::react::ObjCTurboModule { public NativeImageEditorSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5857,15 +4300,6 @@ class facebook::react::NativeImageStoreIOSSpecJSI : public facebook::react::ObjC public NativeImageStoreIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeIntersectionObserver : public facebook::react::NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeJSCHeapCaptureSpecJSI : public facebook::react::ObjCTurboModule { public NativeJSCHeapCaptureSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -5888,101 +4322,10 @@ class facebook::react::NativeMethodCallInvoker { public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public facebook::react::NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public facebook::react::NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - class facebook::react::NativeNetworkingIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativeNetworkingIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativePerformance : public facebook::react::NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - class facebook::react::NativePlatformConstantsIOSSpecJSI : public facebook::react::ObjCTurboModule { public NativePlatformConstantsIOSSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6003,15 +4346,6 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::ObjCTurboMo public NativeRedBoxSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeResizeObserver : public facebook::react::NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::ObjCTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6040,26 +4374,6 @@ class facebook::react::NativeTimingSpecJSI : public facebook::react::ObjCTurboMo public NativeTimingSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeVibrationSpecJSI : public facebook::react::ObjCTurboModule { public NativeVibrationSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -6076,24 +4390,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule { protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override; protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override; @@ -6130,179 +4426,10 @@ struct facebook::react::ObjCTurboModule::InitParams { public std::string moduleName; } -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::Float minimumFontScale; - public facebook::react::Float minimumFontSize; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PlatformRunLoopObserver : public facebook::react::RunLoopObserver { - public PlatformRunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner, CFRunLoopRef runLoop); - public virtual bool isOnRunLoopThread() const noexcept override; - public ~PlatformRunLoopObserver(); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; +class facebook::react::PlatformRunLoopObserver : public facebook::react::RunLoopObserver { + public PlatformRunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner, CFRunLoopRef runLoop); + public virtual bool isOnRunLoopThread() const noexcept override; + public ~PlatformRunLoopObserver(); } class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { @@ -6316,21 +4443,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::PullToRefreshViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onRefresh(facebook::react::PullToRefreshViewEventEmitter::OnRefresh value) const; } @@ -6348,30 +4460,12 @@ class facebook::react::PullToRefreshViewProps : public facebook::react::HostPlat public std::string title; } -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RCTBlobCollector : public facebook::jsi::HostObject { public RCTBlobCollector(RCTBlobManager* blobManager, const std::string& blobId); public static void install(facebook::jsi::Runtime& runtime, RCTBlobManager* blobManager); public ~RCTBlobCollector(); } -class facebook::react::RCTHermesInstance : public facebook::react::JSRuntimeFactory { - public RCTHermesInstance(); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider); - public RCTHermesInstance(facebook::react::CrashManagerProvider crashManagerProvider, bool allocInOldGenBeforeTTI); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTHermesInstance() override; -} - class facebook::react::RCTImageResponseObserverProxy : public facebook::react::ImageResponseObserver { public RCTImageResponseObserverProxy(id delegate = nil); public virtual void didReceiveFailure(const facebook::react::ImageLoadError& error) const override; @@ -6379,12 +4473,6 @@ class facebook::react::RCTImageResponseObserverProxy : public facebook::react::I public virtual void didReceiveProgress(float progress, int64_t loaded, int64_t total) const override; } -class facebook::react::RCTJscInstance : public facebook::react::JSRuntimeFactory { - public RCTJscInstance(); - public virtual std::unique_ptr createJSRuntime(std::shared_ptr msgQueueThread) noexcept override; - public ~RCTJscInstance(); -} - class facebook::react::RCTMessageThread : public facebook::react::MessageQueueThread, public std::enable_shared_from_this { public RCTMessageThread(NSRunLoop* runLoop, RCTJavaScriptCompleteBlock errorBlock); public virtual void quitSynchronous() override; @@ -6432,15 +4520,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -6457,258 +4536,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - class facebook::react::SafeAreaViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -6717,127 +4544,12 @@ class facebook::react::SafeAreaViewProps : public facebook::react::HostPlatformV public SafeAreaViewProps(const facebook::react::PropsParserContext& context, const facebook::react::SafeAreaViewProps& sourceProps, const facebook::react::RawProps& rawProps); } -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - -class facebook::react::Selection { - public int end; - public int start; -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -6937,63 +4649,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public SharedColor(); public SharedColor(facebook::react::Color color); @@ -7005,15 +4660,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -7037,90 +4683,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::SwitchEventEmitter : public facebook::react::BaseViewEventEmitter { public void onChange(facebook::react::SwitchEventEmitter::OnChange value) const; } @@ -7143,207 +4705,6 @@ class facebook::react::SwitchProps : public facebook::react::HostPlatformViewPro public facebook::react::SharedColor trackColorForTrue; } -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::Float fontSize; - public facebook::react::Float fontSizeMultiplier; - public facebook::react::Float letterSpacing; - public facebook::react::Float lineHeight; - public facebook::react::Float maxFontSizeMultiplier; - public facebook::react::Float opacity; - public facebook::react::Float textShadowRadius; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public TextInputComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputProps : public facebook::react::BaseTextInputProps { - public TextInputProps() = default; - public TextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::TextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool onChangeSync; - public bool onKeyPressSync; - public const facebook::react::TextInputTraits traits; - public const std::string inputAccessoryViewButtonLabel; - public const std::string inputAccessoryViewID; - public std::optional selection; -} - -class facebook::react::TextInputShadowNode : public facebook::react::BaseTextInputShadowNode { -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextInputTraits { - public bool caretHidden; - public bool clearTextOnFocus; - public bool contextMenuHidden; - public bool editable; - public bool enablesReturnKeyAutomatically; - public bool scrollEnabled; - public bool secureTextEntry; - public bool selectTextOnFocus; - public bool showSoftInputOnFocus; - public facebook::react::AutocapitalizationType autocapitalizationType; - public facebook::react::KeyboardAppearance keyboardAppearance; - public facebook::react::KeyboardType keyboardType; - public facebook::react::ReturnKeyType returnKeyType; - public facebook::react::TextInputAccessoryVisibilityMode clearButtonMode; - public std::optional autoCorrect; - public std::optional smartInsertDelete; - public std::optional spellCheck; - public std::string passwordRules; - public std::string textContentType; - public std::vector dataDetectorTypes; -} - -class facebook::react::TextLayoutManager { - protected facebook::react::LineMeasureCache lineMeasureCache_; - protected facebook::react::TextMeasureCache textMeasureCache_; - protected std::shared_ptr contextContainer_; - protected std::shared_ptr nativeTextLayoutManager_; - public TextLayoutManager(const facebook::react::TextLayoutManager&) = delete; - public TextLayoutManager(const std::shared_ptr& contextContainer); - public TextLayoutManager(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size) const; - public facebook::react::TextLayoutManager& operator=(const facebook::react::TextLayoutManager&) = delete; - public facebook::react::TextLayoutManager& operator=(facebook::react::TextLayoutManager&&) = delete; - public facebook::react::TextMeasurement measure(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public std::shared_ptr getNativeTextLayoutManager() const; -} - -class facebook::react::TextMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::Float pointScaleFactor; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -7363,48 +4724,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -7435,158 +4754,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public facebook::react::Float height; - public facebook::react::Float width; - public facebook::react::Float x; - public facebook::react::Float y; - public facebook::react::Tag nativeTag; -} - class facebook::react::UnimplementedNativeViewEventEmitter : public facebook::react::BaseViewEventEmitter { } @@ -7596,32 +4763,6 @@ class facebook::react::UnimplementedNativeViewProps : public facebook::react::Ho public std::string name; } -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -7637,41 +4778,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public facebook::react::Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - class facebook::react::VirtualViewEventEmitter : public facebook::react::BaseViewEventEmitter { public void onModeChange(facebook::react::VirtualViewEventEmitter::OnModeChange value) const; } @@ -7704,19 +4810,6 @@ class facebook::react::VirtualViewProps : public facebook::react::HostPlatformVi public int renderState; } -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -7840,61 +4933,6 @@ enum facebook::react::ActivityIndicatorViewSize { Small, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - -enum facebook::react::AutocapitalizationType { - Characters, - None, - Sentences, - Words, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -7944,294 +4982,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -8284,27 +5039,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -8324,66 +5058,9 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - -enum facebook::react::GradientDirectionType { - Angle, - Keyword, +enum facebook::react::GradientDirectionType { + Angle, + Keyword, } enum facebook::react::GradientKeyword : uint8_t { @@ -8393,12 +5070,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -8420,29 +5091,6 @@ enum facebook::react::Isolation { Isolate, } -enum facebook::react::KeyboardAppearance { - Dark, - Default, - Light, -} - -enum facebook::react::KeyboardType { - ASCIICapable, - ASCIICapableNumberPad, - DecimalPad, - Default, - EmailAddress, - NamePhonePad, - NumberPad, - NumbersAndPunctuation, - Numeric, - PhonePad, - Twitter, - URL, - VisiblePassword, - WebSearch, -} - enum facebook::react::LayoutConformance : uint8_t { Compatibility, Strict, @@ -8454,22 +5102,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::ModalHostViewAnimationType { Fade, None, @@ -8502,15 +5134,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -8524,61 +5147,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -8591,29 +5159,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - -enum facebook::react::ReturnKeyType { - Continue, - Default, - Done, - EmergencyCall, - Go, - Google, - Join, - Next, - None, - Previous, - Route, - Search, - Send, - Yahoo, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -8695,114 +5240,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextInputAccessoryVisibilityMode { - Always, - Never, - UnlessEditing, - WhileEditing, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -8831,18 +5268,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -8874,116 +5299,6 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(facebook::react::Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(facebook::react::Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(facebook::react::Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(facebook::react::Float value); - public void setShadowRadius(facebook::react::Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; - public facebook::react::Float initialVelocity; - public facebook::react::Float springDamping; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - struct facebook::react::BackgroundPosition { public BackgroundPosition(); public bool operator==(const facebook::react::BackgroundPosition& other) const = default; @@ -9083,13 +5398,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -9097,286 +5405,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::Color { public Color(); public Color(const facebook::react::ColorComponents& components); @@ -9413,21 +5441,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public bool operator==(const facebook::react::DropShadowParams& other) const = default; public facebook::react::Float offsetX; @@ -9436,11 +5452,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicColor { public int32_t darkColor; public int32_t highContrastDarkColor; @@ -9462,12 +5473,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -9493,50 +5498,6 @@ struct facebook::react::ImageURLLoaderAttribution { public std::string queryRootName; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -9576,19 +5537,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, facebook::react::Float descender, facebook::react::Float capHeight, facebook::react::Float ascender, facebook::react::Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Float ascender; - public facebook::react::Float capHeight; - public facebook::react::Float descender; - public facebook::react::Float xHeight; - public facebook::react::Rect frame; - public static facebook::react::Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -9600,112 +5548,8 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public bool isPercentage; - public facebook::react::Float value; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - -struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { - public facebook::react::ModalHostViewSupportedOrientationsMask value; -} - -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; +struct facebook::react::ModalHostViewSupportedOrientationsMaskWrapped { + public facebook::react::ModalHostViewSupportedOrientationsMask value; } struct facebook::react::Point { @@ -9746,11 +5590,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -9773,12 +5612,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -9841,13 +5674,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public bool containsPoint(facebook::react::Point point) noexcept; public bool operator==(const facebook::react::Rect& rhs) const noexcept = default; @@ -9865,82 +5691,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Float timestamp; - public facebook::react::Float zoomScale; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector& path) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -9957,82 +5707,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public facebook::react::Float height; public facebook::react::Float width; @@ -10044,44 +5724,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::Float pointScaleFactor; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -10115,12 +5757,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -10197,64 +5833,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -10267,20 +5845,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual facebook::react::Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -10311,13 +5875,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - template class facebook::react::RCTIdentifierPool { public int dequeue(); @@ -10325,10 +5882,6 @@ class facebook::react::RCTIdentifierPool { public void reset(); } -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -10346,25 +5899,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template struct facebook::react::NativePerformanceRawPerformanceEntry { public P0 name; @@ -10674,13 +6208,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging> { } -template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - template class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; @@ -10704,29 +6231,6 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } @@ -11037,13 +6541,6 @@ class facebook::react::NativeWebSocketModuleCxxSpec : public facebook::react::Tu public static constexpr std::string_view kModuleName; } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - template struct facebook::react::CascadedRectangleCorners { public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; @@ -11271,2141 +6768,269 @@ template struct facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { - public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); - public static T types; - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public facebook::react::NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; +template +struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; +template +struct facebook::react::NativeResizeObserverNativeResizeObserverEntryBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::NativeResizeObserverNativeResizeObserverObserveOptionsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; -} + +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); facebook::jsi::Value facebook::react::TurboModuleConvertUtils::convertObjCObjectToJSIValue(facebook::jsi::Runtime& runtime, id value); @@ -13415,9 +7040,6 @@ id facebook::react::TurboModuleConvertUtils::convertJSIValueToObjCObject(faceboo static const facebook::react::Color facebook::react::HostPlatformColor::UndefinedColor; -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; - - template constexpr bool facebook::react::bridging::supportsToJs(), std::declval(), nullptr))>>; template @@ -13551,6 +7173,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -13558,112 +7190,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - -void facebook::react::LowPriorityExecutor::execute(std::function&& workItem); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -13707,9 +7233,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -15882,22 +9405,10 @@ struct std::hash { public size_t operator()(const RCTComponentViewDescriptor& componentViewDescriptor) const; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - struct std::hash { public size_t operator()(const facebook::react::Color& color) const; } -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -15906,30 +9417,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -15938,18 +9433,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -15964,23 +9447,6 @@ struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; -} - template FB::LazyIterator FB::operator+(typename FB::LazyIterator::difference_type n, const FB::LazyIterator& i); diff --git a/scripts/cxx-api/api-snapshots/ReactCommonDebugCxx.api b/scripts/cxx-api/api-snapshots/ReactCommonDebugCxx.api index ca287d50b95b..217e69f46061 100644 --- a/scripts/cxx-api/api-snapshots/ReactCommonDebugCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactCommonDebugCxx.api @@ -17,86 +17,6 @@ struct YGValue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -151,67 +71,16 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -219,22 +88,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -244,172 +98,46 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -427,167 +155,66 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; Float facebook::react::floatFromYogaFloat(float value); Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); facebook::react::ValueUnit facebook::react::toValueUnit(const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(Float value); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -Float facebook::react::roundToPixel(Float value, Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -599,12 +226,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, std::optional& result); @@ -620,11 +241,6 @@ uint8_t facebook::react::alphaFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityAction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityLabelledBy& result); @@ -632,36 +248,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -672,9 +269,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -683,12 +277,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -697,32 +287,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); constexpr enum facebook::react::AccessibilityTraits facebook::react::operator&(const enum facebook::react::AccessibilityTraits lhs, const enum facebook::react::AccessibilityTraits rhs); @@ -771,185 +345,6 @@ class facebook::react::AccessibilityProps { public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AnimatedModule : public NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public std::string debugID() const; - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public std::string debugID() const; - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -968,152 +363,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public Float decelerationRate; - public Float endDraggingSensitivityMultiplier; - public Float maximumZoomScale; - public Float minimumZoomScale; - public Float scrollEventThrottle; - public Float snapToInterval; - public Float zoomScale; - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1170,82 +419,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1255,13 +428,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1271,32 +437,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public Color getColor(); - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -1362,85 +502,15 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::DebugStringConvertible { } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -1511,15 +581,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -1568,45 +629,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -1677,26 +699,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -1708,25 +716,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public Float blurRadius; - public Float resizeMultiplier; - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional fadeDuration; - public std::optional progressiveRenderingEnabled; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -1770,15 +759,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public Float scale; public bool operator==(const facebook::react::ImageSource& rhs) const; @@ -1805,60 +785,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const ImageRequestParams& imageRequestParams); - public const ImageRequestParams& getImageRequestParams() const; - public const facebook::react::ImageRequest& getImageRequest() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -1866,43 +798,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold, Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -1942,149 +837,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -2117,36 +872,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -2224,348 +949,12 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - -class facebook::react::NativeCPUTime : public NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - -class facebook::react::NativeDOM : public NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - -class facebook::react::NativeIdleCallbacks : public NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - -class facebook::react::NativeIntersectionObserver : public NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeMethodCallInvoker { public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept = 0; public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) = 0; public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativePerformance : public NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - -class facebook::react::NativeResizeObserver : public NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec { public NativeViewTransition(std::shared_ptr jsInvoker); public facebook::jsi::Value findPseudoElementShadowNodeByTag(facebook::jsi::Runtime& rt, double reactTag); @@ -2574,193 +963,6 @@ class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec public void waitForTransitionAnimation(facebook::jsi::Runtime& rt, double animationId); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public Float minimumFontScale; - public Float minimumFontSize; - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -2772,31 +974,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RawProps { public RawProps(); public RawProps(const facebook::react::RawProps& other) noexcept; @@ -2835,15 +1012,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -2860,357 +1028,6 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public Sealable(); public Sealable(const facebook::react::Sealable& other); @@ -3223,17 +1040,6 @@ class facebook::react::Sealable { public ~Sealable() noexcept; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -3333,63 +1139,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public Color& operator*(); public SharedColor(); @@ -3401,15 +1150,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -3433,234 +1173,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public Float fontSize; - public Float fontSizeMultiplier; - public Float letterSpacing; - public Float lineHeight; - public Float maxFontSizeMultiplier; - public Float opacity; - public Float textShadowRadius; - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public Float zoomScale; - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextMeasureCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -3680,48 +1192,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -3752,184 +1222,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public Float height; - public Float width; - public Float x; - public Float y; - public facebook::react::Tag nativeTag; -} - -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -3945,54 +1237,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -4111,54 +1355,6 @@ enum facebook::react::AccessibilityTraits : uint32_t { UpdatesFrequently, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -4208,294 +1404,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -4548,27 +1461,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -4588,63 +1480,6 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -4657,12 +1492,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -4695,22 +1524,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::NullValueStrategy { Ignore, Override, @@ -4722,15 +1535,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -4744,61 +1548,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -4811,12 +1560,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -4898,107 +1641,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -5027,18 +1669,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -5070,123 +1700,13 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(Float value); - public void setShadowRadius(Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public Float initialVelocity; - public Float springDamping; - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - -struct facebook::react::BackgroundPosition { - public BackgroundPosition(); - public bool operator==(const facebook::react::BackgroundPosition& other) const = default; - public std::optional bottom; - public std::optional left; - public std::optional right; - public std::optional top; +struct facebook::react::BackgroundPosition { + public BackgroundPosition(); + public bool operator==(const facebook::react::BackgroundPosition& other) const = default; + public std::optional bottom; + public std::optional left; + public std::optional right; + public std::optional top; } struct facebook::react::BackgroundRepeat { @@ -5275,13 +1795,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -5289,286 +1802,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::ColorComponents { public facebook::react::ColorSpace colorSpace; public float alpha; @@ -5589,21 +1822,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public Float offsetX; public Float offsetY; @@ -5612,11 +1833,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -5631,12 +1847,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -5655,50 +1865,6 @@ struct facebook::react::FilterFunction { public std::variant parameters; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -5738,19 +1904,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public Float ascender; - public Float capHeight; - public Float descender; - public Float xHeight; - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, Float descender, Float capHeight, Float ascender, Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Rect frame; - public static Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -5762,110 +1915,6 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public Float value; - public bool isPercentage; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public Float x; public Float y; @@ -5904,11 +1953,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -5931,12 +1975,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -5999,13 +2037,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public Float getMaxX() const noexcept; public Float getMaxY() const noexcept; @@ -6023,82 +2054,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public Float timestamp; - public Float zoomScale; - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -6115,82 +2070,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public Float height; public Float width; @@ -6202,44 +2087,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public Float pointScaleFactor; - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -6273,12 +2120,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -6355,64 +2196,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -6425,20 +2208,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -6469,17 +2238,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -6497,25 +2255,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template class facebook::react::SyncCallback { public R call(Args... args) const; @@ -6537,14 +2276,7 @@ struct facebook::react::Bridging : public facebook::react::Bridging< } template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - -template -class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { +class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; public ConcreteComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); public using ConcreteEventEmitter = typename ShadowNodeT::ConcreteEventEmitter; @@ -6566,2188 +2298,283 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - -template -struct facebook::react::CascadedRectangleCorners { - public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; - public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleCorners::OptionalT all; - public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; - public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; - public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; - public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; - public facebook::react::CascadedRectangleCorners::OptionalT endEnd; - public facebook::react::CascadedRectangleCorners::OptionalT endStart; - public facebook::react::CascadedRectangleCorners::OptionalT startEnd; - public facebook::react::CascadedRectangleCorners::OptionalT startStart; - public facebook::react::CascadedRectangleCorners::OptionalT topEnd; - public facebook::react::CascadedRectangleCorners::OptionalT topLeft; - public facebook::react::CascadedRectangleCorners::OptionalT topRight; - public facebook::react::CascadedRectangleCorners::OptionalT topStart; - public using Counterpart = facebook::react::RectangleCorners; - public using OptionalT = std::optional; -} - -template -struct facebook::react::CascadedRectangleEdges { - public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; - public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleEdges::OptionalT all; - public facebook::react::CascadedRectangleEdges::OptionalT block; - public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; - public facebook::react::CascadedRectangleEdges::OptionalT blockStart; - public facebook::react::CascadedRectangleEdges::OptionalT bottom; - public facebook::react::CascadedRectangleEdges::OptionalT end; - public facebook::react::CascadedRectangleEdges::OptionalT horizontal; - public facebook::react::CascadedRectangleEdges::OptionalT left; - public facebook::react::CascadedRectangleEdges::OptionalT right; - public facebook::react::CascadedRectangleEdges::OptionalT start; - public facebook::react::CascadedRectangleEdges::OptionalT top; - public facebook::react::CascadedRectangleEdges::OptionalT vertical; - public using Counterpart = facebook::react::RectangleEdges; - public using OptionalT = std::optional; -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::CascadedRectangleCorners { + public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; + public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleCorners::OptionalT all; + public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; + public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; + public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; + public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; + public facebook::react::CascadedRectangleCorners::OptionalT endEnd; + public facebook::react::CascadedRectangleCorners::OptionalT endStart; + public facebook::react::CascadedRectangleCorners::OptionalT startEnd; + public facebook::react::CascadedRectangleCorners::OptionalT startStart; + public facebook::react::CascadedRectangleCorners::OptionalT topEnd; + public facebook::react::CascadedRectangleCorners::OptionalT topLeft; + public facebook::react::CascadedRectangleCorners::OptionalT topRight; + public facebook::react::CascadedRectangleCorners::OptionalT topStart; + public using Counterpart = facebook::react::RectangleCorners; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::CascadedRectangleEdges { + public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; + public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleEdges::OptionalT all; + public facebook::react::CascadedRectangleEdges::OptionalT block; + public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; + public facebook::react::CascadedRectangleEdges::OptionalT blockStart; + public facebook::react::CascadedRectangleEdges::OptionalT bottom; + public facebook::react::CascadedRectangleEdges::OptionalT end; + public facebook::react::CascadedRectangleEdges::OptionalT horizontal; + public facebook::react::CascadedRectangleEdges::OptionalT left; + public facebook::react::CascadedRectangleEdges::OptionalT right; + public facebook::react::CascadedRectangleEdges::OptionalT start; + public facebook::react::CascadedRectangleEdges::OptionalT top; + public facebook::react::CascadedRectangleEdges::OptionalT vertical; + public using Counterpart = facebook::react::RectangleEdges; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); template @@ -8883,6 +2710,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -8890,109 +2727,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -9036,9 +2770,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -10812,18 +4543,6 @@ struct facebook::yoga::LayoutableChildren::Iterator { } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -10832,30 +4551,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -10864,18 +4567,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -10888,21 +4579,4 @@ struct std::hash> { template struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; } \ No newline at end of file diff --git a/scripts/cxx-api/api-snapshots/ReactCommonNewarchCxx.api b/scripts/cxx-api/api-snapshots/ReactCommonNewarchCxx.api index 55d897711b2b..05433e06a97a 100644 --- a/scripts/cxx-api/api-snapshots/ReactCommonNewarchCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactCommonNewarchCxx.api @@ -17,86 +17,6 @@ struct YGValue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -151,66 +71,16 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -using facebook::react::ActivePointerRegistry = std::unordered_map; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -218,22 +88,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -243,172 +98,46 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -426,165 +155,66 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; Float facebook::react::floatFromYogaFloat(float value); Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); facebook::react::ValueUnit facebook::react::toValueUnit(const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(Float value); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -Float facebook::react::roundToPixel(Float value, Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -596,12 +226,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, std::optional& result); @@ -617,11 +241,6 @@ uint8_t facebook::react::alphaFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityAction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityLabelledBy& result); @@ -629,36 +248,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -669,9 +269,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -680,12 +277,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -694,32 +287,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); constexpr enum facebook::react::AccessibilityTraits facebook::react::operator&(const enum facebook::react::AccessibilityTraits lhs, const enum facebook::react::AccessibilityTraits rhs); @@ -768,183 +345,6 @@ class facebook::react::AccessibilityProps { public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AnimatedModule : public NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -963,152 +363,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public Float decelerationRate; - public Float endDraggingSensitivityMultiplier; - public Float maximumZoomScale; - public Float minimumZoomScale; - public Float scrollEventThrottle; - public Float snapToInterval; - public Float zoomScale; - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1165,82 +419,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1250,13 +428,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1266,32 +437,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public Color getColor(); - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -1360,71 +505,12 @@ class facebook::react::ContextContainer { class facebook::react::DebugStringConvertible { } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -1495,15 +581,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -1552,45 +629,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -1660,26 +698,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -1691,25 +715,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public Float blurRadius; - public Float resizeMultiplier; - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional fadeDuration; - public std::optional progressiveRenderingEnabled; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -1753,15 +758,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public Float scale; public bool operator==(const facebook::react::ImageSource& rhs) const; @@ -1788,36 +784,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const ImageRequestParams& imageRequestParams); - public const ImageRequestParams& getImageRequestParams() const; - public const facebook::react::ImageRequest& getImageRequest() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -1825,43 +797,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold, Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -1901,126 +836,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -2053,36 +871,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -2160,306 +948,12 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - -class facebook::react::NativeCPUTime : public NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - -class facebook::react::NativeDOM : public NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - -class facebook::react::NativeIdleCallbacks : public NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - -class facebook::react::NativeIntersectionObserver : public NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeMethodCallInvoker { public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept = 0; public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) = 0; public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativePerformance : public NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - -class facebook::react::NativeResizeObserver : public NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec { public NativeViewTransition(std::shared_ptr jsInvoker); public facebook::jsi::Value findPseudoElementShadowNodeByTag(facebook::jsi::Runtime& rt, double reactTag); @@ -2468,193 +962,6 @@ class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec public void waitForTransitionAnimation(facebook::jsi::Runtime& rt, double animationId); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public Float minimumFontScale; - public Float minimumFontSize; - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -2666,21 +973,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - class facebook::react::RawProps { public RawProps(); public RawProps(const facebook::react::RawProps& other) noexcept; @@ -2719,15 +1011,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -2744,346 +1027,12 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -3183,63 +1132,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public Color& operator*(); public SharedColor(); @@ -3251,15 +1143,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -3283,234 +1166,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public Float fontSize; - public Float fontSizeMultiplier; - public Float letterSpacing; - public Float lineHeight; - public Float maxFontSizeMultiplier; - public Float opacity; - public Float textShadowRadius; - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public Float zoomScale; - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextMeasureCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -3530,48 +1185,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -3602,184 +1215,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public Float height; - public Float width; - public Float x; - public Float y; - public facebook::react::Tag nativeTag; -} - -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -3795,54 +1230,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -3961,54 +1348,6 @@ enum facebook::react::AccessibilityTraits : uint32_t { UpdatesFrequently, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -4058,294 +1397,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -4398,27 +1454,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -4438,63 +1473,6 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -4507,12 +1485,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -4545,22 +1517,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::NullValueStrategy { Ignore, Override, @@ -4572,15 +1528,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -4594,61 +1541,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -4661,12 +1553,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -4748,107 +1634,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -4877,18 +1662,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -4920,123 +1693,13 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(Float value); - public void setShadowRadius(Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public Float initialVelocity; - public Float springDamping; - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - -struct facebook::react::BackgroundPosition { - public BackgroundPosition(); - public bool operator==(const facebook::react::BackgroundPosition& other) const = default; - public std::optional bottom; - public std::optional left; - public std::optional right; - public std::optional top; +struct facebook::react::BackgroundPosition { + public BackgroundPosition(); + public bool operator==(const facebook::react::BackgroundPosition& other) const = default; + public std::optional bottom; + public std::optional left; + public std::optional right; + public std::optional top; } struct facebook::react::BackgroundRepeat { @@ -5125,13 +1788,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -5139,286 +1795,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::ColorComponents { public facebook::react::ColorSpace colorSpace; public float alpha; @@ -5439,21 +1815,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public Float offsetX; public Float offsetY; @@ -5462,11 +1826,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -5481,12 +1840,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -5505,43 +1858,6 @@ struct facebook::react::FilterFunction { public std::variant parameters; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -5581,19 +1897,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public Float ascender; - public Float capHeight; - public Float descender; - public Float xHeight; - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, Float descender, Float capHeight, Float ascender, Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Rect frame; - public static Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -5605,91 +1908,6 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public Float value; - public bool isPercentage; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public Float x; public Float y; @@ -5728,11 +1946,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -5755,12 +1968,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -5823,13 +2030,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public Float getMaxX() const noexcept; public Float getMaxY() const noexcept; @@ -5847,82 +2047,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public Float timestamp; - public Float zoomScale; - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -5939,82 +2063,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public Float height; public Float width; @@ -6026,44 +2080,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public Float pointScaleFactor; - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -6097,12 +2113,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -6179,64 +2189,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -6249,20 +2201,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -6293,17 +2231,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -6321,25 +2248,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template class facebook::react::SyncCallback { public R call(Args... args) const; @@ -6360,13 +2268,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging> { } -template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - template class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; @@ -6390,2188 +2291,283 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - -template -struct facebook::react::CascadedRectangleCorners { - public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; - public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleCorners::OptionalT all; - public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; - public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; - public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; - public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; - public facebook::react::CascadedRectangleCorners::OptionalT endEnd; - public facebook::react::CascadedRectangleCorners::OptionalT endStart; - public facebook::react::CascadedRectangleCorners::OptionalT startEnd; - public facebook::react::CascadedRectangleCorners::OptionalT startStart; - public facebook::react::CascadedRectangleCorners::OptionalT topEnd; - public facebook::react::CascadedRectangleCorners::OptionalT topLeft; - public facebook::react::CascadedRectangleCorners::OptionalT topRight; - public facebook::react::CascadedRectangleCorners::OptionalT topStart; - public using Counterpart = facebook::react::RectangleCorners; - public using OptionalT = std::optional; -} - -template -struct facebook::react::CascadedRectangleEdges { - public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; - public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleEdges::OptionalT all; - public facebook::react::CascadedRectangleEdges::OptionalT block; - public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; - public facebook::react::CascadedRectangleEdges::OptionalT blockStart; - public facebook::react::CascadedRectangleEdges::OptionalT bottom; - public facebook::react::CascadedRectangleEdges::OptionalT end; - public facebook::react::CascadedRectangleEdges::OptionalT horizontal; - public facebook::react::CascadedRectangleEdges::OptionalT left; - public facebook::react::CascadedRectangleEdges::OptionalT right; - public facebook::react::CascadedRectangleEdges::OptionalT start; - public facebook::react::CascadedRectangleEdges::OptionalT top; - public facebook::react::CascadedRectangleEdges::OptionalT vertical; - public using Counterpart = facebook::react::RectangleEdges; - public using OptionalT = std::optional; -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::CascadedRectangleCorners { + public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; + public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleCorners::OptionalT all; + public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; + public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; + public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; + public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; + public facebook::react::CascadedRectangleCorners::OptionalT endEnd; + public facebook::react::CascadedRectangleCorners::OptionalT endStart; + public facebook::react::CascadedRectangleCorners::OptionalT startEnd; + public facebook::react::CascadedRectangleCorners::OptionalT startStart; + public facebook::react::CascadedRectangleCorners::OptionalT topEnd; + public facebook::react::CascadedRectangleCorners::OptionalT topLeft; + public facebook::react::CascadedRectangleCorners::OptionalT topRight; + public facebook::react::CascadedRectangleCorners::OptionalT topStart; + public using Counterpart = facebook::react::RectangleCorners; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::CascadedRectangleEdges { + public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; + public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleEdges::OptionalT all; + public facebook::react::CascadedRectangleEdges::OptionalT block; + public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; + public facebook::react::CascadedRectangleEdges::OptionalT blockStart; + public facebook::react::CascadedRectangleEdges::OptionalT bottom; + public facebook::react::CascadedRectangleEdges::OptionalT end; + public facebook::react::CascadedRectangleEdges::OptionalT horizontal; + public facebook::react::CascadedRectangleEdges::OptionalT left; + public facebook::react::CascadedRectangleEdges::OptionalT right; + public facebook::react::CascadedRectangleEdges::OptionalT start; + public facebook::react::CascadedRectangleEdges::OptionalT top; + public facebook::react::CascadedRectangleEdges::OptionalT vertical; + public using Counterpart = facebook::react::RectangleEdges; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); template @@ -8707,6 +2703,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -8714,109 +2720,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -8860,9 +2763,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -10636,18 +4536,6 @@ struct facebook::yoga::LayoutableChildren::Iterator { } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -10656,30 +4544,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -10688,18 +4560,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -10712,21 +4572,4 @@ struct std::hash> { template struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; } \ No newline at end of file diff --git a/scripts/cxx-api/api-snapshots/ReactCommonReleaseCxx.api b/scripts/cxx-api/api-snapshots/ReactCommonReleaseCxx.api index f9313a060c5f..05433e06a97a 100644 --- a/scripts/cxx-api/api-snapshots/ReactCommonReleaseCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactCommonReleaseCxx.api @@ -17,86 +17,6 @@ struct YGValue { } -bool facebook::xplat::jsArgAsBool(const folly::dynamic& args, size_t n); -double facebook::xplat::jsArgAsDouble(const folly::dynamic& args, size_t n); -int64_t facebook::xplat::jsArgAsInt(const folly::dynamic& args, size_t n); -std::string facebook::xplat::jsArgAsString(const folly::dynamic& args, size_t n); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const &, const T &... desc); -template -R facebook::xplat::jsArg(const folly::dynamic& arg, R(folly::dynamic::*asFoo)() const, const T &... desc); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const &); -template -R facebook::xplat::jsArgN(const folly::dynamic& args, size_t n, R(folly::dynamic::*asFoo)() const); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsArray(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsDynamic(T&& args, size_t n); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::jsArgAsObject(T&& args, size_t n); - -class facebook::xplat::JsArgumentException : public std::logic_error { - public JsArgumentException(const std::string& msg); -} - - -class facebook::xplat::module::CxxModule { - public static constexpr AsyncTagType AsyncTag; - public static constexpr SyncTagType SyncTag; - public std::weak_ptr getInstance(); - public using Callback = std::function)>; - public using Provider = std::function()>; - public virtual std::map getConstants(); - public virtual std::string getName() = 0; - public virtual std::vector getMethods() = 0; - public virtual ~CxxModule() = default; - public void setInstance(std::weak_ptr instance); -} - -struct facebook::xplat::module::CxxModule::Method { - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc, SyncTagType); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc); - public Method(std::string aname, std::function&& afunc, AsyncTagType); - public bool isPromise; - public const char* getType(); - public size_t callbacks; - public std::function syncFunc; - public std::function func; - public std::string name; - template - public Method(std::string aname, T* t, void(T::*method)()); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback)); - template - public Method(std::string aname, T* t, void(T::*method)(folly::dynamic, facebook::xplat::module::CxxModule::Callback, facebook::xplat::module::CxxModule::Callback), AsyncTagType); -} - - -std::string facebook::xplat::detail::toStringHelper(); -template -R facebook::xplat::detail::jsArg1(const folly::dynamic& arg, M asFoo, const T &... desc); -template -std::string facebook::xplat::detail::toStringHelper(const T& value, const Rest &... rest); -template -facebook::xplat::detail::is_dynamic::type& facebook::xplat::detail::jsArgAsType(T&& args, size_t n, const char* required, bool(folly::dynamic::*isFoo)() const); -template -std::string facebook::xplat::detail::toStringHelper(const char* value, const Rest &... rest); - -template -struct facebook::xplat::detail::is_dynamic { - public using type = typename std::enable_if::value, T>::type; -} - - class facebook::hermes::IHermes : public facebook::jsi::ICast { protected ~IHermes() = default; public static constexpr facebook::jsi::UUID uuid; @@ -151,67 +71,16 @@ struct facebook::hermes::ISetEventLoopControl : public facebook::jsi::ICast { } -const char facebook::react::AndroidProgressBarComponentName[]; -const char facebook::react::AndroidSwitchComponentName[]; -const char facebook::react::AppleSwitchComponentName[]; -const char facebook::react::ImageComponentName[]; -const char facebook::react::ImageManagerKey[]; -const char facebook::react::InputAccessoryComponentName[]; -const char facebook::react::LegacyViewManagerAndroidInteropComponentName[]; -const char facebook::react::LegacyViewManagerInteropComponentName[]; -const char facebook::react::ModalHostViewComponentName[]; -const char facebook::react::ParagraphComponentName[]; -const char facebook::react::RawTextComponentName[]; -const char facebook::react::RootComponentName[]; -const char facebook::react::RuntimeSchedulerKey[]; -const char facebook::react::SafeAreaViewComponentName[]; -const char facebook::react::ScrollViewComponentName[]; -const char facebook::react::TextComponentName[]; -const char facebook::react::TextEffectComponentName[]; -const char facebook::react::UnimplementedViewComponentName[]; const char facebook::react::ViewComponentName[]; const facebook::react::EventTag facebook::react::EMPTY_EVENT_TAG; -constexpr auto facebook::react::kSimpleThreadSafeCacheSizeCap; constexpr char facebook::react::LayoutConformanceShadowNodeComponentName[]; -constexpr char facebook::react::VirtualViewComponentName[]; -constexpr char* const facebook::react::TextLayoutManagerKey; -constexpr facebook::react::HighResDuration facebook::react::DEFAULT_DURATION_THRESHOLD; -constexpr facebook::react::HighResDuration facebook::react::LONG_TASK_DURATION_THRESHOLD; constexpr facebook::react::ReactNativeVersionType facebook::react::ReactNativeVersion; constexpr facebook::react::Tag facebook::react::kNoTag; -constexpr float facebook::react::kDefaultEpsilon; -constexpr size_t facebook::react::EVENT_BUFFER_SIZE; -constexpr size_t facebook::react::LONG_TASK_BUFFER_SIZE; -constexpr size_t facebook::react::RESOURCE_TIMING_BUFFER_SIZE; constexpr uint32_t facebook::react::INITIAL_BUCKETS_SIZE; static const facebook::react::LayoutMetrics facebook::react::EmptyLayoutMetrics; static const facebook::react::TelemetryTimePoint facebook::react::kTelemetryUndefinedTimePoint; static constexpr auto facebook::react::kPropNameLengthHardCap; -static constexpr double facebook::react::SingleFrameIntervalMs; -static constexpr double facebook::react::TicksPerMs; static constexpr facebook::react::RawPropsValueIndex facebook::react::kRawPropsValueIndexEmpty; -static constexpr std::string_view facebook::react::ExtrapolateTypeClamp; -static constexpr std::string_view facebook::react::ExtrapolateTypeExtend; -static constexpr std::string_view facebook::react::ExtrapolateTypeIdentity; -template -using facebook::react::CSSCompoundDataType = std::variant; -template -using facebook::react::CSSCommaSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSWhitespaceSeparatedList = facebook::react::CSSList; -template -using facebook::react::CSSMergedDataTypes = typename facebook::react::detail::merge_data_types::type; -template -using facebook::react::CSSVariantWithTypes = typename facebook::react::detail::merge_variant::type; -template -using facebook::react::EventListenerT = std::function; -typedef std::function facebook::react::ValueListenerCallback; -typedef std::tuple facebook::react::RectAsTuple; -typedef void(*facebook::react::WarnOnUsageLogger)(std::string message); -using facebook::react::ActivePointerRegistry = std::unordered_map; -using facebook::react::AnimationEndCallback = facebook::react::AsyncCallback; -using facebook::react::AnimationTimestamp = std::chrono::duration; -using facebook::react::BackgroundExecutor = std::function&& callback)>; using facebook::react::BackgroundImage = std::variant; using facebook::react::BackgroundSize = std::variant; using facebook::react::BorderColors = facebook::react::RectangleEdges; @@ -219,22 +88,7 @@ using facebook::react::BorderCurves = facebook::react::RectangleCorners; using facebook::react::BorderStyles = facebook::react::RectangleEdges; using facebook::react::BorderWidths = facebook::react::RectangleEdges; -using facebook::react::CSSBackgroundImage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSBackgroundImageList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSFilterFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSFilterList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSFontVariantList = facebook::react::CSSWhitespaceSeparatedList; -using facebook::react::CSSLengthPercentage = facebook::react::CSSCompoundDataType; -using facebook::react::CSSPreservedToken = facebook::react::CSSToken; -using facebook::react::CSSRadialGradientSize = std::variant; -using facebook::react::CSSShadowList = facebook::react::CSSCommaSeparatedList; -using facebook::react::CSSTransformFunction = facebook::react::CSSCompoundDataType; -using facebook::react::CSSTransformList = facebook::react::CSSWhitespaceSeparatedList; using facebook::react::CallFunc = std::function; -using facebook::react::Callback = std::function; -using facebook::react::CallbackHandle = facebook::jsi::Object; -using facebook::react::CallbackId = uint64_t; -using facebook::react::CaptureTargetOverrideRegistry = std::unordered_map>; using facebook::react::CascadedBorderColors = facebook::react::CascadedRectangleEdges; using facebook::react::CascadedBorderCurves = facebook::react::CascadedRectangleCorners; using facebook::react::CascadedBorderRadii = facebook::react::CascadedRectangleCorners; @@ -244,172 +98,46 @@ using facebook::react::ComponentDescriptorConstructor = facebook::react::Compone using facebook::react::ComponentDescriptorProviderRequest = std::function; using facebook::react::ComponentHandle = int64_t; using facebook::react::ComponentName = const char*; -using facebook::react::ComponentRegistryFactory = std::function& contextContainer)>; using facebook::react::CornerInsets = facebook::react::RectangleCorners; -using facebook::react::DispatchEvent = std::function; using facebook::react::EdgeInsets = facebook::react::RectangleEdges; -using facebook::react::EndResult = NativeAnimatedTurboModuleEndResult, std::optional>; -using facebook::react::EventEmitterListener = facebook::react::EventListenerT; -using facebook::react::EventEmitterListenerContainer = facebook::react::EventListenerContainerT; using facebook::react::EventListener = std::function; using facebook::react::EventPipe = std::function; using facebook::react::EventPipeConclusion = std::function; using facebook::react::EventTag = unsigned int; -using facebook::react::GarbageCollectionTrigger = std::function; using facebook::react::GradientDirection = std::variant; -using facebook::react::HasComponentProviderFunctionType = std::function; -using facebook::react::Headers = std::map; using facebook::react::HostPlatformTouch = facebook::react::BaseTouch; using facebook::react::HostPlatformViewEventEmitter = facebook::react::BaseViewEventEmitter; using facebook::react::ImageSources = std::vector; -using facebook::react::InteractionTypesMap = std::unordered_map; -using facebook::react::IntersectionObserverObserverId = int32_t; -using facebook::react::JSIScopedTimeoutInvoker = std::function& invokee, std::function errorMessageProducer)>; using facebook::react::LayoutConformanceComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::LegacyViewManagerAndroidInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LegacyViewManagerInteropShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::LineMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::LinesMeasurements = std::vector; -using facebook::react::Logger = std::function; -using facebook::react::MeasureInWindowOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureLayoutOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MeasureOnSuccessCallback = facebook::react::SyncCallback; -using facebook::react::MethodCallResult = std::optional; -using facebook::react::MountingTransactionCallback = std::function; -using facebook::react::MutationObserverId = int32_t; -using facebook::react::NativeIntersectionObserverEntry = NativeIntersectionObserverNativeIntersectionObserverEntry; -using facebook::react::NativeIntersectionObserverIntersectionObserverId = int32_t; -using facebook::react::NativeIntersectionObserverObserveOptions = NativeIntersectionObserverNativeIntersectionObserverObserveOptions>, std::shared_ptr, std::vector, std::optional>, std::optional>; using facebook::react::NativeMethodCallFunc = std::function; -using facebook::react::NativeMutationObserverObserveOptions = NativeMutationObserverNativeMutationObserverObserveOptions, bool>; -using facebook::react::NativeMutationRecord = NativeMutationObserverNativeMutationRecord, std::vector>; -using facebook::react::NativePartialReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfig, std::optional>; -using facebook::react::NativePerformancePerformanceObserverCallback = facebook::react::AsyncCallback<>; -using facebook::react::NativePerformancePerformanceObserverObserveOptions = NativePerformancePerformanceObserverInit>, std::optional, std::optional, std::optional>; -using facebook::react::NativeReloadAndProfileConfig = NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfig; -using facebook::react::NativeRequestIdleCallbackOptions = NativeIdleCallbacksRequestIdleCallbackOptions>; -using facebook::react::NativeResizeObserverEntry = NativeResizeObserverNativeResizeObserverEntry; -using facebook::react::NativeResizeObserverNotifyCallback = facebook::react::SyncCallback; -using facebook::react::NativeResizeObserverObserveOptions = NativeResizeObserverNativeResizeObserverObserveOptions, std::optional>; -using facebook::react::OnMutations = std::function&)>; -using facebook::react::ParagraphProps = HostPlatformParagraphProps; -using facebook::react::PerformanceEntry = std::variant; -using facebook::react::PerformanceEntryInteractionId = uint32_t; -using facebook::react::PerformanceObserverCallback = std::function; -using facebook::react::PerformanceObserverEntryTypeFilter = std::unordered_set; -using facebook::react::PointerHoverTrackerRegistry = std::unordered_map; -using facebook::react::PointerIdentifier = int32_t; using facebook::react::PromiseSetupFunctionType = std::function)>; -using facebook::react::RawCallback = std::function; using facebook::react::RawPropsPropNameHash = uint32_t; using facebook::react::RawPropsPropNameLength = uint16_t; using facebook::react::RawPropsValueIndex = uint16_t; -using facebook::react::RawTextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ResizeObserverObserverId = int32_t; -using facebook::react::RootComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::RuntimeExecutor = std::function&& callback)>; -using facebook::react::RuntimeSchedulerRenderingUpdate = std::function; -using facebook::react::RuntimeSchedulerTaskErrorHandler = std::function; -using facebook::react::ScrollViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::ScrollViewProps = HostPlatformScrollViewProps; -using facebook::react::ShadowTreeCommitTransaction = std::function; -using facebook::react::ShadowViewMutationList = std::vector; using facebook::react::SharedComponentDescriptor = std::shared_ptr; using facebook::react::SharedComponentDescriptorRegistry = std::shared_ptr; using facebook::react::SharedEventEmitter = std::shared_ptr; using facebook::react::SharedEventPayload = std::shared_ptr; using facebook::react::SharedEventTarget = std::shared_ptr; -using facebook::react::SharedParagraphAttributes = std::shared_ptr; -using facebook::react::SharedRawTextProps = std::shared_ptr; -using facebook::react::SharedScrollViewProps = std::shared_ptr; using facebook::react::SharedShadowNodeFamily = std::shared_ptr; -using facebook::react::SharedTextAttributes = std::shared_ptr; using facebook::react::SharedTouchEventEmitter = std::shared_ptr; using facebook::react::SharedViewEventEmitter = std::shared_ptr; using facebook::react::SharedViewProps = std::shared_ptr; -using facebook::react::SizeAsTuple = std::tuple; -using facebook::react::SnapshotMap = std::unordered_map>; using facebook::react::StatePipe = std::function; using facebook::react::SurfaceId = int32_t; using facebook::react::Tag = int32_t; using facebook::react::TelemetryClock = std::chrono::steady_clock; using facebook::react::TelemetryDuration = std::chrono::nanoseconds; using facebook::react::TelemetryTimePoint = facebook::react::TelemetryClock::time_point; -using facebook::react::TextComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectComponentDescriptor = facebook::react::ConcreteComponentDescriptor; -using facebook::react::TextEffectEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextEventEmitter = facebook::react::TouchEventEmitter; -using facebook::react::TextLayoutManagerExtended = facebook::react::detail::TextLayoutManagerExtended; -using facebook::react::TextMeasureCache = facebook::react::SimpleThreadSafeCache; -using facebook::react::TimePointFunction = std::chrono::steady_clock::time_point(*)(); -using facebook::react::TimerHandle = int; -using facebook::react::TimerManagerDelegate = facebook::react::PlatformTimerRegistry; using facebook::react::Touch = facebook::react::HostPlatformTouch; using facebook::react::Touches = std::unordered_set; -using facebook::react::TraceSectionUnwrapped = facebook::react::DummyTraceSection; using facebook::react::TurboModuleProviderFunctionTypeWithRuntime = std::function(facebook::jsi::Runtime& runtime, const std::string& name)>; -using facebook::react::UiTask = std::function; -using facebook::react::UnimplementedViewShadowNode = facebook::react::ConcreteViewShadowNode; -using facebook::react::UserTimingDetailProvider = std::function; using facebook::react::ValueFactory = std::function; using facebook::react::ViewEventEmitter = facebook::react::HostPlatformViewEventEmitter; -using facebook::react::ViewNodePairScope = std::deque; using facebook::react::ViewProps = facebook::react::HostPlatformViewProps; using facebook::react::ViewShadowNodeProps = facebook::react::ViewProps; -using facebook::react::VirtualViewComponentDescriptor = facebook::react::ConcreteComponentDescriptor; using facebook::react::parsePlatformColorFn = facebook::react::SharedColor(*)(const facebook::react::ContextContainer&, int32_t, const facebook::react::RawValue&); -template -concept facebook::react::CacheGeneratorFunction = std::invocable && std::same_as, ValueT>; -template -concept facebook::react::CSSUniqueComponentValueVisitors = CSSSyntaxVisitorReturn&& (CSSComponentValueVisitor && ...) && - ((CSSFunctionVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSPreservedTokenVisitor ? 1 : 0) + ... + 0) <= 1&& - ((CSSSimpleBlockVisitor ? 1 : 0) + ... + 0) <= 1; -template -concept facebook::react::CSSFunctionBlockSink = requires(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser) { - { T::consumeFunctionBlock(func, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSParserSink = requires(facebook::react::CSSValueParser& parser) { - { T::consume(parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenSink = requires(const facebook::react::CSSPreservedToken& token) { - { T::consumePreservedToken(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockSink = requires(const facebook::react::CSSSimpleBlock& block, facebook::react::CSSValueParser& parser) { - { T::consumeSimpleBlock(block, parser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSValidDataTypeParser = ((CSSFunctionBlockSink || CSSSimpleBlockSink || CSSPreservedTokenSink) && - !CSSParserSink) || -CSSParserSink; -template -concept facebook::react::CSSComponentValueVisitor = CSSSyntaxVisitorReturn&& - (CSSFunctionVisitor || CSSPreservedTokenVisitor || CSSSimpleBlockVisitor); -template -concept facebook::react::CSSFunctionVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSFunctionBlock func, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(func, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSPreservedTokenVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSPreservedToken token) { - { visitor(token) } -> std::convertible_to; -}; -template -concept facebook::react::CSSSimpleBlockVisitor = CSSSyntaxVisitorReturn && requires(T visitor, facebook::react::CSSSimpleBlock block, facebook::react::CSSSyntaxParser& blockParser) { - { visitor(block, blockParser) } -> std::convertible_to; -}; -template -concept facebook::react::CSSDataType = CSSValidDataTypeParser, std::optional> && std::equality_comparable; -template -concept facebook::react::CSSKeywordSet = std::is_enum_v && std::is_same_v, std::underlying_type_t>; -template -concept facebook::react::CSSMaybeCompoundDataType = CSSDataType || CSSValidCompoundDataType; -template -concept facebook::react::CSSSyntaxVisitorReturn = std::is_default_constructible_v && std::equality_comparable; -template -concept facebook::react::CSSValidCompoundDataType = facebook::react::detail::is_variant_of_data_types::value; template concept facebook::react::DeclaresOwnSetProp = std::is_same_v; template @@ -427,167 +155,66 @@ template concept facebook::react::RawPropsFilterable = requires(facebook::react::RawProps& rawProps) { { T::filterRawProps(rawProps) } -> std::same_as; }; -template -concept facebook::react::TextLayoutManagerWithPreparedTextLayout = requires( - TextLayoutManagerT textLayoutManager, - facebook::react::AttributedString attributedString, - facebook::react::ParagraphAttributes paragraphAttributes, - facebook::react::TextLayoutContext layoutContext, - facebook::react::LayoutConstraints layoutConstraints, - typename TextLayoutManagerT::PreparedTextLayout preparedTextLayout) { - sizeof(typename TextLayoutManagerT::PreparedTextLayout); - { - textLayoutManager.prepareLayout(attributedString, paragraphAttributes, layoutContext, layoutConstraints) - } -> std::same_as; - { - textLayoutManager.measurePreparedLayout(preparedTextLayout, layoutContext, layoutConstraints) - } -> std::same_as; -}; Float facebook::react::floatFromYogaFloat(float value); Float facebook::react::floatFromYogaOptionalFloat(facebook::yoga::FloatOptional value); YGDirection facebook::react::yogaDirectionFromLayoutDirection(facebook::react::LayoutDirection direction); -bool facebook::react::areAttributedStringFragmentsEquivalentDisplayWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringFragmentsEquivalentLayoutWise(const facebook::react::AttributedString::Fragment& lhs, const facebook::react::AttributedString::Fragment& rhs); -bool facebook::react::areAttributedStringsEquivalentDisplayWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); -bool facebook::react::areAttributedStringsEquivalentLayoutWise(const facebook::react::AttributedString& lhs, const facebook::react::AttributedString& rhs); bool facebook::react::areBorderRadiiCircular(const facebook::react::BorderRadii& borderRadii); -bool facebook::react::areTextAttributesEquivalentLayoutWise(const facebook::react::TextAttributes& lhs, const facebook::react::TextAttributes& rhs); -bool facebook::react::hasAccurateCPUTimeNanosForBenchmarks(); bool facebook::react::isColorMeaningful(const facebook::react::SharedColor& color) noexcept; bool facebook::react::isHermesBytecodeBundle(const facebook::react::BundleHeader& header); bool facebook::react::isZero(Float n); const char* facebook::react::stringForScriptTag(const facebook::react::ScriptTag& tag); -const facebook::react::InteractionTypesMap& facebook::react::getInteractionTypes(); -const std::unordered_set& facebook::react::getDirectManipulationAllowlist(); constexpr auto facebook::react::to_underlying(auto e) noexcept; -constexpr bool facebook::react::iequals(std::string_view a, std::string_view b); constexpr char facebook::react::toLower(char c); -constexpr float facebook::react::canonicalize(float value, facebook::react::CSSAngleUnit unit); -constexpr std::optional facebook::react::parseCSSAngleUnit(std::string_view unit); -constexpr std::optional facebook::react::parseCSSLengthUnit(std::string_view unit); constexpr uint32_t facebook::react::fnv1aLowercase(std::string_view string); -double facebook::react::ceil(double value) noexcept; -double facebook::react::floor(double value) noexcept; -double facebook::react::getCPUTimeNanos(); -double facebook::react::interpolate(double inputValue, double inputMin, double inputMax, double outputMin, double outputMax, std::string_view extrapolateLeft, std::string_view extrapolateRight); -double facebook::react::round(double value) noexcept; facebook::jsi::Value facebook::react::createPromiseAsJSIValue(facebook::jsi::Runtime& rt, facebook::react::PromiseSetupFunctionType&& func); facebook::react::ColorComponents facebook::react::colorComponentsFromColor(facebook::react::SharedColor color); facebook::react::ColorSpace facebook::react::getDefaultColorSpace(); -facebook::react::ComponentBuilder facebook::react::simpleComponentBuilder(std::shared_ptr contextContainer = nullptr); -facebook::react::ComponentRegistryFactory facebook::react::getDefaultComponentRegistryFactory(); facebook::react::DisplayType facebook::react::displayTypeFromYGDisplay(YGDisplay display); facebook::react::LayoutMetrics facebook::react::layoutMetricsFromYogaNode(facebook::yoga::Node& yogaNode); -facebook::react::ParagraphAttributes facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const facebook::react::ParagraphAttributes& sourceParagraphAttributes, const facebook::react::ParagraphAttributes& defaultParagraphAttributes); facebook::react::Rect facebook::react::insetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& insets) noexcept; facebook::react::Rect facebook::react::outsetBy(const facebook::react::Rect& rect, const facebook::react::EdgeInsets& outsets) noexcept; facebook::react::ScriptTag facebook::react::parseTypeFromHeader(const facebook::react::BundleHeader& header); -facebook::react::ShadowView facebook::react::shadowViewFromShadowNode(const facebook::react::ShadowNode& shadowNode); -facebook::react::ShadowViewMutation::List facebook::react::calculateShadowViewMutations(const facebook::react::ShadowNode& oldRootShadowNode, const facebook::react::ShadowNode& newRootShadowNode); facebook::react::SharedColor facebook::react::blackColor(); facebook::react::SharedColor facebook::react::clearColor(); -facebook::react::SharedColor facebook::react::coerceColor(const facebook::react::RawValue& value, const facebook::react::PropsParserContext& context); facebook::react::SharedColor facebook::react::colorFromComponents(facebook::react::ColorComponents components); facebook::react::SharedColor facebook::react::colorFromRGBA(uint8_t r, uint8_t g, uint8_t b, uint8_t a); facebook::react::SharedColor facebook::react::whiteColor(); -facebook::react::Size facebook::react::ModalHostViewScreenSize(void); facebook::react::Size facebook::react::yogaMeassureToSize(int64_t value); facebook::react::SurfaceId facebook::react::getNextRootViewTag() noexcept; facebook::react::TurboModuleMethodValueKind facebook::react::getTurboModuleMethodValueKind(facebook::jsi::Runtime& rt, const facebook::jsi::Value* value); facebook::react::ValueUnit facebook::react::toValueUnit(const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::convertAspectRatio(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value); facebook::yoga::FloatOptional facebook::react::yogaOptionalFloatFromFloat(Float value); -float facebook::react::ceil(float value) noexcept; -float facebook::react::floor(float value) noexcept; -float facebook::react::round(float value) noexcept; float facebook::react::yogaFloatFromFloat(Float value); folly::dynamic facebook::react::diffDynamicProps(const folly::dynamic& oldProps, const folly::dynamic& newProps); folly::dynamic facebook::react::mergeDynamicProps(const folly::dynamic& source, const folly::dynamic& patch, facebook::react::NullValueStrategy nullValueStrategy); -folly::dynamic facebook::react::toDynamic(const facebook::react::SubmitBehavior& value); int facebook::react::toInt(const facebook::react::DisplayType& displayType); int facebook::react::toInt(const facebook::react::LayoutDirection& layoutDirection); -long double facebook::react::ceil(long double value) noexcept; -long double facebook::react::floor(long double value) noexcept; -long double facebook::react::round(long double value) noexcept; -size_t facebook::react::attributedStringFragmentHashDisplayWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringFragmentHashLayoutWise(const facebook::react::AttributedString::Fragment& fragment); -size_t facebook::react::attributedStringHashDisplayWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::attributedStringHashLayoutWise(const facebook::react::AttributedString& attributedString); -size_t facebook::react::textAttributesHashLayoutWise(const facebook::react::TextAttributes& textAttributes); -std::function facebook::react::makeCallback(std::weak_ptr instance, const folly::dynamic& callbackId); -std::optional facebook::react::coerceLength(const facebook::react::RawValue& value); std::optional facebook::react::optionalFloatFromYogaValue(const facebook::yoga::Style::Length& length, std::optional base = {}); std::optional facebook::react::blendModeFromString(std::string_view blendModeName); std::optional facebook::react::filterTypeFromString(std::string_view filterName); -std::optional facebook::react::fontVariantFromCSSFontVariant(facebook::react::CSSFontVariant cssVariant); std::optional facebook::react::isolationFromString(std::string_view isolationSetting); -std::pair facebook::react::calculateAnimationProgress(uint64_t now, const facebook::react::LayoutAnimation& animation, const facebook::react::AnimationConfig& mutationConfig); -std::string facebook::react::base64Encode(const std::string_view s); -std::string facebook::react::componentNameByReactViewName(std::string viewName); -std::string facebook::react::generateRandomUuidString(); std::string facebook::react::toString(const double& value); std::string facebook::react::toString(const facebook::react::AccessibilityRole& accessibilityRole); -std::string facebook::react::toString(const facebook::react::AttributedString::Range& range); std::string facebook::react::toString(const facebook::react::BlendMode& blendMode); std::string facebook::react::toString(const facebook::react::DisplayType& displayType); -std::string facebook::react::toString(const facebook::react::DynamicTypeRamp& dynamicTypeRamp); -std::string facebook::react::toString(const facebook::react::EllipsizeMode& ellipsisMode); std::string facebook::react::toString(const facebook::react::FilterType& filterType); -std::string facebook::react::toString(const facebook::react::FontStyle& fontStyle); -std::string facebook::react::toString(const facebook::react::FontVariant& fontVariant); -std::string facebook::react::toString(const facebook::react::FontWeight& fontWeight); -std::string facebook::react::toString(const facebook::react::HyphenationFrequency& hyphenationFrequency); std::string facebook::react::toString(const facebook::react::ImageResizeMode& value); std::string facebook::react::toString(const facebook::react::ImageSource& value); std::string facebook::react::toString(const facebook::react::ImportantForAccessibility& importantForAccessibility); std::string facebook::react::toString(const facebook::react::LayoutDirection& layoutDirection); -std::string facebook::react::toString(const facebook::react::LineBreakMode& lineBreakMode); -std::string facebook::react::toString(const facebook::react::LineBreakStrategy& lineBreakStrategy); std::string facebook::react::toString(const facebook::react::Role& role); -std::string facebook::react::toString(const facebook::react::ScrollViewSnapToAlignment& value); std::string facebook::react::toString(const facebook::react::SharedColor& value); -std::string facebook::react::toString(const facebook::react::TextAlignment& textAlignment); -std::string facebook::react::toString(const facebook::react::TextAlignmentVertical& textAlignment); -std::string facebook::react::toString(const facebook::react::TextBreakStrategy& textBreakStrategy); -std::string facebook::react::toString(const facebook::react::TextDecorationLineType& textDecorationLineType); -std::string facebook::react::toString(const facebook::react::TextDecorationStyle& textDecorationStyle); -std::string facebook::react::toString(const facebook::react::TextTransform& textTransform); -std::string facebook::react::toString(const facebook::react::TextWidthMode& textWidthMode); -std::string facebook::react::toString(const facebook::react::WritingDirection& writingDirection); std::string facebook::react::toString(double doubleValue, char suffix); std::string facebook::react::toString(facebook::react::AccessibilityLiveRegion accessibilityLiveRegion); std::string facebook::react::toString(facebook::react::PointerEventsMode value); -std::string_view facebook::react::getInteractionTypeForEvent(std::string_view eventName); std::unordered_map(std::shared_ptr jsInvoker)>>& facebook::react::globalExportedCxxTurboModuleMap(); -std::vector facebook::react::parseNormalizedRootMargin(const std::string& marginStr); -std::vector facebook::react::parseMethodCalls(folly::dynamic&& jsonData); -std::vector facebook::react::sliceChildShadowNodeViewPairs(const facebook::react::ShadowViewNodePair& shadowNodePair, facebook::react::ViewNodePairScope& viewNodePairScope, bool allowFlattened, facebook::react::Point layoutOffset, const facebook::react::CullingContext& cullingContext); -template -constexpr std::optional facebook::react::parseCSSKeyword(std::string_view ident); -template -constexpr facebook::react::CSSVariantWithTypes, std::monostate> facebook::react::parseCSSProperty(std::string_view css); -template -Float facebook::react::roundToPixel(Float value, Float scaleFactor); -template -facebook::react::Point facebook::react::roundToPixel(facebook::react::Point value, Float scaleFactor); -template -facebook::react::Rect facebook::react::roundToPixel(facebook::react::Rect value, Float scaleFactor); -template -facebook::react::Size facebook::react::roundToPixel(facebook::react::Size value, Float scaleFactor); template std::size_t facebook::react::hash_combine(const T& v, const Args &... args); template void facebook::react::hash_combine(std::size_t& seed, const T& v, const Rest &... rest); template void facebook::react::hash_combine_optionals(std::size_t& seed, const std::optional &... optionals); -template ::type> -facebook::react::MoveWrapper facebook::react::makeMoveWrapper(T&& t); -template -constexpr std::optional facebook::react::parseCSSColorFunction(std::string_view colorFunction, facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::parseCSSHexColor(std::string_view hexColorValue); -template -constexpr std::optional facebook::react::parseCSSNamedColor(std::string_view name); template constexpr uint32_t facebook::react::fnv1a(std::string_view string) noexcept; template @@ -599,12 +226,6 @@ DestinationTimePointT facebook::react::clockCast(SourceTimePointT timePoint); template T facebook::react::convertRawProp(const facebook::react::PropsParserContext& context, const facebook::react::RawProps& rawProps, const char* name, const T& sourceValue, const U& defaultValue); template -T facebook::react::get(const facebook::react::AnimatedPropBase& animatedProp); -template -T facebook::react::get(const std::unique_ptr& animatedProp); -template -bool facebook::react::floatEquality(T a, T b, T epsilon = static_cast(facebook::react::kDefaultEpsilon)); -template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, T& result, T defaultValue); template void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& rawValue, std::optional& result); @@ -620,11 +241,6 @@ uint8_t facebook::react::alphaFromColor(facebook::react::SharedColor color) noex uint8_t facebook::react::blueFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::greenFromColor(facebook::react::SharedColor color) noexcept; uint8_t facebook::react::redFromColor(facebook::react::SharedColor color) noexcept; -void facebook::react::bindHasComponentProvider(facebook::jsi::Runtime& runtime, facebook::react::HasComponentProviderFunctionType&& provider); -void facebook::react::bindNativeLogger(facebook::jsi::Runtime& runtime, facebook::react::Logger logger); -void facebook::react::bindNativePerformanceNow(facebook::jsi::Runtime& runtime); -void facebook::react::cloneProp(facebook::react::BaseViewProps& viewProps, const facebook::react::AnimatedPropBase& animatedProp); -void facebook::react::defineReadOnlyGlobal(facebook::jsi::Runtime& runtime, const std::string& propName, facebook::jsi::Value&& value); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, YGValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityAction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityLabelledBy& result); @@ -632,36 +248,17 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityRole& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityState& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AccessibilityTraits& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::AttributedString::Range& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BackfaceVisibility& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderCurve& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::BorderStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ContentInsetAdjustmentBehavior& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Cursor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::DynamicTypeRamp& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::EllipsizeMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontWeight& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::HyphenationFrequency& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ImportantForAccessibility& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::LineBreakStrategy& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::OutlineStyle& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::PointerEventsMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Role& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewIndicatorStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewKeyboardDismissMode& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewMaintainVisibleContentPosition& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::ScrollViewSnapToAlignment& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::SharedColor& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextAlignment& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextBreakStrategy& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationLineType& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextDecorationStyle& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TextTransform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::Transform& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::TransformOrigin& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::WritingDirection& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Align& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Direction& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Display& result); @@ -672,9 +269,6 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext& co void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::PositionType& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Style::Length& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::yoga::Wrap& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::AccessibilityValue& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::BlendMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::CornerInsets& result); @@ -683,12 +277,8 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ImageSource& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Isolation& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LayoutConformance& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::LineBreakMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Point& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::Size& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::SubmitBehavior& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextAlignmentVertical& result); -void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::TextWidthMode& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::ValueUnit& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::BoxSizing& result); void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::yoga::Style::SizeLength& result); @@ -697,32 +287,16 @@ void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, c void facebook::react::fromRawValue(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, std::vector& result); void facebook::react::fromRawValueShared(const facebook::react::ContextContainer& contextContainer, int32_t surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result, facebook::react::parsePlatformColorFn parsePlatformColor); void facebook::react::fromString(const std::string& string, facebook::react::AccessibilityTraits& result); -void facebook::react::g_setNativeAnimatedNowTimestampFunction(facebook::react::TimePointFunction nowFunction); -void facebook::react::handleJSError(facebook::jsi::Runtime& runtime, const facebook::jsi::JSError& error, bool isFatal); -void facebook::react::mergeAnimatedRawProps(folly::dynamic& target, const folly::dynamic& source); -void facebook::react::parseProcessedBackgroundImage(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, std::vector& result); -void facebook::react::parseProcessedFontVariant(const facebook::react::PropsParserContext&, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedBackgroundImageList(const facebook::react::PropsParserContext& context, const std::vector& value, std::vector& result); -void facebook::react::parseUnprocessedBackgroundImageString(const std::string& value, std::vector& result); -void facebook::react::parseUnprocessedFontVariant(const facebook::react::PropsParserContext& context, const facebook::react::RawValue& value, facebook::react::FontVariant& result); -void facebook::react::parseUnprocessedFontVariantString(const std::string& value, facebook::react::FontVariant& result); void facebook::react::parseUnprocessedTransformOriginString(const std::string& value, facebook::react::TransformOrigin& result); void facebook::react::registerCxxModuleToGlobalModuleMap(std::string name, std::function(std::shared_ptr jsInvoker)> moduleProviderFunc); void facebook::react::serializeTransformAxis(const facebook::react::TransformOperation& operation, const std::string& operationName, float defaultValue, folly::dynamic& resultTranslateArray); void facebook::react::serializeTransformOperationValue(const std::string& operationName, const facebook::react::ValueUnit& valueUnit, folly::dynamic& resultArray); void facebook::react::setDefaultColorSpace(facebook::react::ColorSpace newColorSpace); void facebook::react::setTouchPayloadOnObject(facebook::jsi::Object& object, facebook::jsi::Runtime& runtime, const facebook::react::BaseTouch& touch); -void facebook::react::updateMountedFlag(const std::vector>& oldChildren, const std::vector>& newChildren, facebook::react::ShadowTreeCommitSource commitSource); -void facebook::react::updateProp(const facebook::react::PropName propName, facebook::react::BaseViewProps& viewProps, const facebook::react::PropsSnapshot& snapshot); void facebook::react::updateTransformProps(const facebook::react::Transform& transform, const facebook::react::TransformOperation& operation, folly::dynamic& resultTranslateArray); -bool facebook::react::operator==(const facebook::react::AttributedStringBox& lhs, const facebook::react::AttributedStringBox& rhs); bool facebook::react::operator==(const facebook::react::LayoutConstraints& lhs, const facebook::react::LayoutConstraints& rhs); bool facebook::react::operator==(const facebook::react::LayoutContext& lhs, const facebook::react::LayoutContext& rhs); -bool facebook::react::operator==(const facebook::react::LineMeasureCacheKey& lhs, const facebook::react::LineMeasureCacheKey& rhs); -bool facebook::react::operator==(const facebook::react::PerformanceObserver& lhs, const facebook::react::PerformanceObserver& rhs); -bool facebook::react::operator==(const facebook::react::PreparedTextCacheKey& lhs, const facebook::react::PreparedTextCacheKey& rhs); bool facebook::react::operator==(const facebook::react::Size& rhs, const facebook::react::Size& lhs) noexcept; -bool facebook::react::operator==(const facebook::react::TextMeasureCacheKey& lhs, const facebook::react::TextMeasureCacheKey& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityState& lhs, const facebook::react::AccessibilityState& rhs); constexpr bool facebook::react::operator==(const facebook::react::AccessibilityValue& lhs, const facebook::react::AccessibilityValue& rhs); constexpr enum facebook::react::AccessibilityTraits facebook::react::operator&(const enum facebook::react::AccessibilityTraits lhs, const enum facebook::react::AccessibilityTraits rhs); @@ -771,183 +345,6 @@ class facebook::react::AccessibilityProps { public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::AdditionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public AdditionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::AndroidProgressBarComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidProgressBarComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidProgressBarMeasurementsManager { - public AndroidProgressBarMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, const AndroidProgressBarProps& props, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidProgressBarShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidProgressBarShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidProgressBarShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidProgressBarMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AndroidSwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public AndroidSwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::AndroidSwitchMeasurementsManager { - public AndroidSwitchMeasurementsManager(const std::shared_ptr& contextContainer); - public facebook::react::Size measure(facebook::react::SurfaceId surfaceId, facebook::react::LayoutConstraints layoutConstraints) const; -} - -class facebook::react::AndroidSwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public AndroidSwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public AndroidSwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public void setAndroidSwitchMeasurementsManager(const std::shared_ptr& measurementsManager); -} - -class facebook::react::AnimatedModule : public NativeAnimatedModuleCxxSpec, public facebook::react::TurboModuleWithJSIBindings { - public AnimatedModule(std::shared_ptr jsInvoker, std::shared_ptr nodesManagerProvider); - public void addAnimatedEventToView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::jsi::Object eventMapping); - public void addListener(facebook::jsi::Runtime& rt, const std::string& eventName); - public void connectAnimatedNodeToShadowNodeFamily(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::jsi::Object shadowNode); - public void connectAnimatedNodeToView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void connectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void createAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); - public void disconnectAnimatedNodeFromView(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, facebook::react::Tag viewTag); - public void disconnectAnimatedNodes(facebook::jsi::Runtime& rt, facebook::react::Tag parentTag, facebook::react::Tag childTag); - public void dropAnimatedNode(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void extractAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void finishOperationBatch(facebook::jsi::Runtime& rt); - public void flattenAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void getValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::react::AsyncCallback saveValueCallback); - public void queueAndExecuteBatchedOperations(facebook::jsi::Runtime& rt, facebook::jsi::Array operationsAndArgs); - public void removeAnimatedEventFromView(facebook::jsi::Runtime& rt, facebook::react::Tag viewTag, std::string eventName, facebook::react::Tag animatedNodeTag); - public void removeListeners(facebook::jsi::Runtime& rt, int count); - public void restoreDefaultValues(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag); - public void setAnimatedNodeOffset(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double offset); - public void setAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag nodeTag, double value); - public void startAnimatingNode(facebook::jsi::Runtime& rt, int animationId, facebook::react::Tag nodeTag, facebook::jsi::Object config, facebook::react::AnimationEndCallback endCallback); - public void startListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void startOperationBatch(facebook::jsi::Runtime& rt); - public void stopAnimation(facebook::jsi::Runtime& rt, int animationId); - public void stopListeningToAnimatedNodeValue(facebook::jsi::Runtime& rt, facebook::react::Tag tag); - public void updateAnimatedNodeConfig(facebook::jsi::Runtime& rt, facebook::react::Tag tag, facebook::jsi::Object config); -} - -class facebook::react::AnimatedMountingOverrideDelegate : public facebook::react::MountingOverrideDelegate { - public AnimatedMountingOverrideDelegate(facebook::react::NativeAnimatedNodesManager& animatedManager, const facebook::react::Scheduler& scheduler); - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; -} - -class facebook::react::AnimatedNode { - protected facebook::react::AnimatedNode* getChildNode(facebook::react::Tag tag); - protected facebook::react::AnimatedNodeType type_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag tag_; - protected std::unordered_set children_; - public AnimatedNode(const facebook::react::AnimatedNode&) = default; - public AnimatedNode(facebook::react::AnimatedNode&&) noexcept = default; - public AnimatedNode(facebook::react::Tag tag, folly::dynamic config, facebook::react::NativeAnimatedNodesManager& manager, facebook::react::AnimatedNodeType type); - public const folly::dynamic& getConfig() const noexcept; - public const std::unordered_set& getChildren() const noexcept; - public facebook::react::AnimatedNode& operator=(const facebook::react::AnimatedNode&) = default; - public facebook::react::AnimatedNode& operator=(facebook::react::AnimatedNode&&) noexcept = default; - public facebook::react::AnimatedNodeType type() const noexcept; - public facebook::react::Tag tag() const noexcept; - public int activeIncomingNodes; - public int bfsColor; - public static constexpr int INITIAL_BFS_COLOR; - public static std::optional getNodeTypeByName(const std::string& nodeTypeName); - public virtual void onAttachToNode(facebook::react::Tag); - public virtual void onDetachedFromNode(facebook::react::Tag); - public virtual void update(); - public virtual ~AnimatedNode() = default; - public void addChild(facebook::react::Tag tag); - public void removeChild(facebook::react::Tag tag); -} - -class facebook::react::AnimatedPropsRegistry { - public std::pair>&, facebook::react::SnapshotMap&> getMap(facebook::react::SurfaceId surfaceId); - public void clear(facebook::react::SurfaceId surfaceId); - public void clearOnSurfaceStop(facebook::react::SurfaceId surfaceId); - public void initializeSurface(facebook::react::SurfaceId surfaceId); - public void update(const std::vector& batches); -} - -class facebook::react::AnimationBackend : public facebook::react::UIManagerAnimationBackend { - public AnimationBackend(std::shared_ptr animationChoreographer, std::shared_ptr uiManager); - public using PauseCallback = std::function; - public using ResumeCallback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) override; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) override; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) override; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) override; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) override; - public virtual void stop(facebook::react::CallbackId callbackId) override; - public virtual void trigger() override; - public void requestAsyncFlushForSurfaces(const std::set& surfaces); - public void synchronouslyUpdateProps(const std::unordered_map& updates); - public ~AnimationBackend() override; -} - -class facebook::react::AnimationBackendCommitHook : public facebook::react::UIManagerCommitHook { - public AnimationBackendCommitHook(facebook::react::UIManager& uiManager, std::shared_ptr animatedPropsRegistry); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; -} - -class facebook::react::AnimationChoreographer { - public virtual facebook::react::AnimationTimestamp now() const; - public virtual void pause() = 0; - public virtual void resume() = 0; - public virtual ~AnimationChoreographer() = default; - public void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) const; - public void setAnimationBackend(std::weak_ptr animationBackend); -} - -class facebook::react::AnimationDriver { - protected bool ignoreCompletedHandlers_; - protected bool isComplete_; - protected bool isStarted_; - protected double startFrameTimeMs_; - protected facebook::react::NativeAnimatedNodesManager* manager_; - protected facebook::react::Tag animatedValueTag_; - protected folly::dynamic config_; - protected int currentIteration_; - protected int id_; - protected int iterations_; - protected std::optional endCallback_; - protected virtual bool update(double, bool); - protected void markNodeUpdated(facebook::react::Tag tag); - public AnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); - public bool getIsComplete() const noexcept; - public facebook::react::Tag getAnimatedValueTag() const noexcept; - public int getId() const noexcept; - public static std::optional getDriverTypeByName(const std::string& driverTypeName); - public virtual void updateConfig(folly::dynamic config); - public virtual ~AnimationDriver() = default; - public void runAnimationStep(double renderingTime); - public void startAnimation(); - public void stopAnimation(bool ignoreCompletedHandlers = false); -} - -class facebook::react::AppRegistryBinding { - public AppRegistryBinding() = delete; - public static void setSurfaceProps(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void startSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& initialProps, facebook::react::DisplayMode displayMode); - public static void stopSurface(facebook::jsi::Runtime& runtime, facebook::react::SurfaceId surfaceId); -} - class facebook::react::AsyncArrayBuffer { public AsyncArrayBuffer(const facebook::react::AsyncArrayBuffer&) = delete; public AsyncArrayBuffer(facebook::react::AsyncArrayBuffer&&) noexcept = default; @@ -966,152 +363,6 @@ class facebook::react::AsyncArrayBuffer { public ~AsyncArrayBuffer() = default; } -class facebook::react::AttributedString : public facebook::react::Sealable, public facebook::react::DebugStringConvertible { - public bool compareTextAttributesWithoutFrame(const facebook::react::AttributedString& rhs) const; - public bool isContentEqual(const facebook::react::AttributedString& rhs) const; - public bool isEmpty() const; - public bool operator==(const facebook::react::AttributedString& rhs) const; - public const facebook::react::AttributedString::Fragments& getFragments() const; - public const facebook::react::TextAttributes& getBaseTextAttributes() const; - public facebook::react::AttributedString::Fragments& getFragments(); - public std::string getString() const; - public using Fragments = std::vector; - public void appendFragment(facebook::react::AttributedString::Fragment&& fragment); - public void prependFragment(facebook::react::AttributedString::Fragment&& fragment); - public void setBaseTextAttributes(const facebook::react::TextAttributes& defaultAttributes); -} - -class facebook::react::AttributedString::Fragment { - public bool isAttachment() const; - public bool isContentEqual(const facebook::react::AttributedString::Fragment& rhs) const; - public bool operator==(const facebook::react::AttributedString::Fragment& rhs) const; - public facebook::react::ShadowView parentShadowView; - public facebook::react::TextAttributes textAttributes; - public static std::string AttachmentCharacter(); - public std::string string; -} - -class facebook::react::AttributedString::Range { - public int length; - public int location; -} - -class facebook::react::AttributedStringBox { - public AttributedStringBox(); - public AttributedStringBox(const facebook::react::AttributedString& value); - public AttributedStringBox(const facebook::react::AttributedStringBox& other) = default; - public AttributedStringBox(facebook::react::AttributedStringBox&& other) noexcept; - public AttributedStringBox(std::shared_ptr opaquePointer); - public const facebook::react::AttributedString& getValue() const; - public facebook::react::AttributedStringBox& operator=(const facebook::react::AttributedStringBox& other) = default; - public facebook::react::AttributedStringBox& operator=(facebook::react::AttributedStringBox&& other) noexcept; - public facebook::react::AttributedStringBox::Mode getMode() const; - public std::shared_ptr getOpaquePointer() const; -} - -enum facebook::react::AttributedStringBox::Mode { - OpaquePointer, - Value, -} - -class facebook::react::BaseParagraphProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseParagraphProps() = default; - public BaseParagraphProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseParagraphProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool isSelectable; - public bool onTextLayout; - public facebook::react::ParagraphAttributes paragraphAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseScrollViewProps : public facebook::react::HostPlatformViewProps { - public BaseScrollViewProps() = default; - public BaseScrollViewProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseScrollViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public Float decelerationRate; - public Float endDraggingSensitivityMultiplier; - public Float maximumZoomScale; - public Float minimumZoomScale; - public Float scrollEventThrottle; - public Float snapToInterval; - public Float zoomScale; - public bool alwaysBounceHorizontal; - public bool alwaysBounceVertical; - public bool automaticallyAdjustContentInsets; - public bool automaticallyAdjustKeyboardInsets; - public bool automaticallyAdjustsScrollIndicatorInsets; - public bool bounces; - public bool bouncesZoom; - public bool canCancelContentTouches; - public bool centerContent; - public bool directionalLockEnabled; - public bool disableIntervalMomentum; - public bool horizontal; - public bool isInvertedVirtualizedList; - public bool pagingEnabled; - public bool persistentScrollbar; - public bool pinchGestureEnabled; - public bool scrollEnabled; - public bool scrollToOverflowEnabled; - public bool scrollsToTop; - public bool showsHorizontalScrollIndicator; - public bool showsVerticalScrollIndicator; - public bool snapToEnd; - public bool snapToStart; - public facebook::react::ContentInsetAdjustmentBehavior contentInsetAdjustmentBehavior; - public facebook::react::EdgeInsets contentInset; - public facebook::react::EdgeInsets scrollIndicatorInsets; - public facebook::react::Point contentOffset; - public facebook::react::ScrollViewIndicatorStyle indicatorStyle; - public facebook::react::ScrollViewKeyboardDismissMode keyboardDismissMode; - public facebook::react::ScrollViewSnapToAlignment snapToAlignment; - public std::optional maintainVisibleContentPosition; - public std::vector snapToOffsets; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextInputProps : public facebook::react::HostPlatformViewProps, public facebook::react::BaseTextProps { - public BaseTextInputProps() = default; - public BaseTextInputProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextInputProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool autoFocus; - public bool disableKeyboardShortcuts; - public bool editable; - public bool multiline; - public bool readOnly; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::SharedColor cursorColor; - public facebook::react::SharedColor placeholderTextColor; - public facebook::react::SharedColor selectionColor; - public facebook::react::SharedColor selectionHandleColor; - public facebook::react::SharedColor underlineColorAndroid; - public facebook::react::SubmitBehavior getNonDefaultSubmitBehavior() const; - public facebook::react::SubmitBehavior submitBehavior; - public facebook::react::TextAttributes getEffectiveTextAttributes(Float fontSizeMultiplier) const; - public int maxLength; - public int mostRecentEventCount; - public std::optional> acceptDragAndDropTypes; - public std::string autoCapitalize; - public std::string defaultValue; - public std::string placeholder; - public std::string text; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextProps { - public BaseTextProps() = default; - public BaseTextProps(const facebook::react::PropsParserContext& context, const facebook::react::BaseTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::TextAttributes textAttributes; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::BaseTextShadowNode { - public static void buildAttributedString(const facebook::react::TextAttributes& baseTextAttributes, const facebook::react::ShadowNode& parentNode, facebook::react::AttributedString& outAttributedString, facebook::react::BaseTextShadowNode::Attachments& outAttachments); - public using Attachments = std::vector; -} - -class facebook::react::BaseTextShadowNode::Attachment { - public const facebook::react::ShadowNode* shadowNode; - public size_t fragmentIndex; -} - class facebook::react::BaseViewEventEmitter : public facebook::react::TouchEventEmitter { public void onAccessibilityAction(const std::string& name) const; public void onAccessibilityEscape() const; @@ -1168,82 +419,6 @@ class facebook::react::BaseViewProps : public facebook::react::YogaStylableProps public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::BigStringBuffer : public facebook::jsi::Buffer { - public BigStringBuffer(std::unique_ptr script); - public virtual const uint8_t* data() const override; - public virtual size_t size() const override; -} - -class facebook::react::BindingsInstaller { - public virtual facebook::react::ReactInstance::BindingsInstallFunc getBindingsInstallFunc(); -} - -class facebook::react::BridgelessNativeMethodCallInvoker : public facebook::react::NativeMethodCallInvoker { - public BridgelessNativeMethodCallInvoker(std::shared_ptr messageQueueThread); - public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept override; - public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) override; -} - -class facebook::react::BufferedRuntimeExecutor : public std::enable_shared_from_this { - public BufferedRuntimeExecutor(facebook::react::BufferedRuntimeExecutor::Executor executor); - public facebook::react::RuntimeExecutor asRuntimeExecutor(); - public facebook::react::RuntimeExecutor asWeakRuntimeExecutor(); - public using Executor = std::function; - public using Work = std::function; - public void execute(facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void execute(facebook::react::SchedulerPriority priority, facebook::react::BufferedRuntimeExecutor::Work&& callback); - public void flush(); -} - -class facebook::react::CSSSyntaxParser { - public constexpr CSSSyntaxParser(const facebook::react::CSSSyntaxParser&) = default; - public constexpr CSSSyntaxParser(facebook::react::CSSSyntaxParser&&) = default; - public constexpr CSSSyntaxParser(std::string_view css); - public constexpr bool consumeDelimiter(facebook::react::CSSDelimiter delimiter); - public constexpr bool isFinished() const; - public constexpr const facebook::react::CSSToken& peek() const; - public constexpr facebook::react::CSSSyntaxParser& operator=(const facebook::react::CSSSyntaxParser&) = default; - public constexpr facebook::react::CSSSyntaxParser& operator=(facebook::react::CSSSyntaxParser&&) = default; - public constexpr void consumeWhitespace(); - template - public constexpr ReturnT consumeComponentValue(const facebook::react::CSSComponentValueVisitor auto &... visitors); - template - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const facebook::react::CSSComponentValueVisitor auto &... visitors); -} - -class facebook::react::CSSToken { - public constexpr CSSToken(const facebook::react::CSSToken& other) = default; - public constexpr CSSToken(facebook::react::CSSToken&& other) = default; - public constexpr CSSToken(facebook::react::CSSTokenType type); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value); - public constexpr CSSToken(facebook::react::CSSTokenType type, float value, std::string_view unit); - public constexpr CSSToken(facebook::react::CSSTokenType type, std::string_view value); - public constexpr bool operator==(const facebook::react::CSSToken& other) const = default; - public constexpr facebook::react::CSSToken& operator=(const facebook::react::CSSToken& other) = default; - public constexpr facebook::react::CSSToken& operator=(facebook::react::CSSToken&& other) = default; - public constexpr facebook::react::CSSTokenType type() const; - public constexpr float numericValue() const; - public constexpr std::string_view stringValue() const; - public constexpr std::string_view unit() const; -} - -class facebook::react::CSSTokenizer { - public constexpr CSSTokenizer(std::string_view characters); - public constexpr facebook::react::CSSToken next(); -} - -class facebook::react::CSSValueParser { - public constexpr CSSValueParser(const facebook::react::CSSValueParser&) = default; - public constexpr CSSValueParser(facebook::react::CSSSyntaxParser& parser); - public constexpr const facebook::react::CSSSyntaxParser& syntaxParser() const; - public constexpr facebook::react::CSSSyntaxParser& syntaxParser(); - public constexpr facebook::react::CSSValueParser& operator=(const facebook::react::CSSValueParser&) = default; - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> parseNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); - template - public constexpr facebook::react::CSSVariantWithTypes, std::monostate> peekNextValue(facebook::react::CSSDelimiter delimiter = facebook::react::CSSDelimiter::None); -} - class facebook::react::CallInvoker { public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept = 0; public virtual void invokeAsync(facebook::react::SchedulerPriority, facebook::react::CallFunc&& func) noexcept; @@ -1253,13 +428,6 @@ class facebook::react::CallInvoker { public virtual ~CallInvoker() = default; } -class facebook::react::CallInvokerImpl : public facebook::react::CallInvoker { - public CallInvokerImpl(std::shared_ptr bufferedRuntimeExecutor, std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject { public facebook::jsi::Function& callback() noexcept; public facebook::jsi::Runtime& runtime() noexcept; @@ -1269,32 +437,6 @@ class facebook::react::CallbackWrapper : public facebook::react::LongLivedObject public void destroy(); } -class facebook::react::CdpMetricsReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpMetricsReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming& entry) override; -} - -class facebook::react::CdpPerfIssuesReporter : public facebook::react::PerformanceEntryReporterEventListener { - public CdpPerfIssuesReporter(facebook::react::RuntimeExecutor runtimeExecutor); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure& entry, const std::optional& detailProvider) override; -} - -class facebook::react::ColorAnimatedNode : public facebook::react::AnimatedNode { - public Color getColor(); - public ColorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ComponentBuilder { - public ComponentBuilder(const facebook::react::ComponentBuilder& componentBuilder) = default; - public ComponentBuilder(facebook::react::ComponentBuilder&& componentBuilder) noexcept = default; - public ComponentBuilder(facebook::react::ComponentDescriptorRegistry::Shared componentDescriptorRegistry); - public facebook::react::ComponentBuilder& operator=(const facebook::react::ComponentBuilder& other) = default; - public facebook::react::ComponentBuilder& operator=(facebook::react::ComponentBuilder&& other) = default; - template - public std::shared_ptr build(facebook::react::Element element) const; -} - class facebook::react::ComponentDescriptor { protected facebook::react::ComponentDescriptor::Flavor flavor_; protected facebook::react::EventDispatcher::Weak eventDispatcher_; @@ -1360,85 +502,15 @@ class facebook::react::ContextContainer { public void insert(const std::string& key, const T& instance) const; } -class facebook::react::CxxNativeModule : public facebook::react::NativeModule { - public CxxNativeModule(std::weak_ptr instance, std::string name, facebook::xplat::module::CxxModule::Provider provider, std::shared_ptr messageQueueThread); - public static void setShouldWarnOnUse(bool value); - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int hookId, folly::dynamic&& args) override; - public virtual folly::dynamic getConstants() override; - public virtual std::string getName() override; - public virtual std::string getSyncMethodName(unsigned int methodId) override; - public virtual std::vector getMethods() override; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) override; -} - class facebook::react::DebugStringConvertible { } -class facebook::react::DecayAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public DecayAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::DevToolsRuntimeSettings { - public DevToolsRuntimeSettings(const facebook::react::DevToolsRuntimeSettings&) = delete; - public DevToolsRuntimeSettings(facebook::react::DevToolsRuntimeSettings&&) = delete; - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig() const; - public static facebook::react::DevToolsRuntimeSettings& getInstance(); - public void operator=(const facebook::react::DevToolsRuntimeSettings&) = delete; - public void operator=(facebook::react::DevToolsRuntimeSettings&&) = delete; - public void setReloadAndProfileConfig(facebook::react::NativePartialReloadAndProfileConfig config); - public ~DevToolsRuntimeSettings() = default; -} - -class facebook::react::DevToolsRuntimeSettingsModule : public NativeReactDevToolsRuntimeSettingsModuleCxxSpec { - public DevToolsRuntimeSettingsModule(std::shared_ptr jsInvoker); - public facebook::react::NativeReloadAndProfileConfig getReloadAndProfileConfig(facebook::jsi::Runtime& rt); - public void setReloadAndProfileConfig(facebook::jsi::Runtime& rt, facebook::react::NativePartialReloadAndProfileConfig config); -} - -class facebook::react::DiffClampAnimatedNode : public facebook::react::ValueAnimatedNode { - public DiffClampAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::DivisionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public DivisionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::ElementFragment { - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::ElementFragment::FinalizeCallback finalizeCallback; - public facebook::react::ElementFragment::List children; - public facebook::react::ElementFragment::ReferenceCallback referenceCallback; - public facebook::react::ElementFragment::StateCallback stateCallback; - public facebook::react::Props::Shared props; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public using FinalizeCallback = std::function; - public using List = std::vector; - public using ListOfShared = std::vector; - public using ReferenceCallback = std::function& shadowNode)>; - public using Shared = std::shared_ptr; - public using StateCallback = std::function; -} - class facebook::react::Error { public Error(const char* message); public Error(std::string message); public const std::string& message() const; } -class facebook::react::EventAnimationDriver { - protected const facebook::react::Tag animatedValueTag_; - protected std::vector eventPath_; - public EventAnimationDriver(const std::vector& eventPath, facebook::react::Tag animatedValueTag); - public facebook::react::Tag getAnimatedNodeTag() const; - public std::optional getValueFromPayload(const facebook::react::EventPayload& eventPayload); - public ~EventAnimationDriver() = default; -} - class facebook::react::EventBeat { protected facebook::react::EventBeat::BeatCallback beatCallback_; protected mutable std::atomic isEventBeatRequested_; @@ -1509,15 +581,6 @@ class facebook::react::EventLogger { public virtual ~EventLogger() = default; } -class facebook::react::EventPerformanceLogger : public facebook::react::EventLogger, public facebook::react::RuntimeSchedulerEventTimingDelegate, public facebook::react::UIManagerMountHook { - public EventPerformanceLogger(std::weak_ptr performanceEntryReporter); - public virtual facebook::react::EventTag onEventStart(std::string_view name, facebook::react::SharedEventTarget target, std::optional eventStartTimeStamp = std::nullopt) override; - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public virtual void onEventProcessingEnd(facebook::react::EventTag tag) override; - public virtual void onEventProcessingStart(facebook::react::EventTag tag) override; - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept override; -} - class facebook::react::EventQueue { protected const std::unique_ptr eventBeat_; protected facebook::react::EventQueueProcessor eventProcessor_; @@ -1566,45 +629,6 @@ class facebook::react::EventTarget { public void setEnabled(bool enabled); } -class facebook::react::ExecutorDelegate { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(facebook::react::JSExecutor& executor, unsigned int moduleId, unsigned int methodId, folly::dynamic&& args) = 0; - public virtual std::shared_ptr getModuleRegistry() = 0; - public virtual void callNativeModules(facebook::react::JSExecutor& executor, folly::dynamic&& calls, bool isEndOfBatch) = 0; - public virtual ~ExecutorDelegate() = default; -} - -class facebook::react::FrameAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - protected virtual void updateConfig(folly::dynamic config) override; - public FrameAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::FuseboxTracer { - public FuseboxTracer(const facebook::react::FuseboxTracer&) = delete; - public bool isTracing(); - public bool startTracing(); - public bool stopTracing(const std::function& resultCallback); - public bool stopTracingAndWriteToFile(const std::string& path); - public static facebook::react::FuseboxTracer& getFuseboxTracer(); - public void addEvent(const std::string_view& name, uint64_t start, uint64_t end, const std::optional& track); -} - -class facebook::react::HermesExecutor : public facebook::react::JSIExecutor { - public HermesExecutor(std::shared_ptr runtime, std::shared_ptr delegate, std::shared_ptr jsQueue, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, hermes::HermesRuntime& hermesRuntime); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate() override; -} - -class facebook::react::HermesExecutorFactory : public facebook::react::JSExecutorFactory { - public HermesExecutorFactory(facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker = facebook::react::JSIExecutor::defaultTimeoutInvoker, hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig()); - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) override; - public void setDebuggerName(const std::string& debuggerName); - public void setEnableDebugger(bool enableDebugger); -} - -class facebook::react::HermesInstance { - public static std::unique_ptr createJSRuntime(std::shared_ptr crashManager, std::shared_ptr msgQueueThread, bool allocInOldGenBeforeTTI) noexcept; -} - class facebook::react::HighResDuration { public constexpr HighResDuration(); public constexpr bool operator!=(const facebook::react::HighResDuration& rhs) const; @@ -1674,26 +698,12 @@ class facebook::react::IAsyncEventEmitter { public virtual ~IAsyncEventEmitter() noexcept = default; } -class facebook::react::ImageComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ImageComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - class facebook::react::ImageErrorInfo { public int responseCode; public std::string error; public std::vector> httpResponseHeaders; } -class facebook::react::ImageEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onError(const facebook::react::ImageErrorInfo& error) const; - public void onLoad(const facebook::react::ImageSource& source) const; - public void onLoadEnd() const; - public void onLoadStart() const; - public void onPartialLoad() const; - public void onProgress(double progress, int64_t loaded, int64_t total) const; -} - class facebook::react::ImageLoadError { public ImageLoadError(std::shared_ptr error); public std::shared_ptr getError() const; @@ -1705,25 +715,6 @@ class facebook::react::ImageManager { public virtual ~ImageManager(); } -class facebook::react::ImageProps : public facebook::react::HostPlatformViewProps { - public Float blurRadius; - public Float resizeMultiplier; - public ImageProps() = default; - public ImageProps(const facebook::react::PropsParserContext& context, const facebook::react::ImageProps& sourceProps, const facebook::react::RawProps& rawProps); - public bool shouldNotifyLoadEvents; - public facebook::react::EdgeInsets capInsets; - public facebook::react::ImageResizeMode resizeMode; - public facebook::react::ImageSource defaultSource; - public facebook::react::ImageSource loadingIndicatorSource; - public facebook::react::ImageSources sources; - public facebook::react::SharedColor overlayColor; - public std::optional fadeDuration; - public std::optional progressiveRenderingEnabled; - public std::optional tintColor; - public std::string resizeMethod; - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - class facebook::react::ImageRequest { public ImageRequest(const facebook::react::ImageRequest& other) = delete; public ImageRequest(facebook::react::ImageRequest&& other) noexcept = default; @@ -1767,15 +758,6 @@ class facebook::react::ImageResponseObserverCoordinator { public void removeObserver(const std::shared_ptr& observer) const; } -class facebook::react::ImageShadowNode : public facebook::react::ConcreteViewShadowNode { - public ImageShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ImageShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ImageState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared&, const facebook::react::ComponentDescriptor& componentDescriptor); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setImageManager(const std::shared_ptr& imageManager); -} - class facebook::react::ImageSource { public Float scale; public bool operator==(const facebook::react::ImageSource& rhs) const; @@ -1802,60 +784,12 @@ enum facebook::react::ImageSource::Type { Remote, } -class facebook::react::ImageState { - public ImageState(const facebook::react::ImageSource& imageSource, facebook::react::ImageRequest imageRequest, const ImageRequestParams& imageRequestParams); - public const ImageRequestParams& getImageRequestParams() const; - public const facebook::react::ImageRequest& getImageRequest() const; - public facebook::react::ImageSource getImageSource() const; -} - class facebook::react::ImageTelemetry { public ImageTelemetry(const facebook::react::SurfaceId surfaceId); public facebook::react::SurfaceId getSurfaceId() const; public facebook::react::TelemetryTimePoint getWillRequestUrlTime() const; } -class facebook::react::InputAccessoryComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public InputAccessoryComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::InputAccessoryShadowNode : public facebook::react::ConcreteViewShadowNode { - public InputAccessoryShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public InputAccessoryShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::InputAccessoryState { - public InputAccessoryState(); - public InputAccessoryState(facebook::react::Size viewportSize_); - public const facebook::react::Size viewportSize; -} - -class facebook::react::Instance { - public bool isBatchActive(); - public bool isInspectable(); - public bool supportsProfiling(); - public const facebook::react::ModuleRegistry& getModuleRegistry() const; - public facebook::react::ModuleRegistry& getModuleRegistry(); - public facebook::react::RuntimeExecutor getRuntimeExecutor(); - public std::shared_ptr getJSCallInvoker(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker); - public void callJSCallback(uint64_t callbackId, folly::dynamic&& params); - public void callJSFunction(std::string&& module, std::string&& method, folly::dynamic&& params); - public void handleMemoryPressure(int pressureLevel); - public void initializeBridge(std::unique_ptr callback, std::shared_ptr jsef, std::shared_ptr jsQueue, std::shared_ptr moduleRegistry, facebook::react::jsinspector_modern::HostTarget* inspectorTarget = nullptr); - public void initializeRuntime(); - public void loadRAMBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string startupScriptSourceURL, bool loadSynchronously); - public void loadScriptFromString(std::unique_ptr string, std::string sourceURL, bool loadSynchronously); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void setSourceURL(std::string sourceURL); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~Instance() override; -} - class facebook::react::InstanceHandle { public InstanceHandle(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& instanceHandle, facebook::react::Tag tag); public facebook::jsi::Value getInstanceHandle(facebook::jsi::Runtime& runtime) const; @@ -1863,43 +797,6 @@ class facebook::react::InstanceHandle { public using Shared = std::shared_ptr; } -class facebook::react::InterpolationAnimatedNode : public facebook::react::ValueAnimatedNode { - public InterpolationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void onAttachToNode(facebook::react::Tag animatedNodeTag) override; - public virtual void onDetachedFromNode(facebook::react::Tag animatedNodeTag) override; - public virtual void update() override; -} - -class facebook::react::IntersectionObserver { - public IntersectionObserver(facebook::react::IntersectionObserverObserverId intersectionObserverId, std::optional observationRootShadowNodeFamily, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, std::vector thresholds, std::optional> rootThresholds, std::vector rootMargins); - public facebook::react::IntersectionObserverObserverId getIntersectionObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public std::optional updateIntersectionObservation(const facebook::react::RootShadowNode& rootShadowNode, facebook::react::HighResTimeStamp time); - public std::optional updateIntersectionObservationForSurfaceUnmount(facebook::react::HighResTimeStamp time); - public std::vector getThresholds() const; -} - -class facebook::react::IntersectionObserverManager : public facebook::react::UIManagerMountHook, public facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public IntersectionObserverManager(); - public std::vector takeRecords(); - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId surfaceId, facebook::react::HighResTimeStamp time) noexcept override; - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyIntersectionObserversCallback); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::IntersectionObserverObserverId intersectionObserverId, const std::optional& observationRootShadowNode, const facebook::react::ShadowNodeFamily::Shared& shadowNode, std::vector thresholds, std::optional> rootThresholds, std::optional rootMargin, const facebook::react::UIManager& uiManager); - public void unobserve(facebook::react::IntersectionObserverObserverId intersectionObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNode); -} - -class facebook::react::IntersectionObserverState { - public bool isIntersecting() const; - public bool operator==(const facebook::react::IntersectionObserverState& other) const; - public static facebook::react::IntersectionObserverState Initial(); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold); - public static facebook::react::IntersectionObserverState Intersecting(Float threshold, Float rootThreshold); - public static facebook::react::IntersectionObserverState NotIntersecting(); -} - class facebook::react::JSBigBufferString : public facebook::react::JSBigString { public JSBigBufferString(size_t size); public char* mutableData(); @@ -1939,149 +836,9 @@ class facebook::react::JSBigString : public facebook::jsi::Buffer { public ~JSBigString() override = default; } -class facebook::react::JSExecutor { - public static std::string getSyntheticBundlePath(uint32_t bundleId, const std::string& bundlePath); - public virtual bool isInspectable(); - public virtual facebook::react::jsinspector_modern::RuntimeTargetDelegate& getRuntimeTargetDelegate(); - public virtual std::string getDescription() = 0; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) = 0; - public virtual void destroy(); - public virtual void flush(); - public virtual void handleMemoryPressure(int pressureLevel); - public virtual void initializeRuntime() = 0; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) = 0; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) = 0; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) = 0; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) = 0; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) = 0; - public virtual void* getJavaScriptContext(); - public virtual ~JSExecutor() = default; -} - -class facebook::react::JSExecutorFactory { - public virtual std::unique_ptr createJSExecutor(std::shared_ptr delegate, std::shared_ptr jsQueue) = 0; - public virtual ~JSExecutorFactory() = default; -} - -class facebook::react::JSIExecutor : public facebook::react::JSExecutor { - public JSIExecutor(std::shared_ptr runtime, std::shared_ptr delegate, const facebook::react::JSIScopedTimeoutInvoker& timeoutInvoker, facebook::react::JSIExecutor::RuntimeInstaller runtimeInstaller); - public static void defaultTimeoutInvoker(const std::function& invokee, std::function errorMessageProducer); - public using RuntimeInstaller = std::function; - public virtual bool isInspectable() override; - public virtual std::string getDescription() override; - public virtual void callFunction(const std::string& moduleId, const std::string& methodId, const folly::dynamic& arguments) override; - public virtual void flush() override; - public virtual void handleMemoryPressure(int pressureLevel) override; - public virtual void initializeRuntime() override; - public virtual void invokeCallback(double callbackId, const folly::dynamic& arguments) override; - public virtual void loadBundle(std::unique_ptr script, std::string sourceURL) override; - public virtual void registerBundle(uint32_t bundleId, const std::string& bundlePath) override; - public virtual void setBundleRegistry(std::unique_ptr bundleRegistry) override; - public virtual void setGlobalVariable(std::string propName, std::unique_ptr jsonValue) override; - public virtual void* getJavaScriptContext() override; -} - -class facebook::react::JSINativeModules { - public JSINativeModules(std::shared_ptr moduleRegistry); - public facebook::jsi::Value getModule(facebook::jsi::Runtime& rt, const facebook::jsi::PropNameID& name); - public void reset(); -} - -class facebook::react::JSModulesUnbundle { - public JSModulesUnbundle(); - public virtual facebook::react::JSModulesUnbundle::Module getModule(uint32_t moduleId) const = 0; - public virtual ~JSModulesUnbundle() = default; -} - -class facebook::react::JSModulesUnbundle::ModuleNotFound : public std::out_of_range { - public ModuleNotFound(uint32_t moduleId); -} - -struct facebook::react::JSModulesUnbundle::Module { - public std::string code; - public std::string name; -} - -class facebook::react::JsErrorHandler { - public JsErrorHandler(facebook::react::JsErrorHandler::OnJsError onJsError); - public bool hasHandledFatalError(); - public bool inErrorHandler(); - public bool isRuntimeReady(); - public using OnJsError = std::function; - public void handleError(facebook::jsi::Runtime& runtime, facebook::jsi::JSError& error, bool isFatal, bool logToConsole = true); - public void notifyOfFatalError(); - public void registerErrorListener(const std::function& listener); - public void setRuntimeReady(); - public ~JsErrorHandler(); -} - -struct facebook::react::JsErrorHandler::ProcessedError { - public bool isFatal; - public facebook::jsi::Object extraData; - public int id; - public std::optional componentStack; - public std::optional name; - public std::optional originalMessage; - public std::string message; - public std::vector stack; -} - -struct facebook::react::JsErrorHandler::ProcessedError::StackFrame { - public std::optional column; - public std::optional lineNumber; - public std::optional file; - public std::string methodName; -} - -class facebook::react::LayoutAnimationCallbackWrapper { - public LayoutAnimationCallbackWrapper(); - public LayoutAnimationCallbackWrapper(facebook::jsi::Function&& callback); - public void call(facebook::jsi::Runtime& runtime) const; -} - -class facebook::react::LayoutAnimationDriver : public facebook::react::LayoutAnimationKeyFrameManager { - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const override; - public LayoutAnimationDriver(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); -} - -class facebook::react::LayoutAnimationKeyFrameManager : public facebook::react::UIManagerAnimationDelegate, public facebook::react::MountingOverrideDelegate { - protected bool hasComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected const facebook::react::ComponentDescriptor& getComponentDescriptorForShadowView(const facebook::react::ShadowView& shadowView) const; - protected facebook::react::ShadowView createInterpolatedShadowView(Float progress, const facebook::react::ShadowView& startingView, const facebook::react::ShadowView& finalView) const; - protected facebook::react::SharedComponentDescriptorRegistry componentDescriptorRegistry_; - protected mutable std::mutex currentAnimationMutex_; - protected mutable std::optional currentAnimation_; - protected mutable std::vector inflightAnimations_; - protected virtual void animationMutationsForFrame(facebook::react::SurfaceId surfaceId, facebook::react::ShadowViewMutation::List& mutationsList, uint64_t now) const = 0; - protected void callCallback(const facebook::react::LayoutAnimationCallbackWrapper& callback) const; - protected void queueFinalMutationsForCompletedKeyFrame(const facebook::react::AnimationKeyFrame& keyframe, facebook::react::ShadowViewMutation::List& mutationsList, bool interrupted, const std::string& logPrefix) const; - public LayoutAnimationKeyFrameManager(facebook::react::RuntimeExecutor runtimeExecutor, std::shared_ptr& contextContainer, facebook::react::LayoutAnimationStatusDelegate* delegate); - public virtual bool shouldAnimateFrame() const override; - public virtual bool shouldOverridePullTransaction() const override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) override; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallbackValue, const facebook::jsi::Value& failureCallbackValue) const override; - public void setClockNow(std::function now); - public void setLayoutAnimationStatusDelegate(facebook::react::LayoutAnimationStatusDelegate* delegate) const; - public void uiManagerDidConfigureNextLayoutAnimation(facebook::react::LayoutAnimation layoutAnimation) const; -} - -class facebook::react::LayoutAnimationStatusDelegate { - public virtual void onAllAnimationsComplete() = 0; - public virtual void onAnimationStarted() = 0; - public virtual ~LayoutAnimationStatusDelegate() = default; -} - class facebook::react::LayoutConformanceShadowNode : public facebook::react::ConcreteShadowNode { } -class facebook::react::LayoutEventEmitter : public facebook::react::UIManagerCommitHook { - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; -} - class facebook::react::LayoutableShadowNode : public facebook::react::ShadowNode { public LayoutableShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); public LayoutableShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); @@ -2114,36 +871,6 @@ struct facebook::react::LayoutableShadowNode::LayoutInspectingPolicy { public bool includeViewportOffset; } -class facebook::react::LazyShadowTreeRevisionConsistencyManager : public facebook::react::ShadowTreeRevisionConsistencyManager, public facebook::react::ShadowTreeRevisionProvider { - public LazyShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRegistry& shadowTreeRegistry); - public std::shared_ptr updateCurrentRevision(facebook::react::SurfaceId surfaceId); - public virtual std::shared_ptr getCurrentRevision(facebook::react::SurfaceId surfaceId) override; - public virtual void lockRevisions() override; - public virtual void unlockRevisions() override; -} - -class facebook::react::LeakChecker { - public LeakChecker(facebook::react::RuntimeExecutor runtimeExecutor); - public void stopSurface(facebook::react::SurfaceId surfaceId); - public void uiManagerDidCreateShadowNodeFamily(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; -} - -class facebook::react::LegacyViewManagerInteropState { - public std::shared_ptr coordinator; -} - -class facebook::react::LegacyViewManagerInteropViewProps : public facebook::react::HostPlatformViewProps { - public LegacyViewManagerInteropViewProps() = default; - public LegacyViewManagerInteropViewProps(const facebook::react::PropsParserContext& context, const facebook::react::LegacyViewManagerInteropViewProps& sourceProps, const facebook::react::RawProps& rawProps); - public const folly::dynamic otherProps; -} - -class facebook::react::LineMeasureCacheKey { - public facebook::react::AttributedString attributedString; - public facebook::react::ParagraphAttributes paragraphAttributes; - public facebook::react::Size size; -} - class facebook::react::LongLivedObject { protected LongLivedObject(facebook::jsi::Runtime& runtime); protected facebook::jsi::Runtime& runtime_; @@ -2221,348 +948,12 @@ class facebook::react::MapBufferBuilder { public void putString(facebook::react::MapBuffer::Key key, const std::string& value); } -class facebook::react::MergedValueDispatcher { - public MergedValueDispatcher(facebook::react::MergedValueDispatcher::DispatchFunction dispatchFunction, facebook::react::MergedValueDispatcher::MergedValueFunction mergedValueFunction); - public using DispatchFunction = std::function&&)>; - public using MergedValueFunction = std::function&& tagToProps)>; - public void dispatch(const std::unordered_map& value); -} - -class facebook::react::MessageQueueThread { - public virtual void quitSynchronous() = 0; - public virtual void runOnQueue(std::function&&) = 0; - public virtual void runOnQueueSync(std::function&&) = 0; - public virtual ~MessageQueueThread() = default; -} - -class facebook::react::ModalHostViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public ModalHostViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::ModalHostViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ModalHostViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ModalHostViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::ModalHostViewState { - public ModalHostViewState(); - public ModalHostViewState(facebook::react::Size screenSize_); - public const facebook::react::Size screenSize; - public using Shared = std::shared_ptr; -} - -class facebook::react::ModuleRegistry { - public ModuleRegistry(std::vector> modules, facebook::react::ModuleRegistry::ModuleNotFoundCallback callback = nullptr); - public facebook::react::MethodCallResult callSerializableNativeHook(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params); - public std::optional getConfig(const std::string& name); - public std::string getModuleName(unsigned int moduleId); - public std::string getModuleSyncMethodName(unsigned int moduleId, unsigned int methodId); - public std::vector moduleNames(); - public using ModuleNotFoundCallback = std::function; - public void callNativeMethod(unsigned int moduleId, unsigned int methodId, folly::dynamic&& params, int callId); - public void registerModules(std::vector> modules); -} - -class facebook::react::ModulusAnimatedNode : public facebook::react::ValueAnimatedNode { - public ModulusAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MountingCoordinator { - public MountingCoordinator(const facebook::react::ShadowTreeRevision& baseRevision); - public bool hasPendingTransactions() const; - public bool waitForTransaction(std::chrono::duration timeout) const; - public const facebook::react::TelemetryController& getTelemetryController() const; - public facebook::react::ShadowTreeRevision getBaseRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional pullTransaction(bool willPerformAsynchronously = false) const; - public void didPerformAsyncTransactions() const; - public void setMountingOverrideDelegate(std::weak_ptr delegate) const; -} - -class facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const = 0; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const = 0; - public virtual ~MountingOverrideDelegate() = default; -} - -class facebook::react::MountingTransaction { - public MountingTransaction(const facebook::react::MountingTransaction& mountingTransaction) = default; - public MountingTransaction(facebook::react::MountingTransaction&& mountingTransaction) noexcept = default; - public MountingTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, facebook::react::ShadowViewMutationList&& mutations, facebook::react::TransactionTelemetry telemetry); - public const facebook::react::ShadowViewMutationList& getMutations() const; - public facebook::react::MountingTransaction& operator=(const facebook::react::MountingTransaction& other) = delete; - public facebook::react::MountingTransaction& operator=(facebook::react::MountingTransaction&& other) = default; - public facebook::react::MountingTransaction::Number getNumber() const; - public facebook::react::ShadowViewMutationList getMutations(); - public facebook::react::SurfaceId getSurfaceId() const; - public facebook::react::TransactionTelemetry& getTelemetry() const; - public using Number = int64_t; - public void mergeWith(facebook::react::MountingTransaction&& transaction); -} - -class facebook::react::MultiplicationAnimatedNode : public facebook::react::OperatorAnimatedNode { - public MultiplicationAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::MutationObserver { - public MutationObserver(const facebook::react::MutationObserver&) = delete; - public MutationObserver(facebook::react::MutationObserver&&) = default; - public MutationObserver(facebook::react::MutationObserverId mutationObserverId); - public facebook::react::MutationObserver& operator=(const facebook::react::MutationObserver&) = delete; - public facebook::react::MutationObserver& operator=(facebook::react::MutationObserver&&) = default; - public void observe(std::shared_ptr targetShadowNodeFamily, bool observeSubtree); - public void recordMutations(const facebook::react::RootShadowNode& oldRootShadowNode, const facebook::react::RootShadowNode& newRootShadowNode, std::vector& recordedMutations) const; -} - -class facebook::react::MutationObserverManager : public facebook::react::UIManagerCommitHook { - public MutationObserverManager(); - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) noexcept override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public void connect(facebook::react::UIManager& uiManager, facebook::react::OnMutations&& onMutations); - public void disconnect(facebook::react::UIManager& uiManager); - public void observe(facebook::react::MutationObserverId mutationObserverId, std::shared_ptr shadowNode, bool observeSubtree, const facebook::react::UIManager& uiManager); - public void unobserveAll(facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativeAnimatedNodesManager : public std::enable_shared_from_this { - public NativeAnimatedNodesManager(const facebook::react::NativeAnimatedNodesManager&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager&&) = delete; - public NativeAnimatedNodesManager(facebook::react::NativeAnimatedNodesManager::DirectManipulationCallback&& directManipulationCallback, facebook::react::NativeAnimatedNodesManager::FabricCommitCallback&& fabricCommitCallback, facebook::react::NativeAnimatedNodesManager::ResolvePlatformColor&& resolvePlatformColor, facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback&& startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback&& stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback&& frameRateListenerCallback = nullptr) noexcept; - public NativeAnimatedNodesManager(std::shared_ptr animationBackend) noexcept; - public bool commitProps(); - public bool hasManagedProps() const noexcept; - public bool isOnRenderThread() const noexcept; - public bool useSharedAnimatedBackend() const noexcept; - public facebook::react::AnimationMutations onAnimationFrameForBackend(facebook::react::AnimatedPropsBuilder& propsBuilder, facebook::react::AnimationTimestamp timestamp); - public facebook::react::AnimationMutations pullAnimationMutations(facebook::react::AnimationTimestamp timestamp); - public facebook::react::NativeAnimatedNodesManager& operator=(const facebook::react::NativeAnimatedNodesManager&) = delete; - public facebook::react::NativeAnimatedNodesManager& operator=(facebook::react::NativeAnimatedNodesManager&&) = delete; - public folly::dynamic getManagedProps(facebook::react::Tag tag) const noexcept; - public std::optional getValue(facebook::react::Tag tag) noexcept; - public std::shared_ptr getEventEmitterListener() noexcept; - public using DirectManipulationCallback = std::function; - public using FabricCommitCallback = std::function&)>; - public using FrameRateListenerCallback = std::function; - public using ResolvePlatformColor = std::function; - public using StartOnRenderCallback = std::function&&, bool isAsync)>; - public using StopOnRenderCallback = std::function; - public void addAnimatedEventToView(facebook::react::Tag viewTag, const std::string& eventName, const folly::dynamic& eventMapping) noexcept; - public void connectAnimatedNodeToShadowNodeFamily(facebook::react::Tag propsNodeTag, std::shared_ptr family) noexcept; - public void connectAnimatedNodeToView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void connectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void createAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void createAnimatedNodeAsync(facebook::react::Tag tag, const folly::dynamic& config) noexcept; - public void disconnectAnimatedNodeFromView(facebook::react::Tag propsNodeTag, facebook::react::Tag viewTag) noexcept; - public void disconnectAnimatedNodes(facebook::react::Tag parentTag, facebook::react::Tag childTag) noexcept; - public void dropAnimatedNode(facebook::react::Tag tag) noexcept; - public void extractAnimatedNodeOffsetOp(facebook::react::Tag tag); - public void flattenAnimatedNodeOffset(facebook::react::Tag tag); - public void flushAnimatedNodesCreatedAsync() noexcept; - public void insertMutations(std::unordered_map>& updates, facebook::react::AnimationMutations& mutations, facebook::react::AnimatedPropsBuilder& propsBuilder, bool hasLayoutUpdates = false); - public void onManagedPropsRemoved(facebook::react::Tag tag) noexcept; - public void onRender(); - public void removeAnimatedEventFromView(facebook::react::Tag viewTag, const std::string& eventName, facebook::react::Tag animatedValueTag) noexcept; - public void resolvePlatformColor(facebook::react::SurfaceId surfaceId, const facebook::react::RawValue& value, facebook::react::SharedColor& result) const; - public void restoreDefaultValues(facebook::react::Tag tag) noexcept; - public void scheduleOnUI(facebook::react::UiTask&& task); - public void schedulePropsCommit(facebook::react::Tag viewTag, const folly::dynamic& props, bool layoutStyleUpdated, bool forceFabricCommit, facebook::react::ShadowNodeFamily::Weak shadowNodeFamily = {}) noexcept; - public void setAnimatedNodeOffset(facebook::react::Tag tag, double offset); - public void setAnimatedNodeValue(facebook::react::Tag tag, double value); - public void startAnimatingNode(int animationId, facebook::react::Tag animatedNodeTag, folly::dynamic config, std::optional endCallback) noexcept; - public void startListeningToAnimatedNodeValue(facebook::react::Tag tag, facebook::react::ValueListenerCallback&& callback) noexcept; - public void startRenderCallbackIfNeeded(bool isAsync); - public void stopAnimation(int animationId, bool isTrackingAnimation = false) noexcept; - public void stopListeningToAnimatedNodeValue(facebook::react::Tag tag) noexcept; - public void updateNodes(const std::set& finishedAnimationValueNodes = {}) noexcept; - public ~NativeAnimatedNodesManager() noexcept; - template >> - public T* getAnimatedNode(facebook::react::Tag tag) const; -} - -class facebook::react::NativeAnimatedNodesManagerProvider { - public NativeAnimatedNodesManagerProvider(facebook::react::NativeAnimatedNodesManager::StartOnRenderCallback startOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::StopOnRenderCallback stopOnRenderCallback = nullptr, facebook::react::NativeAnimatedNodesManager::FrameRateListenerCallback frameRateListenerCallback = nullptr); - public std::shared_ptr getEventEmitterListener(); - public std::shared_ptr getOrCreate(facebook::jsi::Runtime& runtime, std::shared_ptr jsInvoker); - public void addEventEmitterListener(const std::shared_ptr& listener); -} - -class facebook::react::NativeCPUTime : public NativeCPUTimeCxxSpec { - public NativeCPUTime(std::shared_ptr jsInvoker); - public bool hasAccurateCPUTimeNanosForBenchmarks(facebook::jsi::Runtime& runtime); - public double getCPUTimeNanos(facebook::jsi::Runtime& runtime); -} - -class facebook::react::NativeDOM : public NativeDOMCxxSpec { - public NativeDOM(std::shared_ptr jsInvoker); - public bool hasPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public bool isConnected(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public double compareDocumentPosition(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference, facebook::jsi::Value otherNativeNodeReference); - public facebook::jsi::Value getElementById(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, const std::string& id); - public facebook::jsi::Value getParentNode(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public facebook::jsi::Value linkRootNode(facebook::jsi::Runtime& rt, facebook::react::SurfaceId surfaceId, facebook::jsi::Value instanceHandle); - public std::string getTagName(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::string getTextContent(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBoundingClientRect(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, bool includeTransform); - public std::tuple getScrollPosition(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getOffset(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getBorderWidth(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getInnerSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::tuple getScrollSize(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode); - public std::vector getChildNodes(facebook::jsi::Runtime& rt, facebook::jsi::Value nativeNodeReference); - public void measure(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureOnSuccessCallback& callback); - public void measureInWindow(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, const facebook::react::MeasureInWindowOnSuccessCallback& callback); - public void measureLayout(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, std::shared_ptr relativeToShadowNode, facebook::jsi::Function onFail, const facebook::react::MeasureLayoutOnSuccessCallback& onSuccess); - public void releasePointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); - public void setNativeProps(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, facebook::jsi::Value updatePayload); - public void setPointerCapture(facebook::jsi::Runtime& rt, std::shared_ptr shadowNode, double pointerId); -} - -class facebook::react::NativeIdleCallbacks : public NativeIdleCallbacksCxxSpec { - public NativeIdleCallbacks(std::shared_ptr jsInvoker); - public facebook::react::CallbackHandle requestIdleCallback(facebook::jsi::Runtime& runtime, facebook::react::SyncCallback&& callback, std::optional options); - public void cancelIdleCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Object handle); -} - -class facebook::react::NativeIntersectionObserver : public NativeIntersectionObserverCxxSpec { - public NativeIntersectionObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observeV2(facebook::jsi::Runtime& runtime, facebook::react::NativeIntersectionObserverObserveOptions options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::AsyncCallback<> notifyIntersectionObserversCallback); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserveV2(facebook::jsi::Runtime& runtime, facebook::react::IntersectionObserverObserverId intersectionObserverId, facebook::jsi::Object targetToken); -} - class facebook::react::NativeMethodCallInvoker { public virtual void invokeAsync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) noexcept = 0; public virtual void invokeSync(const std::string& methodName, facebook::react::NativeMethodCallFunc&& func) = 0; public virtual ~NativeMethodCallInvoker() = default; } -class facebook::react::NativeMicrotasks : public NativeMicrotasksCxxSpec { - public NativeMicrotasks(std::shared_ptr jsInvoker); - public void queueMicrotask(facebook::jsi::Runtime& runtime, facebook::jsi::Function callback); -} - -class facebook::react::NativeModule { - public virtual facebook::react::MethodCallResult callSerializableNativeHook(unsigned int reactMethodId, folly::dynamic&& args) = 0; - public virtual folly::dynamic getConstants() = 0; - public virtual std::string getName() = 0; - public virtual std::string getSyncMethodName(unsigned int methodId) = 0; - public virtual std::vector getMethods() = 0; - public virtual void invoke(unsigned int reactMethodId, folly::dynamic&& params, int callId) = 0; - public virtual ~NativeModule() = default; -} - -class facebook::react::NativeModulePerfLogger { - public virtual void asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallBatchPreprocessEnd(int batchSize) = 0; - public virtual void asyncMethodCallBatchPreprocessStart() = 0; - public virtual void asyncMethodCallDispatch(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id) = 0; - public virtual void asyncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void asyncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual void moduleCreateCacheHit(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateConstructStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateFail(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateSetUpStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateEnd(const char* moduleName, int32_t id) = 0; - public virtual void moduleDataCreateStart(const char* moduleName, int32_t id) = 0; - public virtual void moduleJSRequireBeginningCacheHit(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningFail(const char* moduleName) = 0; - public virtual void moduleJSRequireBeginningStart(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingEnd(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingFail(const char* moduleName) = 0; - public virtual void moduleJSRequireEndingStart(const char* moduleName) = 0; - public virtual void syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallArgConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallExecutionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallFail(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName) = 0; - public virtual void syncMethodCallStart(const char* moduleName, const char* methodName) = 0; - public virtual ~NativeModulePerfLogger() = default; -} - -class facebook::react::NativeMutationObserver : public NativeMutationObserverCxxSpec { - public NativeMutationObserver(std::shared_ptr jsInvoker); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::jsi::Function notifyMutationObservers, facebook::react::SyncCallback getPublicInstanceFromInstanceHandle); - public void disconnect(facebook::jsi::Runtime& runtime); - public void observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeMutationObserverObserveOptions& options); - public void unobserveAll(facebook::jsi::Runtime& runtime, facebook::react::MutationObserverId mutationObserverId); -} - -class facebook::react::NativePerformance : public NativePerformanceCxxSpec { - public NativePerformance(std::shared_ptr jsInvoker); - public double getDroppedEntriesCount(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj); - public facebook::jsi::Object createObserver(facebook::jsi::Runtime& rt, facebook::react::NativePerformancePerformanceObserverCallback callback); - public facebook::react::HighResDuration timeOrigin(facebook::jsi::Runtime& rt); - public facebook::react::HighResTimeStamp now(facebook::jsi::Runtime& rt); - public std::optional getMarkTime(facebook::jsi::Runtime& rt, const std::string& name); - public std::unordered_map getReactNativeStartupTiming(facebook::jsi::Runtime& rt); - public std::unordered_map getSimpleMemoryInfo(facebook::jsi::Runtime& rt); - public std::vector getEntries(facebook::jsi::Runtime& rt); - public std::vector getEntriesByName(facebook::jsi::Runtime& rt, const std::string& entryName, std::optional entryType = std::nullopt); - public std::vector getEntriesByType(facebook::jsi::Runtime& rt, facebook::react::PerformanceEntryType entryType); - public std::vector takeRecords(facebook::jsi::Runtime& rt, facebook::jsi::Object observerObj, bool sort); - public std::vector getSupportedPerformanceEntryTypes(facebook::jsi::Runtime& rt); - public std::vector> getEventCounts(facebook::jsi::Runtime& rt); - public void clearEventCountsForTesting(facebook::jsi::Runtime& rt); - public void clearMarks(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void clearMeasures(facebook::jsi::Runtime& rt, std::optional entryName = std::nullopt); - public void disconnect(facebook::jsi::Runtime& rt, facebook::jsi::Object observer); - public void observe(facebook::jsi::Runtime& rt, facebook::jsi::Object observer, facebook::react::NativePerformancePerformanceObserverObserveOptions options); - public void reportMark(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp time, facebook::jsi::Value entry); - public void reportMeasure(facebook::jsi::Runtime& rt, const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::jsi::Value entry); -} - -class facebook::react::NativeResizeObserver : public NativeResizeObserverCxxSpec { - public NativeResizeObserver(std::shared_ptr jsInvoker); - public facebook::jsi::Object observe(facebook::jsi::Runtime& runtime, const facebook::react::NativeResizeObserverObserveOptions& options); - public std::vector takeRecords(facebook::jsi::Runtime& runtime); - public void connect(facebook::jsi::Runtime& runtime, facebook::react::NativeResizeObserverNotifyCallback notifyResizeObserversFunction); - public void disconnect(facebook::jsi::Runtime& runtime); - public void unobserve(facebook::jsi::Runtime& runtime, facebook::react::ResizeObserverObserverId resizeObserverId, facebook::jsi::Object targetToken); -} - -class facebook::react::NativeToJsBridge { - public NativeToJsBridge(facebook::react::JSExecutorFactory* jsExecutorFactory, std::shared_ptr registry, std::shared_ptr jsQueue, std::shared_ptr callback); - public bool isBatchActive(); - public bool isInspectable(); - public facebook::react::jsinspector_modern::RuntimeTargetDelegate& getInspectorTargetDelegate(); - public std::shared_ptr getDecoratedNativeMethodCallInvoker(std::shared_ptr nativeMethodCallInvoker) const; - public virtual ~NativeToJsBridge(); - public void callFunction(std::string&& module, std::string&& method, folly::dynamic&& arguments); - public void destroy(); - public void handleMemoryPressure(int pressureLevel); - public void initializeRuntime(); - public void invokeCallback(double callbackId, folly::dynamic&& arguments); - public void loadBundle(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void loadBundleSync(std::unique_ptr bundleRegistry, std::unique_ptr startupScript, std::string sourceURL); - public void registerBundle(uint32_t bundleId, const std::string& bundlePath); - public void runOnExecutorQueue(std::function&& task) noexcept; - public void setGlobalVariable(std::string propName, std::unique_ptr jsonValue); - public void* getJavaScriptContext(); -} - class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec { public NativeViewTransition(std::shared_ptr jsInvoker); public facebook::jsi::Value findPseudoElementShadowNodeByTag(facebook::jsi::Runtime& rt, double reactTag); @@ -2571,193 +962,6 @@ class facebook::react::NativeViewTransition : public NativeViewTransitionCxxSpec public void waitForTransitionAnimation(facebook::jsi::Runtime& rt, double animationId); } -class facebook::react::NetworkReporter { - public bool isDebuggingEnabled() const; - public static facebook::react::NetworkReporter& getInstance(); - public void reportConnectionTiming(const std::string& requestId, const std::optional& headers); - public void reportDataReceived(const std::string& requestId, int dataLength, const std::optional& encodedDataLength); - public void reportRequestFailed(const std::string& requestId, bool cancelled) const; - public void reportRequestStart(const std::string& requestId, const facebook::react::RequestInfo& requestInfo, int encodedDataLength, const std::optional& redirectResponse); - public void reportResponseEnd(const std::string& requestId, int encodedDataLength); - public void reportResponseStart(const std::string& requestId, const facebook::react::ResponseInfo& responseInfo, int encodedDataLength); - public void reportWebSocketClosed(const std::string& requestId) const; - public void reportWebSocketCreated(const std::string& requestId, const std::string& url) const; - public void reportWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t statusCode, const facebook::react::Headers& headers) const; - public void reportWebSocketMessageReceived(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketMessageSent(const std::string& requestId, const std::string& payloadData, bool isBinary) const; - public void reportWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::Headers& headers) const; - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::ObjectAnimatedNode : public facebook::react::AnimatedNode { - public ObjectAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(std::string propKey, folly::dynamic& props); -} - -class facebook::react::OperatorAnimatedNode : public facebook::react::ValueAnimatedNode { - protected std::vector inputNodes_; - public OperatorAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); -} - -class facebook::react::ParagraphAttributes : public facebook::react::DebugStringConvertible { - public Float minimumFontScale; - public Float minimumFontSize; - public bool adjustsFontSizeToFit; - public bool includeFontPadding; - public bool operator==(const facebook::react::ParagraphAttributes& rhs) const; - public facebook::react::EllipsizeMode ellipsizeMode; - public facebook::react::HyphenationFrequency android_hyphenationFrequency; - public facebook::react::TextBreakStrategy textBreakStrategy; - public facebook::react::TextWidthMode textWidthMode; - public int maximumNumberOfLines; - public std::optional textAlignVertical; -} - -class facebook::react::ParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public ParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::ParagraphEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onTextLayout(const facebook::react::LinesMeasurements& linesMeasurements) const; -} - -class facebook::react::ParagraphShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected virtual bool shouldNewRevisionDirtyMeasurement(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment) const override; - public ParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - -class facebook::react::ParagraphShadowNode::Content { - public facebook::react::AttributedString attributedString; - public facebook::react::BaseTextShadowNode::Attachments attachments; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::PerformanceEntryBuffer { - public PerformanceEntryBuffer() = default; - public facebook::react::HighResDuration durationThreshold; - public size_t droppedEntriesCount; - public virtual void add(const facebook::react::PerformanceEntry& entry) = 0; - public virtual void clear() = 0; - public virtual void clear(const std::string& name) = 0; - public virtual void getEntries(std::vector& target) const = 0; - public virtual void getEntries(std::vector& target, const std::string& name) const = 0; - public virtual ~PerformanceEntryBuffer() = default; -} - -class facebook::react::PerformanceEntryCircularBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryCircularBuffer(size_t size); - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; - public ~PerformanceEntryCircularBuffer() override = default; -} - -class facebook::react::PerformanceEntryKeyedBuffer : public facebook::react::PerformanceEntryBuffer { - public PerformanceEntryKeyedBuffer() = default; - public std::optional find(const std::string& name) const; - public virtual void add(const facebook::react::PerformanceEntry& entry) override; - public virtual void clear() override; - public virtual void clear(const std::string& name) override; - public virtual void getEntries(std::vector& target) const override; - public virtual void getEntries(std::vector& target, const std::string& name) const override; -} - -class facebook::react::PerformanceEntryReporter { - public PerformanceEntryReporter(); - public const std::unordered_map& getEventCounts() const; - public facebook::react::PerformanceObserverRegistry& getObserverRegistry(); - public static std::shared_ptr& getInstance(); - public static std::vector getSupportedEntryTypes(); - public std::optional getMarkTime(const std::string& markName) const; - public std::vector getEntries() const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType) const; - public std::vector getEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public uint32_t getDroppedEntriesCount(facebook::react::PerformanceEntryType type) const noexcept; - public using UserTimingDetailProvider = std::function; - public void addEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void clearEntries(); - public void clearEntries(facebook::react::PerformanceEntryType entryType); - public void clearEntries(facebook::react::PerformanceEntryType entryType, const std::string& entryName); - public void clearEventCounts(); - public void getEntries(std::vector& dest) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType) const; - public void getEntries(std::vector& dest, facebook::react::PerformanceEntryType entryType, const std::string& entryName) const; - public void removeEventListener(facebook::react::PerformanceEntryReporterEventListener* listener); - public void reportEvent(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, facebook::react::HighResTimeStamp processingStart, facebook::react::HighResTimeStamp processingEnd, facebook::react::HighResTimeStamp taskEndTime, uint32_t interactionId); - public void reportLongTask(facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::PerformanceEntryReporter::UserTimingDetailProvider&& detailProvider = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp startTime, facebook::react::HighResDuration duration, const std::optional& detailProvider = std::nullopt); - public void reportResourceTiming(const std::string& url, facebook::react::HighResTimeStamp fetchStart, facebook::react::HighResTimeStamp requestStart, std::optional connectStart, std::optional connectEnd, facebook::react::HighResTimeStamp responseStart, facebook::react::HighResTimeStamp responseEnd, int responseStatus, const std::string& contentType, int encodedBodySize, int decodedBodySize); -} - -class facebook::react::PerformanceEntryReporterEventListener { - public virtual void onEventTimingEntry(const facebook::react::PerformanceEventTiming&); - public virtual void onMeasureEntry(const facebook::react::PerformanceMeasure&, const std::optional&); - public virtual ~PerformanceEntryReporterEventListener() = default; -} - -class facebook::react::PerformanceObserver : public std::enable_shared_from_this { - public PerformanceObserver(PrivateUseCreateMethod, facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public static std::shared_ptr create(facebook::react::PerformanceObserverRegistry& registry, facebook::react::PerformanceObserverCallback&& callback); - public std::vector takeRecords(); - public uint32_t getDroppedEntriesCount() noexcept; - public void disconnect() noexcept; - public void handleEntry(const facebook::react::PerformanceEntry& entry); - public void observe(facebook::react::PerformanceEntryType type, facebook::react::PerformanceObserverObserveSingleOptions options = {}); - public void observe(std::unordered_set types); - public ~PerformanceObserver() = default; -} - -class facebook::react::PerformanceObserverRegistry { - public PerformanceObserverRegistry() = default; - public void addObserver(std::shared_ptr observer); - public void queuePerformanceEntry(const facebook::react::PerformanceEntry& entry); - public void removeObserver(std::shared_ptr observer); -} - -class facebook::react::PlatformTimerRegistry { - public virtual void createRecurringTimer(uint32_t timerID, double delayMS) = 0; - public virtual void createTimer(uint32_t timerID, double delayMS) = 0; - public virtual void deleteTimer(uint32_t timerID) = 0; - public virtual void quit(); - public virtual void setTimerManager(std::weak_ptr); - public virtual ~PlatformTimerRegistry() noexcept = default; -} - -class facebook::react::PointerEventsProcessor { - public bool hasPointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public static std::shared_ptr getShadowNodeFromEventTarget(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* target); - public void interceptPointerEvent(const std::shared_ptr& target, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::PointerEvent& event, const facebook::react::DispatchEvent& eventDispatcher, const facebook::react::UIManager& uiManager); - public void releasePointerCapture(facebook::react::PointerIdentifier pointerId, const facebook::react::ShadowNode* shadowNode); - public void setPointerCapture(facebook::react::PointerIdentifier pointerId, const std::shared_ptr& shadowNode); -} - -class facebook::react::PointerHoverTracker { - public PointerHoverTracker(std::shared_ptr target, const facebook::react::UIManager& uiManager); - public bool areAnyTargetsListeningToEvents(std::initializer_list eventTypes, const facebook::react::UIManager& uiManager) const; - public bool hasSameTarget(const facebook::react::PointerHoverTracker& other) const; - public const facebook::react::ShadowNode* getTarget(const facebook::react::UIManager& uiManager) const; - public std::tuple diffEventPath(const facebook::react::PointerHoverTracker& other, const facebook::react::UIManager& uiManager) const; - public using EventPath = std::vector>; - public using Unique = std::unique_ptr; - public void markAsOld(); -} - -class facebook::react::PreparedTextCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - class facebook::react::Props : public virtual facebook::react::Sealable, public virtual facebook::react::DebugStringConvertible { public Props() = default; public Props(const facebook::react::Props& other) = default; @@ -2769,31 +973,6 @@ class facebook::react::Props : public virtual facebook::react::Sealable, public public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); } -class facebook::react::PropsAnimatedNode : public facebook::react::AnimatedNode { - public PropsAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public facebook::react::SurfaceId connectedRootTag() const; - public facebook::react::Tag connectedViewTag() const; - public folly::dynamic props(); - public virtual void update() override; - public void collectProps(); - public void connectToShadowNodeFamily(facebook::react::ShadowNodeFamily::Weak shadowNodeFamily); - public void connectToView(facebook::react::Tag viewTag); - public void disconnectFromShadowNodeFamily(); - public void disconnectFromView(facebook::react::Tag viewTag); - public void restoreDefaultValues(); - public void update(bool forceFabricCommit); -} - -class facebook::react::RAMBundleRegistry { - public RAMBundleRegistry(facebook::react::RAMBundleRegistry&&) = default; - public RAMBundleRegistry(std::unique_ptr mainBundle, std::function(std::string)> factory = nullptr); - public facebook::react::JSModulesUnbundle::Module getModule(uint32_t bundleId, uint32_t moduleId); - public facebook::react::RAMBundleRegistry& operator=(facebook::react::RAMBundleRegistry&&) = default; - public static constexpr uint32_t MAIN_BUNDLE_ID; - public virtual ~RAMBundleRegistry() = default; - public void registerBundle(uint32_t bundleId, std::string bundlePath); -} - class facebook::react::RawProps { public RawProps(); public RawProps(const facebook::react::RawProps& other) noexcept; @@ -2832,15 +1011,6 @@ class facebook::react::RawPropsParser { public void prepare() noexcept; } -class facebook::react::RawTextProps : public facebook::react::Props { - public RawTextProps() = default; - public RawTextProps(const facebook::react::PropsParserContext& context, const facebook::react::RawTextProps& sourceProps, const facebook::react::RawProps& rawProps); - public std::string text; -} - -class facebook::react::RawTextShadowNode : public facebook::react::ConcreteShadowNode { -} - class facebook::react::RawValue { public RawValue() noexcept; public RawValue(const folly::dynamic& dynamic) noexcept; @@ -2857,374 +1027,12 @@ class facebook::react::RawValue { public operator T() const; } -class facebook::react::ReactInstance { - public ReactInstance(const facebook::react::ReactInstance&) = delete; - public ReactInstance(facebook::react::ReactInstance&&) = delete; - public ReactInstance(std::unique_ptr runtime, std::shared_ptr jsMessageQueueThread, std::shared_ptr timerManager, facebook::react::JsErrorHandler::OnJsError onJsError, facebook::react::jsinspector_modern::HostTarget* parentInspectorTarget = nullptr); - public facebook::react::ReactInstance& operator=(const facebook::react::ReactInstance&) = delete; - public facebook::react::ReactInstance& operator=(facebook::react::ReactInstance&&) = delete; - public facebook::react::RuntimeExecutor getBufferedRuntimeExecutor() noexcept; - public facebook::react::RuntimeExecutor getUnbufferedRuntimeExecutor() noexcept; - public std::shared_ptr createJSCallInvoker() noexcept; - public std::shared_ptr getRuntimeScheduler() noexcept; - public using BindingsInstallFunc = std::function; - public void callFunctionOnModule(const std::string& moduleName, const std::string& methodName, folly::dynamic&& args); - public void handleMemoryPressureJs(int pressureLevel); - public void initializeRuntime(facebook::react::ReactInstance::JSRuntimeFlags options, facebook::react::ReactInstance::BindingsInstallFunc bindingsInstallFunc) noexcept; - public void loadScript(std::unique_ptr script, const std::string& sourceURL, std::function&& beforeLoad = nullptr, std::function&& afterLoad = nullptr); - public void registerSegment(uint32_t segmentId, const std::string& segmentPath); - public void unregisterFromInspector(); - public void* getJavaScriptContext(); - public ~ReactInstance() noexcept override; -} - -struct facebook::react::ReactInstance::JSRuntimeFlags { - public bool isProfiling; - public const std::string runtimeDiagnosticFlags; -} - -class facebook::react::ReactPerfettoLogger { - public static bool isTracing(); - public static void mark(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); - public static void measure(const std::string_view& eventName, facebook::react::HighResTimeStamp startTime, facebook::react::HighResTimeStamp endTime, const std::optional& trackName = std::nullopt, const std::optional& trackGroup = std::nullopt); -} - -class facebook::react::ResizeObserver { - public ResizeObserver(facebook::react::ResizeObserverObserverId resizeObserverId, facebook::react::ShadowNodeFamily::Shared targetShadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions, uint64_t observationSequence); - public bool hasDeliveredDetachedState() const; - public bool needsInitialDeliveryCheck() const; - public facebook::react::ResizeObservationResult computeActiveObservation(const facebook::react::RootShadowNode& rootShadowNode) const; - public facebook::react::ResizeObserverObserverId getResizeObserverId() const; - public facebook::react::ShadowNodeFamily::Shared getTargetShadowNodeFamily() const; - public uint64_t getObservationSequence() const; - public void markAsReported(const facebook::react::ResizeObservationResult& result); - public void updateDetachedState(bool detached); -} - -class facebook::react::ResizeObserverManager : public facebook::react::UIManagerCommitHook, public facebook::react::RuntimeSchedulerResizeObserverDelegate { - public ResizeObserverManager(); - public std::vector takeRecords(); - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept override; - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) noexcept override; - public void connect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager, std::function notifyResizeObserversFunction); - public void disconnect(facebook::react::RuntimeScheduler& runtimeScheduler, facebook::react::UIManager& uiManager); - public void observe(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily, facebook::react::ResizeObserverBoxOptions boxOptions); - public void unobserve(facebook::react::ResizeObserverObserverId resizeObserverId, const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily); -} - -class facebook::react::RootProps : public facebook::react::HostPlatformViewProps { - public RootProps() = default; - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext); - public RootProps(const facebook::react::PropsParserContext& context, const facebook::react::RootProps& sourceProps, const facebook::react::RawProps& rawProps); - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; -} - -class facebook::react::RootShadowNode : public facebook::react::ConcreteViewShadowNode { - public RootShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public RootShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public bool layoutIfNeeded(std::vector* affectedNodes = {}); - public facebook::react::RootShadowNode::Unshared clone(const facebook::react::PropsParserContext& propsParserContext, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using Shared = std::shared_ptr; - public using Unshared = std::shared_ptr; - public virtual facebook::react::Transform getTransform() const override; - public void setInstanceHandle(facebook::react::InstanceHandle::Shared instanceHandle) const; -} - -class facebook::react::RoundAnimatedNode : public facebook::react::ValueAnimatedNode { - public RoundAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::RunLoopObserver { - protected const facebook::react::RunLoopObserver::Activity activities_; - protected const facebook::react::RunLoopObserver::WeakOwner owner_; - protected mutable const facebook::react::RunLoopObserver::Delegate* delegate_; - protected mutable std::atomic enabled_; - protected virtual void startObserving() const noexcept = 0; - protected virtual void stopObserving() const noexcept = 0; - protected void activityDidChange(facebook::react::RunLoopObserver::Activity activity) const noexcept; - public RunLoopObserver(facebook::react::RunLoopObserver::Activity activities, facebook::react::RunLoopObserver::WeakOwner owner) noexcept; - public facebook::react::RunLoopObserver::WeakOwner getOwner() const noexcept; - public using Factory = std::function(facebook::react::RunLoopObserver::Activity activities, const facebook::react::RunLoopObserver::WeakOwner& owner)>; - public using Owner = std::shared_ptr; - public using WeakOwner = std::weak_ptr; - public virtual bool isOnRunLoopThread() const noexcept = 0; - public virtual ~RunLoopObserver() noexcept = default; - public void disable() const noexcept; - public void enable() const noexcept; - public void setDelegate(const facebook::react::RunLoopObserver::Delegate* delegate) const noexcept; -} - -class facebook::react::RunLoopObserver::Delegate { - public virtual void activityDidChange(const facebook::react::RunLoopObserver::Delegate* delegate, facebook::react::RunLoopObserver::Activity activity) const noexcept = 0; - public virtual ~Delegate() noexcept = default; -} - -enum facebook::react::RunLoopObserver::Activity : int32_t { - AfterWaiting, - BeforeWaiting, - None, -} - -class facebook::react::RuntimeScheduler : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler(const facebook::react::RuntimeScheduler&) = delete; - public RuntimeScheduler(facebook::react::RuntimeExecutor runtimeExecutor, std::function now = facebook::react::HighResTimeStamp::now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError = handleTaskErrorDefault); - public RuntimeScheduler(facebook::react::RuntimeScheduler&&) = delete; - public facebook::react::RuntimeScheduler& operator=(const facebook::react::RuntimeScheduler&) = delete; - public facebook::react::RuntimeScheduler& operator=(facebook::react::RuntimeScheduler&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeSchedulerBase : public facebook::hermes::IEventLoopControl { - public virtual bool getShouldYield() noexcept = 0; - public virtual facebook::react::HighResTimeStamp now() const noexcept = 0; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept = 0; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) = 0; - public virtual void cancelTask(facebook::react::Task& task) noexcept = 0; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) = 0; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) = 0; - public virtual void scheduleTask(const std::function& task) = 0; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept = 0; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) = 0; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) = 0; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* reporter) = 0; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) = 0; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* provider) = 0; - public virtual ~RuntimeSchedulerBase() = default; -} - -class facebook::react::RuntimeSchedulerBinding : public facebook::jsi::HostObject { - public RuntimeSchedulerBinding(std::shared_ptr runtimeScheduler); - public static std::shared_ptr createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& runtimeScheduler); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public std::shared_ptr getRuntimeScheduler() noexcept; - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; -} - -class facebook::react::RuntimeSchedulerCallInvoker : public facebook::react::CallInvoker { - public RuntimeSchedulerCallInvoker(std::weak_ptr runtimeScheduler); - public virtual void invokeAsync(facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeAsync(facebook::react::SchedulerPriority priority, facebook::react::CallFunc&& func) noexcept override; - public virtual void invokeSync(facebook::react::CallFunc&& func) override; -} - -class facebook::react::RuntimeSchedulerEventTimingDelegate { - public virtual void dispatchPendingEventTimingEntries(facebook::react::HighResTimeStamp taskEndTime, const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerEventTimingDelegate() = default; -} - -class facebook::react::RuntimeSchedulerIntersectionObserverDelegate { - public virtual void updateIntersectionObservations(const std::unordered_set& surfaceIdsWithPendingRenderingUpdates) = 0; - public virtual ~RuntimeSchedulerIntersectionObserverDelegate() = default; -} - -class facebook::react::RuntimeSchedulerResizeObserverDelegate { - public virtual void runResizeObservations(facebook::jsi::Runtime& runtime) = 0; - public virtual ~RuntimeSchedulerResizeObserverDelegate() = default; -} - -class facebook::react::RuntimeScheduler_Legacy : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Legacy(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public RuntimeScheduler_Legacy(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Legacy(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(const facebook::react::RuntimeScheduler_Legacy&) = delete; - public facebook::react::RuntimeScheduler_Legacy& operator=(facebook::react::RuntimeScheduler_Legacy&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration timeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::RuntimeScheduler_Modern : public facebook::react::RuntimeSchedulerBase { - public RuntimeScheduler_Modern(const facebook::react::RuntimeScheduler_Modern&) = delete; - public RuntimeScheduler_Modern(facebook::react::RuntimeExecutor runtimeExecutor, std::function now, facebook::react::RuntimeSchedulerTaskErrorHandler onTaskError); - public RuntimeScheduler_Modern(facebook::react::RuntimeScheduler_Modern&&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(const facebook::react::RuntimeScheduler_Modern&) = delete; - public facebook::react::RuntimeScheduler_Modern& operator=(facebook::react::RuntimeScheduler_Modern&&) = delete; - public virtual bool getShouldYield() noexcept override; - public virtual facebook::react::HighResTimeStamp now() const noexcept override; - public virtual facebook::react::SchedulerPriority getCurrentPriorityLevel() const noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::jsi::Function&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleIdleTask(facebook::react::RawCallback&& callback, facebook::react::HighResDuration customTimeout = timeoutForSchedulerPriority(facebook::react::SchedulerPriority::IdlePriority)) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback) noexcept override; - public virtual std::shared_ptr scheduleTask(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback) noexcept override; - public virtual uint64_t registerTaskQueueSource() override; - public virtual void callExpiredTasks(facebook::jsi::Runtime& runtime) override; - public virtual void cancelTask(facebook::react::Task& task) noexcept override; - public virtual void executeNowOnTheSameThread(facebook::react::RawCallback&& callback) override; - public virtual void scheduleRenderingUpdate(facebook::react::SurfaceId surfaceId, facebook::react::RuntimeSchedulerRenderingUpdate&& renderingUpdate) override; - public virtual void scheduleTask(const std::function& task) override; - public virtual void scheduleWork(facebook::react::RawCallback&& callback) noexcept override; - public virtual void setEventTimingDelegate(facebook::react::RuntimeSchedulerEventTimingDelegate* eventTimingDelegate) override; - public virtual void setIntersectionObserverDelegate(facebook::react::RuntimeSchedulerIntersectionObserverDelegate* intersectionObserverDelegate) override; - public virtual void setPerformanceEntryReporter(facebook::react::PerformanceEntryReporter* performanceEntryReporter) override; - public virtual void setResizeObserverDelegate(facebook::react::RuntimeSchedulerResizeObserverDelegate* resizeObserverDelegate) override; - public virtual void setShadowTreeRevisionConsistencyManager(facebook::react::ShadowTreeRevisionConsistencyManager* shadowTreeRevisionConsistencyManager) override; - public virtual void unregisterTaskQueueSource(uint64_t sourceId) override; -} - -class facebook::react::SafeAreaViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { -} - -class facebook::react::SafeAreaViewShadowNode : public facebook::react::ConcreteViewShadowNode { -} - -class facebook::react::SafeAreaViewState { - public facebook::react::EdgeInsets padding; -} - -class facebook::react::Scheduler : public facebook::react::UIManagerDelegate { - public Scheduler(const facebook::react::SchedulerToolbox& schedulerToolbox, facebook::react::UIManagerAnimationDelegate* animationDelegate, facebook::react::SchedulerDelegate* delegate); - public facebook::react::SchedulerDelegate* getDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr getUIManager() const; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidClearPendingSnapshots() override; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) override; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) override; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) override; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) override; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) override; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) override; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) override; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) override; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) final; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) override; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) final; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) override; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) override; - public void addEventListener(std::shared_ptr listener); - public void animationTick() const; - public void registerSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void setDelegate(facebook::react::SchedulerDelegate* delegate); - public void unregisterSurface(const facebook::react::SurfaceHandler& surfaceHandler) const noexcept; - public ~Scheduler() override; -} - -class facebook::react::SchedulerDelegate { - public virtual void schedulerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidClearPendingSnapshots() = 0; - public virtual void schedulerDidDispatchCommand(const facebook::react::ShadowView& shadowView, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void schedulerDidFinishTransaction(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerDidRequestPreliminaryViewAllocation(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void schedulerDidSendAccessibilityEvent(const facebook::react::ShadowView& shadowView, const std::string& eventType) = 0; - public virtual void schedulerDidSetIsJSResponder(const facebook::react::ShadowView& shadowView, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void schedulerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void schedulerShouldMergeReactRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual void schedulerShouldRenderTransactions(const std::shared_ptr& mountingCoordinator) = 0; - public virtual void schedulerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public virtual void schedulerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~SchedulerDelegate() noexcept = default; -} - -class facebook::react::ScopedShadowTreeRevisionLock { - public ScopedShadowTreeRevisionLock(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ScopedShadowTreeRevisionLock(facebook::react::ShadowTreeRevisionConsistencyManager* consistencyManager) noexcept; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(const facebook::react::ScopedShadowTreeRevisionLock&) = delete; - public facebook::react::ScopedShadowTreeRevisionLock& operator=(facebook::react::ScopedShadowTreeRevisionLock&&) = delete; - public ~ScopedShadowTreeRevisionLock() noexcept; -} - -class facebook::react::ScrollViewEventEmitter : public facebook::react::BaseViewEventEmitter { - public using EndDragMetrics = facebook::react::ScrollEndDragEvent; - public using Metrics = facebook::react::ScrollEvent; - public void onMomentumScrollBegin(const facebook::react::ScrollEvent& scrollEvent) const; - public void onMomentumScrollEnd(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScroll(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollBeginDrag(const facebook::react::ScrollEvent& scrollEvent) const; - public void onScrollEndDrag(const facebook::react::ScrollEndDragEvent& scrollEvent) const; - public void onScrollToTop(const facebook::react::ScrollEvent& scrollEvent) const; -} - -class facebook::react::ScrollViewMaintainVisibleContentPosition { - public bool operator==(const facebook::react::ScrollViewMaintainVisibleContentPosition& rhs) const = default; - public int minIndexForVisible; - public std::optional autoscrollToTopThreshold; -} - -class facebook::react::ScrollViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public ScrollViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public ScrollViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ScrollViewState initialStateData(const facebook::react::Props::Shared& props, const facebook::react::ShadowNodeFamily::Shared& family, const facebook::react::ComponentDescriptor& componentDescriptor); - public virtual facebook::react::Point getContentOriginOffset(bool includeTransform) const override; - public virtual void layout(facebook::react::LayoutContext layoutContext) override; -} - -class facebook::react::ScrollViewState { - public ScrollViewState() = default; - public ScrollViewState(facebook::react::Point contentOffset, facebook::react::Rect contentBoundingRect, int scrollAwayPaddingTop); - public bool disableViewCulling; - public facebook::react::Point contentOffset; - public facebook::react::Rect contentBoundingRect; - public facebook::react::Size getContentSize() const; - public int scrollAwayPaddingTop; -} - class facebook::react::Sealable { public bool getSealed() const; public void ensureUnsealed() const; public void seal() const; } -class facebook::react::SelectableParagraphComponentDescriptor : public facebook::react::BaseParagraphComponentDescriptor { - public SelectableParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); -} - -class facebook::react::SelectableParagraphShadowNode : public facebook::react::ParagraphShadowNode { - public SelectableParagraphShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SelectableParagraphShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static constexpr facebook::react::ComponentName Name(); - public static facebook::react::ComponentHandle Handle(); -} - class facebook::react::ShadowNode : public facebook::react::Sealable, public facebook::react::DebugStringConvertible, public facebook::jsi::NativeState { protected facebook::react::Props::Shared props_; protected facebook::react::ShadowNodeTraits traits_; @@ -3324,63 +1132,6 @@ enum facebook::react::ShadowNodeTraits::Trait : int32_t { ViewKind, } -class facebook::react::ShadowTree { - public ShadowTree(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext, const facebook::react::ShadowTreeDelegate& delegate, const facebook::react::ContextContainer& contextContainer); - public bool promoteReactRevision() const; - public facebook::react::CommitMode getCommitMode() const; - public facebook::react::CommitStatus commit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::CommitStatus tryCommit(const facebook::react::ShadowTreeCommitTransaction& transaction, const facebook::react::ShadowTree::CommitOptions& commitOptions) const; - public facebook::react::ShadowTreeRevision getCurrentRevision() const; - public facebook::react::SurfaceId getSurfaceId() const; - public std::optional getCurrentReactRevision() const; - public std::shared_ptr getMountingCoordinator() const; - public using CommitMode = facebook::react::ShadowTreeCommitMode; - public using CommitOptions = facebook::react::ShadowTreeCommitOptions; - public using CommitSource = facebook::react::ShadowTreeCommitSource; - public using CommitStatus = facebook::react::ShadowTreeCommitStatus; - public using Unique = std::unique_ptr; - public void commitEmptyTree() const; - public void mergeReactRevision() const; - public void notifyDelegatesOfUpdates() const; - public void setCommitMode(facebook::react::CommitMode commitMode) const; - public ~ShadowTree(); -} - -class facebook::react::ShadowTreeDelegate { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) const = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) const; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const = 0; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const = 0; - public virtual ~ShadowTreeDelegate() noexcept = default; -} - -class facebook::react::ShadowTreeRegistry { - public ShadowTreeRegistry() = default; - public bool visit(facebook::react::SurfaceId surfaceId, const std::function& callback) const; - public std::unique_ptr remove(facebook::react::SurfaceId surfaceId) const; - public void add(std::unique_ptr&& shadowTree) const; - public void enumerate(const std::function& callback) const; - public ~ShadowTreeRegistry(); -} - -class facebook::react::ShadowTreeRevision { - public facebook::react::RootShadowNode::Shared rootShadowNode; - public facebook::react::ShadowTreeRevision::Number number; - public facebook::react::TransactionTelemetry telemetry; - public using Number = int64_t; -} - -class facebook::react::ShadowTreeRevisionConsistencyManager { - public virtual void lockRevisions() = 0; - public virtual void unlockRevisions() = 0; - public virtual ~ShadowTreeRevisionConsistencyManager() = default; -} - -class facebook::react::ShadowTreeRevisionProvider { - public virtual facebook::react::RootShadowNode::Shared getCurrentRevision(facebook::react::SurfaceId surfaceId) = 0; - public virtual ~ShadowTreeRevisionProvider() = default; -} - class facebook::react::SharedColor { public Color& operator*(); public SharedColor(); @@ -3392,15 +1143,6 @@ class facebook::react::SharedColor { public std::string toString() const noexcept; } -class facebook::react::SpringAnimationDriver : public facebook::react::AnimationDriver { - protected virtual bool update(double timeDeltaMs, bool restarting) override; - public SpringAnimationDriver(int id, facebook::react::Tag animatedValueTag, std::optional endCallback, folly::dynamic config, facebook::react::NativeAnimatedNodesManager* manager); -} - -class facebook::react::StackTraceParser { - public static std::vector parse(bool isHermes, const std::string& stackString); -} - class facebook::react::State { protected State(facebook::react::StateData::Shared data, const facebook::react::State& previousState); protected State(facebook::react::StateData::Shared data, facebook::react::ShadowNodeFamily::Weak family); @@ -3424,234 +1166,6 @@ class facebook::react::StateUpdate { public using FailureCallback = std::function; } -class facebook::react::StyleAnimatedNode : public facebook::react::AnimatedNode { - public StyleAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool isLayoutStyleUpdated() const noexcept; - public void collectViewUpdates(folly::dynamic& props); -} - -class facebook::react::SubtractionAnimatedNode : public facebook::react::OperatorAnimatedNode { - public SubtractionAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::SurfaceHandler { - public SurfaceHandler(const facebook::react::SurfaceHandler& SurfaceHandler) noexcept = delete; - public SurfaceHandler(const std::string& moduleName, facebook::react::SurfaceId surfaceId) noexcept; - public SurfaceHandler(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::DisplayMode getDisplayMode() const noexcept; - public facebook::react::LayoutConstraints getLayoutConstraints() const noexcept; - public facebook::react::LayoutContext getLayoutContext() const noexcept; - public facebook::react::Size measure(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public facebook::react::SurfaceHandler& operator=(const facebook::react::SurfaceHandler& other) noexcept = delete; - public facebook::react::SurfaceHandler& operator=(facebook::react::SurfaceHandler&& other) noexcept = delete; - public facebook::react::SurfaceHandler::Status getStatus() const noexcept; - public facebook::react::SurfaceId getSurfaceId() const noexcept; - public folly::dynamic getProps() const noexcept; - public std::shared_ptr getMountingCoordinator() const noexcept; - public std::string getModuleName() const noexcept; - public virtual void setDisplayMode(facebook::react::DisplayMode displayMode) const noexcept; - public virtual ~SurfaceHandler() noexcept; - public void constraintLayout(const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const; - public void setContextContainer(std::shared_ptr contextContainer) const noexcept; - public void setProps(const folly::dynamic& props) const noexcept; - public void setSurfaceId(facebook::react::SurfaceId surfaceId) const noexcept; - public void start() const noexcept; - public void stop() const noexcept; -} - -enum facebook::react::SurfaceHandler::Status { - Registered, - Running, - Unregistered, -} - -class facebook::react::SurfaceManager { - public SurfaceManager(const facebook::react::Scheduler& scheduler) noexcept; - public bool isSurfaceRunning(facebook::react::SurfaceId surfaceId) const noexcept; - public facebook::react::Size measureSurface(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public std::optional getSurfaceProps(facebook::react::SurfaceId surfaceId) const noexcept; - public std::shared_ptr findMountingCoordinator(facebook::react::SurfaceId surfaceId) const noexcept; - public std::unordered_set getRunningSurfaces() const noexcept; - public void constraintSurfaceLayout(facebook::react::SurfaceId surfaceId, const facebook::react::LayoutConstraints& layoutConstraints, const facebook::react::LayoutContext& layoutContext) const noexcept; - public void startSurface(facebook::react::SurfaceId surfaceId, const std::string& moduleName, const folly::dynamic& props, const facebook::react::LayoutConstraints& layoutConstraints = {}, const facebook::react::LayoutContext& layoutContext = {}) noexcept; - public void stopAllSurfaces() noexcept; - public void stopSurface(facebook::react::SurfaceId surfaceId) noexcept; - public ~SurfaceManager() noexcept; -} - -struct facebook::react::SurfaceManager::SurfaceProps { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::LayoutContext layoutContext; - public facebook::react::SurfaceId surfaceId; - public folly::dynamic props; - public std::string moduleName; -} - -class facebook::react::SurfaceTelemetry { - public facebook::react::TelemetryDuration getCommitTime() const; - public facebook::react::TelemetryDuration getDiffTime() const; - public facebook::react::TelemetryDuration getLayoutTime() const; - public facebook::react::TelemetryDuration getMountTime() const; - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public int getLastRevisionNumber() const; - public int getNumberOfMutations() const; - public int getNumberOfTextMeasurements() const; - public int getNumberOfTransactions() const; - public static constexpr size_t kMaxNumberOfRecordedCommitTelemetries; - public std::vector getRecentTransactionTelemetries() const; - public void incorporate(const facebook::react::TransactionTelemetry& telemetry, int numberOfMutations); -} - -class facebook::react::SwitchComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public SwitchComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; -} - -class facebook::react::SwitchShadowNode : public facebook::react::ConcreteViewShadowNode { - public SwitchShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public SwitchShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; -} - -class facebook::react::TaskPriorityComparer { - public bool operator()(const std::shared_ptr& lhs, const std::shared_ptr& rhs); -} - -class facebook::react::TelemetryController { - public bool pullTransaction(const facebook::react::MountingTransactionCallback& willMount, const facebook::react::MountingTransactionCallback& doMount, const facebook::react::MountingTransactionCallback& didMount) const; -} - -class facebook::react::TextAttributes : public facebook::react::DebugStringConvertible { - public Float fontSize; - public Float fontSizeMultiplier; - public Float letterSpacing; - public Float lineHeight; - public Float maxFontSizeMultiplier; - public Float opacity; - public Float textShadowRadius; - public bool operator==(const facebook::react::TextAttributes& rhs) const; - public facebook::react::SharedColor backgroundColor; - public facebook::react::SharedColor foregroundColor; - public facebook::react::SharedColor textDecorationColor; - public facebook::react::SharedColor textShadowColor; - public static facebook::react::TextAttributes defaultTextAttributes(); - public std::optional allowFontScaling; - public std::optional isHighlighted; - public std::optional isPressable; - public std::optional accessibilityRole; - public std::optional dynamicTypeRamp; - public std::optional fontStyle; - public std::optional fontVariant; - public std::optional fontWeight; - public std::optional layoutDirection; - public std::optional lineBreakMode; - public std::optional lineBreakStrategy; - public std::optional role; - public std::optional textShadowOffset; - public std::optional alignment; - public std::optional textDecorationLineType; - public std::optional textDecorationStyle; - public std::optional textTransform; - public std::optional baseWritingDirection; - public std::optional fontVariationSettings; - public std::string fontFamily; - public std::vector textEffects; - public void apply(facebook::react::TextAttributes textAttributes); -} - -class facebook::react::TextEffectProps : public facebook::react::Props { - public TextEffectProps() = default; - public TextEffectProps(const facebook::react::PropsParserContext& context, const facebook::react::TextEffectProps& sourceProps, const facebook::react::RawProps& rawProps); - public folly::dynamic effectProps; - public std::string effectName; -} - -class facebook::react::TextEffectShadowNode : public facebook::react::ConcreteShadowNode { -} - -class facebook::react::TextInputEventEmitter : public facebook::react::BaseViewEventEmitter { - public void onBlur(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onContentSizeChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onEndEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onFocus(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onKeyPress(const facebook::react::TextInputEventEmitter::KeyPressMetrics& keyPressMetrics) const; - public void onScroll(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSelectionChange(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; - public void onSubmitEditing(const facebook::react::TextInputEventEmitter::Metrics& textInputMetrics) const; -} - -struct facebook::react::TextInputEventEmitter::KeyPressMetrics { - public int eventCount; - public std::string text; -} - -struct facebook::react::TextInputEventEmitter::Metrics { - public Float zoomScale; - public bool responderIgnoreScroll; - public facebook::react::AttributedString::Range selectionRange; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public facebook::react::Size layoutMeasurement; - public facebook::react::Tag target; - public int eventCount; - public std::string text; -} - -class facebook::react::TextInputState { - public TextInputState() = default; - public TextInputState(facebook::react::AttributedStringBox attributedStringBox, facebook::react::AttributedString reactTreeAttributedString, facebook::react::ParagraphAttributes paragraphAttributes, int64_t mostRecentEventCount); - public facebook::react::AttributedString reactTreeAttributedString; - public facebook::react::AttributedStringBox attributedStringBox; - public facebook::react::ParagraphAttributes paragraphAttributes; - public int64_t mostRecentEventCount; -} - -class facebook::react::TextMeasureCacheKey { - public Float pointScaleFactor; - public facebook::react::AttributedString attributedString; - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::ParagraphAttributes paragraphAttributes; -} - -class facebook::react::TextMeasurement { - public facebook::react::Size size; - public facebook::react::TextMeasurement::Attachments attachments; - public using Attachments = std::vector; -} - -class facebook::react::TextMeasurement::Attachment { - public bool isClipped; - public facebook::react::Rect frame; -} - -class facebook::react::TextProps : public facebook::react::Props, public facebook::react::BaseTextProps { - public TextProps() = default; - public TextProps(const facebook::react::PropsParserContext& context, const facebook::react::TextProps& sourceProps, const facebook::react::RawProps& rawProps); - public void setProp(const facebook::react::PropsParserContext& context, facebook::react::RawPropsPropNameHash hash, const char* propName, const facebook::react::RawValue& value); -} - -class facebook::react::TextShadowNode : public facebook::react::ConcreteShadowNode, public facebook::react::BaseTextShadowNode { - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::TimerManager { - public TimerManager(const facebook::react::TimerManager&) = delete; - public TimerManager(facebook::react::TimerManager&&) = delete; - public TimerManager(std::unique_ptr platformTimerRegistry) noexcept; - public facebook::react::TimerManager& operator=(const facebook::react::TimerManager&) = delete; - public facebook::react::TimerManager& operator=(facebook::react::TimerManager&&) = delete; - public void attachGlobals(facebook::jsi::Runtime& runtime); - public void callTimer(facebook::react::TimerHandle handle); - public void quit(); - public void setRuntimeExecutor(facebook::react::RuntimeExecutor runtimeExecutor) noexcept; - public ~TimerManager() noexcept; -} - class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter { public TouchEventEmitter(facebook::react::SharedEventTarget eventTarget, facebook::react::EventDispatcher::Weak eventDispatcher); public void onClick(facebook::react::PointerEvent event) const; @@ -3671,48 +1185,6 @@ class facebook::react::TouchEventEmitter : public facebook::react::EventEmitter public void onTouchStart(facebook::react::TouchEvent event) const; } -class facebook::react::TrackingAnimatedNode : public facebook::react::AnimatedNode { - public TrackingAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public virtual void update() override; -} - -class facebook::react::TransactionTelemetry { - public TransactionTelemetry(); - public TransactionTelemetry(std::function now); - public facebook::react::TelemetryDuration getTextMeasureTime() const; - public facebook::react::TelemetryTimePoint getCommitEndTime() const; - public facebook::react::TelemetryTimePoint getCommitStartTime() const; - public facebook::react::TelemetryTimePoint getDiffEndTime() const; - public facebook::react::TelemetryTimePoint getDiffStartTime() const; - public facebook::react::TelemetryTimePoint getLayoutEndTime() const; - public facebook::react::TelemetryTimePoint getLayoutStartTime() const; - public facebook::react::TelemetryTimePoint getMountEndTime() const; - public facebook::react::TelemetryTimePoint getMountStartTime() const; - public int getAffectedLayoutNodesCount() const; - public int getNumberOfTextMeasurements() const; - public int getRevisionNumber() const; - public static facebook::react::TransactionTelemetry* threadLocalTelemetry(); - public void didCommit(); - public void didDiff(); - public void didLayout(); - public void didLayout(int affectedLayoutNodesCount); - public void didMeasureText(); - public void didMount(); - public void setAsThreadLocal(); - public void setRevisionNumber(int revisionNumber); - public void unsetAsThreadLocal(); - public void willCommit(); - public void willDiff(); - public void willLayout(); - public void willMeasureText(); - public void willMount(); -} - -class facebook::react::TransformAnimatedNode : public facebook::react::AnimatedNode { - public TransformAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public void collectViewUpdates(folly::dynamic& props); -} - class facebook::react::TurboModule : public facebook::jsi::HostObject { protected const std::string name_; protected std::shared_ptr jsInvoker_; @@ -3743,184 +1215,6 @@ class facebook::react::TurboModuleWithJSIBindings { public virtual ~TurboModuleWithJSIBindings() = default; } -class facebook::react::UIManager : public facebook::react::ShadowTreeDelegate { - public UIManager(const facebook::react::RuntimeExecutor& runtimeExecutor, std::shared_ptr contextContainer); - public const facebook::react::ShadowTreeRegistry& getShadowTreeRegistry() const; - public facebook::react::LayoutMetrics getRelativeLayoutMetrics(const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode* ancestorShadowNode, facebook::react::LayoutableShadowNode::LayoutInspectingPolicy policy) const; - public facebook::react::ShadowTree::Unique stopSurface(facebook::react::SurfaceId surfaceId) const; - public facebook::react::ShadowTreeRevisionConsistencyManager* getShadowTreeRevisionConsistencyManager(); - public facebook::react::ShadowTreeRevisionProvider* getShadowTreeRevisionProvider(); - public facebook::react::UIManagerDelegate* getDelegate(); - public facebook::react::UIManagerViewTransitionDelegate* getViewTransitionDelegate() const; - public std::shared_ptr getContextContainer() const; - public std::shared_ptr findNodeAtPoint(const std::shared_ptr& shadowNode, facebook::react::Point point) const; - public std::shared_ptr getNewestCloneOfShadowNode(const facebook::react::ShadowNode& shadowNode) const; - public std::shared_ptr cloneNode(const facebook::react::ShadowNode& shadowNode, const std::shared_ptr>>& children, facebook::react::RawProps rawProps) const; - public std::shared_ptr createNode(facebook::react::Tag tag, const std::string& componentName, facebook::react::SurfaceId surfaceId, facebook::react::RawProps props, facebook::react::InstanceHandle::Shared instanceHandle) const; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTree::CommitOptions& commitOptions) const override; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& rootShadowNode, const std::vector& affectedLayoutableNodes) const noexcept override; - public virtual void shadowTreeDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) const override; - public virtual void shadowTreeDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) const override; - public void addEventListener(std::shared_ptr listener); - public void addOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback); - public void animationTick() const; - public void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const; - public void completeSurface(facebook::react::SurfaceId surfaceId, const std::shared_ptr>>& rootChildren, facebook::react::ShadowTree::CommitOptions commitOptions); - public void dispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) const; - public void registerCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void registerMountHook(facebook::react::UIManagerMountHook& mountHook); - public void removeEventListener(const std::shared_ptr& listener); - public void reportMount(facebook::react::SurfaceId surfaceId) const; - public void sendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType); - public void setAnimationDelegate(facebook::react::UIManagerAnimationDelegate* delegate); - public void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry); - public void setDelegate(facebook::react::UIManagerDelegate* delegate); - public void setIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) const; - public void setNativeAnimatedDelegate(std::weak_ptr delegate); - public void setSurfaceProps(facebook::react::SurfaceId surfaceId, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void setViewTransitionDelegate(facebook::react::UIManagerViewTransitionDelegate* delegate); - public void startEmptySurface(facebook::react::ShadowTree::Unique&& shadowTree) const noexcept; - public void startSurface(facebook::react::ShadowTree::Unique&& shadowTree, std::string moduleName, folly::dynamic props, facebook::react::DisplayMode displayMode) const noexcept; - public void stopSurfaceForAnimationDelegate(facebook::react::SurfaceId surfaceId) const; - public void synchronouslyUpdateAnimatedProps(const std::unordered_map& updates); - public void synchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props); - public void unregisterCommitHook(facebook::react::UIManagerCommitHook& commitHook); - public void unregisterMountHook(facebook::react::UIManagerMountHook& mountHook); - public void updateShadowTree(std::unordered_map&& tagToProps); - public void updateState(const facebook::react::StateUpdate& stateUpdate) const; - public void visitBinding(const std::function& callback, facebook::jsi::Runtime& runtime) const; - public ~UIManager() override; -} - -class facebook::react::UIManagerAnimationBackend { - public using Callback = std::function; - public virtual facebook::react::CallbackId start(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void clearRegistry(facebook::react::SurfaceId surfaceId) = 0; - public virtual void clearRegistryOnSurfaceStop(facebook::react::SurfaceId surfaceId) = 0; - public virtual void onAnimationFrame(facebook::react::AnimationTimestamp timestamp) = 0; - public virtual void pushAnimationMutations(const facebook::react::UIManagerAnimationBackend::Callback& callback) = 0; - public virtual void registerJSInvoker(std::shared_ptr jsInvoker) = 0; - public virtual void stop(facebook::react::CallbackId callbackId) = 0; - public virtual void trigger() = 0; - public virtual ~UIManagerAnimationBackend() = default; -} - -class facebook::react::UIManagerAnimationDelegate { - public virtual bool shouldAnimateFrame() const = 0; - public virtual void setComponentDescriptorRegistry(const facebook::react::SharedComponentDescriptorRegistry& componentDescriptorRegistry) = 0; - public virtual void stopSurface(facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidConfigureNextLayoutAnimation(facebook::jsi::Runtime& runtime, const facebook::react::RawValue& config, const facebook::jsi::Value& successCallback, const facebook::jsi::Value& failureCallback) const = 0; - public virtual ~UIManagerAnimationDelegate() = default; -} - -class facebook::react::UIManagerBinding : public facebook::jsi::HostObject { - public UIManagerBinding(std::shared_ptr uiManager); - public facebook::react::PointerEventsProcessor& getPointerEventsProcessor(); - public facebook::react::UIManager& getUIManager(); - public static std::shared_ptr getBinding(facebook::jsi::Runtime& runtime); - public static void createAndInstallIfNeeded(facebook::jsi::Runtime& runtime, const std::shared_ptr& uiManager); - public virtual facebook::jsi::Value get(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& name) override; - public void dispatchEvent(facebook::jsi::Runtime& runtime, facebook::react::EventTarget* eventTarget, const std::string& type, facebook::react::ReactEventPriority priority, const facebook::react::EventPayload& payload, facebook::react::HighResTimeStamp eventTimestamp) const; - public void invalidate() const; - public ~UIManagerBinding() override; -} - -class facebook::react::UIManagerCommitHook { - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions&) noexcept; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const facebook::react::RootShadowNode::Unshared& newRootShadowNode) noexcept; - public virtual void commitHookWasRegistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager& uiManager) noexcept = 0; - public virtual void shadowTreeDidCommit(const facebook::react::ShadowTree&, const facebook::react::RootShadowNode::Shared&, const std::vector&) noexcept; - public virtual ~UIManagerCommitHook() noexcept = default; -} - -class facebook::react::UIManagerDelegate { - public using OnSurfaceStartCallback = std::function; - public virtual void uiManagerDidCaptureViewSnapshot(facebook::react::Tag tag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidClearPendingSnapshots() = 0; - public virtual void uiManagerDidCreateShadowNode(const facebook::react::ShadowNode& shadowNode) = 0; - public virtual void uiManagerDidDispatchCommand(const std::shared_ptr& shadowNode, const std::string& commandName, const folly::dynamic& args) = 0; - public virtual void uiManagerDidFinishReactCommit(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidFinishTransaction(std::shared_ptr mountingCoordinator, bool mountSynchronously) = 0; - public virtual void uiManagerDidSendAccessibilityEvent(const std::shared_ptr& shadowNode, const std::string& eventType) = 0; - public virtual void uiManagerDidSetIsJSResponder(const std::shared_ptr& shadowNode, bool isJSResponder, bool blockNativeResponder) = 0; - public virtual void uiManagerDidSetViewSnapshot(facebook::react::Tag sourceTag, facebook::react::Tag targetTag, facebook::react::SurfaceId surfaceId) = 0; - public virtual void uiManagerDidStartSurface(const facebook::react::ShadowTree& shadowTree) = 0; - public virtual void uiManagerDidUpdateShadowTree(const std::unordered_map& tagToProps) = 0; - public virtual void uiManagerShouldAddEventListener(std::shared_ptr listener) = 0; - public virtual void uiManagerShouldAddOnSurfaceStartCallback(facebook::react::UIManagerDelegate::OnSurfaceStartCallback&& callback) = 0; - public virtual void uiManagerShouldRemoveEventListener(const std::shared_ptr& listener) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateAnimatedProps(const std::unordered_map& updates) = 0; - public virtual void uiManagerShouldSynchronouslyUpdateViewOnUIThread(facebook::react::Tag tag, const folly::dynamic& props) = 0; - public virtual ~UIManagerDelegate() noexcept = default; -} - -class facebook::react::UIManagerMountHook { - public virtual void shadowTreeDidMount(const facebook::react::RootShadowNode::Shared& rootShadowNode, facebook::react::HighResTimeStamp mountTime) noexcept = 0; - public virtual void shadowTreeDidUnmount(facebook::react::SurfaceId, facebook::react::HighResTimeStamp) noexcept; - public virtual ~UIManagerMountHook() noexcept = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegate { - public virtual void runAnimationFrame() = 0; - public virtual ~UIManagerNativeAnimatedDelegate() = default; -} - -class facebook::react::UIManagerNativeAnimatedDelegateImpl : public facebook::react::UIManagerNativeAnimatedDelegate { - public UIManagerNativeAnimatedDelegateImpl(std::weak_ptr manager); - public virtual void runAnimationFrame() override; -} - -class facebook::react::UIManagerViewTransitionDelegate { - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo); - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag) const; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className); - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name); - public virtual void createViewTransitionInstance(const std::string&, facebook::react::Tag); - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode); - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback); - public virtual void startViewTransitionEnd(); - public virtual void startViewTransitionReadyFinished(); - public virtual void suspendOnActiveViewTransition(); - public virtual void transitionAnimationFinished(int animationId); - public virtual void waitForTransitionAnimation(int animationId); - public virtual ~UIManagerViewTransitionDelegate() = default; -} - -struct facebook::react::UIManagerViewTransitionDelegate::ViewTransitionInstance { - public Float height; - public Float width; - public Float x; - public Float y; - public facebook::react::Tag nativeTag; -} - -class facebook::react::UnimplementedViewComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - public UnimplementedViewComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); - public virtual facebook::react::ComponentHandle getComponentHandle() const override; - public virtual facebook::react::ComponentName getComponentName() const override; - public virtual facebook::react::Props::Shared cloneProps(const facebook::react::PropsParserContext& context, const facebook::react::Props::Shared& props, facebook::react::RawProps rawProps) const override; -} - -class facebook::react::UnimplementedViewProps : public facebook::react::HostPlatformViewProps { - public facebook::react::ComponentName getComponentName() const; - public void setComponentName(facebook::react::ComponentName componentName); -} - -class facebook::react::ValueAnimatedNode : public facebook::react::AnimatedNode { - protected bool isColorValue_; - public ValueAnimatedNode(facebook::react::Tag tag, const folly::dynamic& config, facebook::react::NativeAnimatedNodesManager& manager); - public bool getIsColorValue() const noexcept; - public bool setOffset(double offset) noexcept; - public bool setRawValue(double value) noexcept; - public double getOffset() const noexcept; - public double getRawValue() const noexcept; - public double getValue() const noexcept; - public void extractOffset() noexcept; - public void flattenOffset() noexcept; - public void setValueListener(facebook::react::ValueListenerCallback&& callback) noexcept; -} - class facebook::react::ValueFactoryEventPayload : public facebook::react::EventPayload { public ValueFactoryEventPayload(facebook::react::ValueFactory factory); public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; @@ -3936,54 +1230,6 @@ class facebook::react::ViewShadowNode : public facebook::react::ConcreteViewShad public ViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); } -class facebook::react::ViewTransitionModule : public facebook::react::UIManagerViewTransitionDelegate, public facebook::react::UIManagerCommitHook, public facebook::react::MountingOverrideDelegate { - public virtual bool shouldOverridePullTransaction() const override; - public virtual facebook::react::RootShadowNode::Unshared shadowTreeWillCommit(const facebook::react::ShadowTree& shadowTree, const facebook::react::RootShadowNode::Shared& oldRootShadowNode, const facebook::react::RootShadowNode::Unshared& newRootShadowNode, const facebook::react::ShadowTreeCommitOptions& commitOptions) noexcept override; - public virtual std::optional pullTransaction(facebook::react::SurfaceId surfaceId, facebook::react::MountingTransaction::Number number, const facebook::react::TransactionTelemetry& telemetry, facebook::react::ShadowViewMutationList mutations) const override; - public virtual std::optional getViewTransitionInstance(const std::string& name, const std::string& pseudo) override; - public virtual std::shared_ptr findPseudoElementShadowNodeByTag(facebook::react::Tag tag) const override; - public virtual void applyViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name, const std::string& className) override; - public virtual void cancelViewTransitionName(const facebook::react::ShadowNode& shadowNode, const std::string& name) override; - public virtual void commitHookWasRegistered(const facebook::react::UIManager&) noexcept override; - public virtual void commitHookWasUnregistered(const facebook::react::UIManager&) noexcept override; - public virtual void createViewTransitionInstance(const std::string& name, facebook::react::Tag pseudoElementTag) override; - public virtual void restoreViewTransitionName(const facebook::react::ShadowNode& shadowNode) override; - public virtual void startViewTransition(std::function mutationCallback, std::function onReadyCallback, std::function onCompleteCallback) override; - public virtual void startViewTransitionEnd() override; - public virtual void startViewTransitionReadyFinished() override; - public virtual void suspendOnActiveViewTransition() override; - public virtual void transitionAnimationFinished(int animationId) override; - public virtual void waitForTransitionAnimation(int animationId) override; - public void initialize(facebook::react::UIManager* uiManager, std::weak_ptr weakThis); - public ~ViewTransitionModule() override; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameView { - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; - public facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics layoutMetrics; - public uint32_t transitionId; -} - -struct facebook::react::ViewTransitionModule::AnimationKeyFrameViewLayoutMetrics { - public Float pointScaleFactor; - public facebook::react::Point originFromRoot; - public facebook::react::Size size; -} - -class facebook::react::VirtualViewShadowNode : public facebook::react::ConcreteViewShadowNode { - public VirtualViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public VirtualViewShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); -} - -class facebook::react::WeakFamilyRegistry { - public facebook::react::WeakFamilyRegistry::WeakFamilies weakFamiliesForSurfaceId(facebook::react::SurfaceId surfaceId) const; - public using WeakFamilies = std::vector; - public void add(const facebook::react::ShadowNodeFamily::Shared& shadowNodeFamily) const; - public void removeFamiliesWithSurfaceId(facebook::react::SurfaceId surfaceId) const; -} - class facebook::react::YogaLayoutableShadowNode : public facebook::react::LayoutableShadowNode { protected facebook::yoga::Config yogaConfig_; protected mutable facebook::yoga::Node yogaNode_; @@ -4102,54 +1348,6 @@ enum facebook::react::AccessibilityTraits : uint32_t { UpdatesFrequently, } -enum facebook::react::AnimatedNodeType { - Addition, - Color, - Diffclamp, - Division, - Interpolation, - Modulus, - Multiplication, - Object, - Props, - Round, - Style, - Subtraction, - Tracking, - Transform, - Value, -} - -enum facebook::react::AnimationConfigurationType { - Create, - Delete, - Update, -} - -enum facebook::react::AnimationDriverType { - Decay, - Frames, - Spring, -} - -enum facebook::react::AnimationProperty { - NotApplicable, - Opacity, - ScaleX, - ScaleXY, - ScaleY, -} - -enum facebook::react::AnimationType { - EaseIn, - EaseInEaseOut, - EaseOut, - Keyboard, - Linear, - None, - Spring, -} - enum facebook::react::BackfaceVisibility : uint8_t { Auto, Hidden, @@ -4199,294 +1397,11 @@ enum facebook::react::BorderStyle : uint8_t { Solid, } -enum facebook::react::CSSAngleUnit : uint8_t { - Deg, - Grad, - Rad, - Turn, -} - -enum facebook::react::CSSDelimiter { - Comma, - CommaOrWhitespace, - None, - OptionalWhitespace, - Solidus, - SolidusOrWhitespace, - Whitespace, -} - -enum facebook::react::CSSFontVariant : std::underlying_type_t { - CommonLigatures, - Contextual, - DiscretionaryLigatures, - HistoricalLigatures, - LiningNums, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::CSSGradientAtKeyword : std::underlying_type_t { - At, -} - -enum facebook::react::CSSGradientDirectionKeyword : std::underlying_type_t { - Bottom, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientPositionKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSGradientToKeyword : std::underlying_type_t { - To, -} - -enum facebook::react::CSSInsetShadowKeyword : std::underlying_type_t { - Inset, -} - -enum facebook::react::CSSKeyword : uint8_t { - Absolute, - At, - Auto, - Baseline, - Block, - Bottom, - Center, - Clip, - Column, - ColumnReverse, - CommonLigatures, - Content, - Contents, - Contextual, - Dashed, - DiscretionaryLigatures, - Dotted, - Double, - End, - Fixed, - Flex, - FlexEnd, - FlexStart, - Grid, - Groove, - Hidden, - HistoricalLigatures, - Inherit, - Initial, - Inline, - InlineBlock, - InlineFlex, - InlineGrid, - Inset, - Left, - LiningNums, - Ltr, - MaxContent, - Medium, - MinContent, - NoCommonLigatures, - NoContextual, - NoDiscretionaryLigatures, - NoHistoricalLigatures, - NoWrap, - None, - Normal, - OldstyleNums, - Outset, - ProportionalNums, - Relative, - Ridge, - Right, - Row, - RowReverse, - Rtl, - Scroll, - SmallCaps, - Solid, - SpaceAround, - SpaceBetween, - SpaceEvenly, - Start, - Static, - Sticky, - Stretch, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, - Thick, - Thin, - To, - Top, - Unset, - Visible, - Wrap, - WrapReverse, -} - -enum facebook::react::CSSLengthUnit : uint8_t { - Cap, - Ch, - Cm, - Dvb, - Dvh, - Dvi, - Dvmax, - Dvmin, - Dvw, - Em, - Ex, - Ic, - In, - Lh, - Lvb, - Lvh, - Lvi, - Lvmax, - Lvmin, - Lvw, - Mm, - Pc, - Pt, - Px, - Q, - Rcap, - Rch, - Rem, - Rex, - Ric, - Rlh, - Svb, - Svh, - Svi, - Svmax, - Svmin, - Svw, - Vb, - Vh, - Vi, - Vmax, - Vmin, - Vw, -} - -enum facebook::react::CSSLinearGradientDirectionKeyword : uint8_t { - ToBottomLeft, - ToBottomRight, - ToTopLeft, - ToTopRight, -} - -enum facebook::react::CSSRadialGradientShape : uint8_t { - Circle, - Ellipse, -} - -enum facebook::react::CSSRadialGradientSizeKeyword : uint8_t { - ClosestCorner, - ClosestSide, - FarthestCorner, - FarthestSide, -} - -enum facebook::react::CSSTokenType { - CloseCurly, - CloseParen, - CloseSquare, - Comma, - Delim, - Dimension, - EndOfFile, - Function, - Hash, - Ident, - Number, - OpenCurly, - OpenParen, - OpenSquare, - Percentage, - WhiteSpace, -} - -enum facebook::react::CSSTransformOriginKeyword : std::underlying_type_t { - Bottom, - Center, - Left, - Right, - Top, -} - -enum facebook::react::CSSWideKeyword : std::underlying_type_t { - Inherit, - Initial, - Unset, -} - enum facebook::react::ColorSpace { DisplayP3, sRGB, } -enum facebook::react::ContentInsetAdjustmentBehavior { - Always, - Automatic, - Never, - ScrollableAxes, -} - enum facebook::react::Cursor : uint8_t { Alias, AllScroll, @@ -4539,27 +1454,6 @@ enum facebook::react::DisplayType { None, } -enum facebook::react::DynamicTypeRamp : uint8_t { - Body, - Callout, - Caption1, - Caption2, - Footnote, - Headline, - LargeTitle, - Subheadline, - Title1, - Title2, - Title3, -} - -enum facebook::react::EllipsizeMode { - Clip, - Head, - Middle, - Tail, -} - enum facebook::react::EventPayloadType { PointerEvent, ScrollEvent, @@ -4579,63 +1473,6 @@ enum facebook::react::FilterType { Sepia, } -enum facebook::react::FontStyle : uint8_t { - Italic, - Normal, - Oblique, -} - -enum facebook::react::FontVariant : int { - Default, - LiningNums, - OldstyleNums, - ProportionalNums, - SmallCaps, - StylisticEight, - StylisticEighteen, - StylisticEleven, - StylisticFifteen, - StylisticFive, - StylisticFour, - StylisticFourteen, - StylisticNine, - StylisticNineteen, - StylisticOne, - StylisticSeven, - StylisticSeventeen, - StylisticSix, - StylisticSixteen, - StylisticTen, - StylisticThirteen, - StylisticThree, - StylisticTwelve, - StylisticTwenty, - StylisticTwo, - TabularNums, -} - -enum facebook::react::FontWeight : uint16_t { - Black, - Bold, - Demibold, - Heavy, - Light, - Medium, - Regular, - Semibold, - Thin, - UltraLight, - Weight100, - Weight200, - Weight300, - Weight400, - Weight500, - Weight600, - Weight700, - Weight800, - Weight900, -} - enum facebook::react::GradientDirectionType { Angle, Keyword, @@ -4648,12 +1485,6 @@ enum facebook::react::GradientKeyword : uint8_t { ToTopRight, } -enum facebook::react::HyphenationFrequency { - Full, - None, - Normal, -} - enum facebook::react::ImageResizeMode : int8_t { Center, Contain, @@ -4686,22 +1517,6 @@ enum facebook::react::LayoutDirection { Undefined, } -enum facebook::react::LineBreakMode : uint8_t { - Char, - Clip, - Head, - Middle, - Tail, - Word, -} - -enum facebook::react::LineBreakStrategy : uint8_t { - HangulWordPriority, - None, - PushOut, - Standard, -} - enum facebook::react::NullValueStrategy { Ignore, Override, @@ -4713,15 +1528,6 @@ enum facebook::react::OutlineStyle : uint8_t { Solid, } -enum facebook::react::PerformanceEntryType { - EVENT, - LONGTASK, - MARK, - MEASURE, - RESOURCE, - _NEXT, -} - enum facebook::react::PointerEventsMode : uint8_t { Auto, BoxNone, @@ -4735,61 +1541,6 @@ enum facebook::react::PositionType { Static, } -enum facebook::react::PropName { - ALIGN_CONTENT, - ALIGN_ITEMS, - ALIGN_SELF, - ASPECT_RATIO, - BACKFACE_VISIBILITY, - BACKGROUND_COLOR, - BORDER_COLOR, - BORDER_CURVES, - BORDER_RADII, - BORDER_STYLES, - BORDER_WIDTH, - BOX_SHADOW, - BOX_SIZING, - COLUMN_GAP, - CURSOR, - DIRECTION, - DISPLAY, - FILTER, - FLEX, - FLEX_BASIS, - FLEX_DIRECTION, - FLEX_GROW, - FLEX_SHRINK, - FLEX_WRAP, - HEIGHT, - ISOLATION, - JUSTIFY_CONTENT, - MARGIN, - MAX_HEIGHT, - MAX_WIDTH, - MIN_HEIGHT, - MIN_WIDTH, - MIX_BLEND_MODE, - OPACITY, - OUTLINE_COLOR, - OUTLINE_OFFSET, - OUTLINE_STYLE, - OUTLINE_WIDTH, - PADDING, - POINTER_EVENTS, - POSITION, - POSITION_TYPE, - ROW_GAP, - SHADOW_COLOR, - SHADOW_OFFSET, - SHADOW_OPACITY, - SHADOW_RADIUS, - STYLE_OVERFLOW, - TRANSFORM, - TRANSFORM_ORIGIN, - WIDTH, - Z_INDEX, -} - enum facebook::react::RadialGradientShape { Circle, Ellipse, @@ -4802,12 +1553,6 @@ enum facebook::react::ReactEventPriority { Idle, } -enum facebook::react::ResizeObserverBoxOptions { - BorderBox, - ContentBox, - DevicePixelContentBox, -} - enum facebook::react::Role : uint8_t { Alert, Alertdialog, @@ -4889,107 +1634,6 @@ enum facebook::react::ScriptTag { String, } -enum facebook::react::ScrollViewIndicatorStyle { - Black, - Default, - White, -} - -enum facebook::react::ScrollViewKeyboardDismissMode { - Interactive, - None, - OnDrag, -} - -enum facebook::react::ScrollViewSnapToAlignment { - Center, - End, - Start, -} - -enum facebook::react::ShadowTreeCommitMode { - Normal, - Suspended, -} - -enum facebook::react::ShadowTreeCommitSource { - AnimationEndSync, - React, - ReactRevisionMerge, - Unknown, -} - -enum facebook::react::ShadowTreeCommitStatus { - Cancelled, - Failed, - Succeeded, -} - -enum facebook::react::SubmitBehavior { - BlurAndSubmit, - Default, - Newline, - Submit, -} - -enum facebook::react::TextAlignment : uint8_t { - Center, - End, - Justified, - Left, - Natural, - Right, - Start, -} - -enum facebook::react::TextAlignmentVertical { - Auto, - Bottom, - Center, - Top, -} - -enum facebook::react::TextBreakStrategy { - Balanced, - HighQuality, - Simple, -} - -enum facebook::react::TextDecorationLineType : uint8_t { - None, - Strikethrough, - Underline, - UnderlineStrikethrough, -} - -enum facebook::react::TextDecorationStyle : uint8_t { - Dashed, - Dotted, - Double, - Solid, - Wavy, -} - -enum facebook::react::TextTransform : uint8_t { - Capitalize, - Lowercase, - None, - Unset, - Uppercase, -} - -enum facebook::react::TextWidthMode { - Auto, - LongestLine, -} - -enum facebook::react::TimerSource { - RequestAnimationFrame, - SetInterval, - SetTimeout, - Unknown, -} - enum facebook::react::TransformOperationType : uint8_t { Arbitrary, Identity, @@ -5018,18 +1662,6 @@ enum facebook::react::UnitType { Undefined, } -enum facebook::react::WritingDirection : uint8_t { - LeftToRight, - Natural, - RightToLeft, -} - -struct facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public std::string name; -} - struct facebook::react::AccessibilityAction { public std::optional label; public std::string name; @@ -5061,123 +1693,13 @@ struct facebook::react::AccessibilityValue { public std::optional text; } -struct facebook::react::ActivePointer { - public bool shouldLeaveWhenReleased; - public facebook::react::PointerEvent event; -} - -struct facebook::react::AnimatedPropBase { - public AnimatedPropBase(facebook::react::PropName propName); - public facebook::react::PropName propName; - public virtual ~AnimatedPropBase() = default; -} - -struct facebook::react::AnimatedProps { - public std::unique_ptr rawProps; - public std::vector> props; -} - -struct facebook::react::AnimatedPropsBuilder { - public facebook::react::AnimatedProps get(); - public std::unique_ptr rawProps; - public std::vector> props; - public void setAlignContent(facebook::yoga::Align value); - public void setAlignItems(facebook::yoga::Align value); - public void setAlignSelf(facebook::yoga::Align value); - public void setAspectRatio(facebook::yoga::FloatOptional value); - public void setBackfaceVisibility(facebook::react::BackfaceVisibility value); - public void setBackgroundColor(facebook::react::SharedColor value); - public void setBorderColor(facebook::react::CascadedBorderColors& value); - public void setBorderCurves(facebook::react::CascadedBorderCurves& value); - public void setBorderRadii(facebook::react::CascadedBorderRadii& value); - public void setBorderStyles(facebook::react::CascadedBorderStyles& value); - public void setBorderWidth(facebook::react::CascadedRectangleEdges& value); - public void setBoxShadow(const std::vector& value); - public void setBoxSizing(facebook::yoga::BoxSizing value); - public void setColumnGap(facebook::yoga::Style::Length value); - public void setCursor(facebook::react::Cursor value); - public void setDirection(facebook::yoga::Direction value); - public void setDisplay(facebook::yoga::Display value); - public void setFilter(const std::vector& value); - public void setFlex(facebook::yoga::FloatOptional value); - public void setFlexBasis(facebook::yoga::Style::SizeLength value); - public void setFlexDirection(facebook::yoga::FlexDirection value); - public void setFlexGrow(facebook::yoga::FloatOptional value); - public void setFlexShrink(facebook::yoga::FloatOptional value); - public void setFlexWrap(facebook::yoga::Wrap value); - public void setHeight(facebook::yoga::Style::SizeLength value); - public void setIsolation(facebook::react::Isolation value); - public void setJustifyContent(facebook::yoga::Justify value); - public void setMargin(facebook::react::CascadedRectangleEdges& value); - public void setMaxHeight(facebook::yoga::Style::SizeLength value); - public void setMaxWidth(facebook::yoga::Style::SizeLength value); - public void setMinHeight(facebook::yoga::Style::SizeLength value); - public void setMinWidth(facebook::yoga::Style::SizeLength value); - public void setMixBlendMode(facebook::react::BlendMode value); - public void setOpacity(Float value); - public void setOutlineColor(facebook::react::SharedColor value); - public void setOutlineOffset(Float value); - public void setOutlineStyle(facebook::react::OutlineStyle value); - public void setOutlineWidth(Float value); - public void setOverflow(facebook::yoga::Overflow value); - public void setPadding(facebook::react::CascadedRectangleEdges& value); - public void setPointerEvents(facebook::react::PointerEventsMode value); - public void setPosition(facebook::react::CascadedRectangleEdges& value); - public void setPositionType(facebook::yoga::PositionType value); - public void setRowGap(facebook::yoga::Style::Length value); - public void setShadowColor(facebook::react::SharedColor value); - public void setShadowOffset(facebook::react::Size value); - public void setShadowOpacity(Float value); - public void setShadowRadius(Float value); - public void setTransform(const facebook::react::Transform& t); - public void setTransformOrigin(const facebook::react::TransformOrigin& value); - public void setWidth(facebook::yoga::Style::SizeLength value); - public void setZIndex(std::optional value); - public void storeDynamic(folly::dynamic& d); - public void storeJSI(facebook::jsi::Runtime& runtime, facebook::jsi::Value& value); -} - -struct facebook::react::AnimationConfig { - public Float initialVelocity; - public Float springDamping; - public double delay; - public double duration; - public facebook::react::AnimationProperty animationProperty; - public facebook::react::AnimationType animationType; -} - -struct facebook::react::AnimationKeyFrame { - public bool generateFinalSyntheticMutations; - public bool invalidated; - public double initialProgress; - public facebook::react::AnimationConfigurationType type; - public facebook::react::ShadowView viewEnd; - public facebook::react::ShadowView viewPrev; - public facebook::react::ShadowView viewStart; - public facebook::react::Tag parentTag; - public facebook::react::Tag tag; - public std::vector finalMutationsForKeyFrame; -} - -struct facebook::react::AnimationMutation { - public bool hasLayoutUpdates; - public facebook::react::AnimatedProps props; - public facebook::react::Tag tag; - public std::shared_ptr family; -} - -struct facebook::react::AnimationMutations { - public std::set asyncFlushSurfaces; - public std::vector batch; -} - -struct facebook::react::BackgroundPosition { - public BackgroundPosition(); - public bool operator==(const facebook::react::BackgroundPosition& other) const = default; - public std::optional bottom; - public std::optional left; - public std::optional right; - public std::optional top; +struct facebook::react::BackgroundPosition { + public BackgroundPosition(); + public bool operator==(const facebook::react::BackgroundPosition& other) const = default; + public std::optional bottom; + public std::optional left; + public std::optional right; + public std::optional top; } struct facebook::react::BackgroundRepeat { @@ -5266,13 +1788,6 @@ struct facebook::react::Bridging { public static void fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value&); } -struct facebook::react::BufferEvent { - public std::string name; - public std::string track; - public uint64_t end; - public uint64_t start; -} - struct facebook::react::BundleHeader { public BundleHeader(); public facebook::react::Magic32 magic32; @@ -5280,286 +1795,6 @@ struct facebook::react::BundleHeader { public uint64_t magic64; } -struct facebook::react::CSSAngle { - public constexpr bool operator==(const facebook::react::CSSAngle& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSBlurFilter { - public constexpr bool operator==(const facebook::react::CSSBlurFilter& rhs) const = default; - public facebook::react::CSSLength amount; -} - -struct facebook::react::CSSBrightnessFilter { - public constexpr bool operator==(const facebook::react::CSSBrightnessFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSColor { - public constexpr bool operator==(const facebook::react::CSSColor& rhs) const = default; - public static constexpr facebook::react::CSSColor black(); - public uint8_t a; - public uint8_t b; - public uint8_t g; - public uint8_t r; -} - -struct facebook::react::CSSColorHint { - public bool operator==(const facebook::react::CSSColorHint& rhs) const = default; - public std::variant position; -} - -struct facebook::react::CSSColorStop { - public bool operator==(const facebook::react::CSSColorStop& rhs) const; - public facebook::react::CSSColor color; - public std::optional> endPosition; - public std::optional> startPosition; -} - -struct facebook::react::CSSContrastFilter { - public constexpr bool operator==(const facebook::react::CSSContrastFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSDropShadowFilter { - public constexpr bool operator==(const facebook::react::CSSDropShadowFilter& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength standardDeviation; -} - -struct facebook::react::CSSFunctionBlock { - public std::string_view name; -} - -struct facebook::react::CSSGrayscaleFilter { - public constexpr bool operator==(const facebook::react::CSSGrayscaleFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSHueRotateFilter { - public constexpr bool operator==(const facebook::react::CSSHueRotateFilter& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSInvertFilter { - public constexpr bool operator==(const facebook::react::CSSInvertFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSLength { - public constexpr bool operator==(const facebook::react::CSSLength& rhs) const = default; - public facebook::react::CSSLengthUnit unit; - public float value; -} - -struct facebook::react::CSSLinearGradientDirection { - public bool operator==(const facebook::react::CSSLinearGradientDirection& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSLinearGradientFunction { - public bool operator==(const facebook::react::CSSLinearGradientFunction& rhs) const = default; - public static std::pair>, int> parseGradientColorStopsAndHints(facebook::react::CSSValueParser& parser); - public std::optional direction; - public std::vector> items; -} - -struct facebook::react::CSSMatrix { - public constexpr bool operator==(const facebook::react::CSSMatrix& rhs) const = default; - public std::array values; -} - -struct facebook::react::CSSNumber { - public constexpr bool operator==(const facebook::react::CSSNumber& rhs) const = default; - public float value; -} - -struct facebook::react::CSSOpacityFilter { - public constexpr bool operator==(const facebook::react::CSSOpacityFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSPercentage { - public constexpr bool operator==(const facebook::react::CSSPercentage& rhs) const = default; - public float value; -} - -struct facebook::react::CSSPerspective { - public constexpr bool operator==(const facebook::react::CSSPerspective& rhs) const = default; - public facebook::react::CSSLength length; -} - -struct facebook::react::CSSRadialGradientExplicitSize { - public bool operator==(const facebook::react::CSSRadialGradientExplicitSize& rhs) const = default; - public std::variant sizeX; - public std::variant sizeY; -} - -struct facebook::react::CSSRadialGradientFunction { - public bool operator==(const facebook::react::CSSRadialGradientFunction& rhs) const = default; - public std::optional position; - public std::optional shape; - public std::optional size; - public std::vector> items; -} - -struct facebook::react::CSSRadialGradientPosition { - public bool operator==(const facebook::react::CSSRadialGradientPosition& rhs) const = default; - public std::optional> bottom; - public std::optional> left; - public std::optional> right; - public std::optional> top; -} - -struct facebook::react::CSSRatio { - public constexpr bool isDegenerate() const; - public constexpr bool operator==(const facebook::react::CSSRatio& rhs) const = default; - public float denominator; - public float numerator; -} - -struct facebook::react::CSSRotate { - public constexpr bool operator==(const facebook::react::CSSRotate& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateX { - public constexpr bool operator==(const facebook::react::CSSRotateX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateY { - public constexpr bool operator==(const facebook::react::CSSRotateY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSRotateZ { - public constexpr bool operator==(const facebook::react::CSSRotateZ& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSaturateFilter { - public constexpr bool operator==(const facebook::react::CSSSaturateFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSScale { - public constexpr bool operator==(const facebook::react::CSSScale& rhs) const = default; - public float x; - public float y; -} - -struct facebook::react::CSSScaleX { - public constexpr bool operator==(const facebook::react::CSSScaleX& rhs) const = default; - public float value; -} - -struct facebook::react::CSSScaleY { - public constexpr bool operator==(const facebook::react::CSSScaleY& rhs) const = default; - public float value; -} - -struct facebook::react::CSSSepiaFilter { - public constexpr bool operator==(const facebook::react::CSSSepiaFilter& rhs) const = default; - public float amount; -} - -struct facebook::react::CSSShadow { - public bool inset; - public constexpr bool operator==(const facebook::react::CSSShadow& rhs) const = default; - public facebook::react::CSSColor color; - public facebook::react::CSSLength blurRadius; - public facebook::react::CSSLength offsetX; - public facebook::react::CSSLength offsetY; - public facebook::react::CSSLength spreadDistance; -} - -struct facebook::react::CSSSimpleBlock { - public facebook::react::CSSTokenType openBracketType; -} - -struct facebook::react::CSSSkewX { - public constexpr bool operator==(const facebook::react::CSSSkewX& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSSkewY { - public constexpr bool operator==(const facebook::react::CSSSkewY& rhs) const = default; - public float degrees; -} - -struct facebook::react::CSSTransformOrigin { - public constexpr bool operator==(const facebook::react::CSSTransformOrigin& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate3D { - public constexpr bool operator==(const facebook::react::CSSTranslate3D& rhs) const = default; - public facebook::react::CSSLength z; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslate { - public constexpr bool operator==(const facebook::react::CSSTranslate& rhs) const = default; - public std::variant x; - public std::variant y; -} - -struct facebook::react::CSSTranslateX { - public constexpr bool operator==(const facebook::react::CSSTranslateX& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSTranslateY { - public constexpr bool operator==(const facebook::react::CSSTranslateY& rhs) const = default; - public std::variant value; -} - -struct facebook::react::CSSZero { - public constexpr bool operator==(const facebook::react::CSSZero& rhs) const = default; -} - -struct facebook::react::CallbackWithId { - public facebook::react::Callback callback; - public facebook::react::CallbackId callbackId; -} - -struct facebook::react::CascadedRectangleCornersNames { - public const char* all; - public const char* bottomEnd; - public const char* bottomLeft; - public const char* bottomRight; - public const char* bottomStart; - public const char* endEnd; - public const char* endStart; - public const char* startEnd; - public const char* startStart; - public const char* topEnd; - public const char* topLeft; - public const char* topRight; - public const char* topStart; -} - -struct facebook::react::CascadedRectangleEdgesNames { - public const char* all; - public const char* block; - public const char* blockEnd; - public const char* blockStart; - public const char* bottom; - public const char* end; - public const char* horizontal; - public const char* left; - public const char* right; - public const char* start; - public const char* top; - public const char* vertical; -} - struct facebook::react::ColorComponents { public facebook::react::ColorSpace colorSpace; public float alpha; @@ -5580,21 +1815,9 @@ struct facebook::react::CornerRadii { public float vertical; } -struct facebook::react::CullingContext { - public bool operator==(const facebook::react::CullingContext& rhs) const = default; - public bool shouldConsiderCulling() const; - public facebook::react::CullingContext adjustCullingContextIfNeeded(const facebook::react::ShadowViewNodePair& pair) const; - public facebook::react::Rect frame; - public facebook::react::Transform transform; -} - struct facebook::react::DebugStringConvertibleOptions { } -struct facebook::react::DefaultTurboModules { - public static std::shared_ptr getTurboModule(const std::string& name, const std::shared_ptr& jsInvoker); -} - struct facebook::react::DropShadowParams { public Float offsetX; public Float offsetY; @@ -5603,11 +1826,6 @@ struct facebook::react::DropShadowParams { public facebook::react::SharedColor color; } -struct facebook::react::DummyTraceSection { - template - public DummyTraceSection(const char* name, ConvertsToStringPiece &&... args); -} - struct facebook::react::DynamicEventPayload : public facebook::react::EventPayload { protected folly::dynamic payload_; public DynamicEventPayload(folly::dynamic&& payload); @@ -5622,12 +1840,6 @@ struct facebook::react::DynamicPointerEvent : public facebook::react::DynamicEve public const std::optional>& getHitPathForEventListener() const; } -struct facebook::react::EventAnimationDriverKey { - public bool operator==(const facebook::react::EventAnimationDriverKey& rhs) const noexcept; - public facebook::react::Tag viewTag; - public std::string eventName; -} - struct facebook::react::EventPayload { public EventPayload() = default; public EventPayload(const facebook::react::EventPayload&) = default; @@ -5646,50 +1858,6 @@ struct facebook::react::FilterFunction { public std::variant parameters; } -struct facebook::react::InspectorData { - public folly::dynamic props; - public int columnNumber; - public int lineNumber; - public int selectedIndex; - public std::string fileName; - public std::vector hierarchy; -} - -struct facebook::react::InstanceCallback { - public virtual void decrementPendingJSCalls(); - public virtual void incrementPendingJSCalls(); - public virtual void onBatchComplete(); - public virtual ~InstanceCallback() = default; -} - -struct facebook::react::IntersectionObserverEntry { - public bool isIntersectingAboveThresholds; - public bool sameShadowNodeFamily(const facebook::react::ShadowNodeFamily& otherShadowNodeFamily) const; - public facebook::react::HighResTimeStamp time; - public facebook::react::IntersectionObserverObserverId intersectionObserverId; - public facebook::react::Rect intersectionRect; - public facebook::react::Rect rootRect; - public facebook::react::Rect targetRect; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; -} - -struct facebook::react::LayoutAnimation { - public bool completed; - public facebook::react::LayoutAnimationCallbackWrapper failureCallback; - public facebook::react::LayoutAnimationCallbackWrapper successCallback; - public facebook::react::LayoutAnimationConfig layoutAnimationConfig; - public facebook::react::SurfaceId surfaceId; - public std::vector keyFrames; - public uint64_t startTime; -} - -struct facebook::react::LayoutAnimationConfig { - public double duration; - public facebook::react::AnimationConfig createConfig; - public facebook::react::AnimationConfig deleteConfig; - public facebook::react::AnimationConfig updateConfig; -} - struct facebook::react::LayoutConformanceProps : public facebook::react::YogaStylableProps { public LayoutConformanceProps() = default; public LayoutConformanceProps(const facebook::react::PropsParserContext& context, const facebook::react::LayoutConformanceProps& sourceProps, const facebook::react::RawProps& rawProps); @@ -5729,19 +1897,6 @@ struct facebook::react::LayoutMetrics { public facebook::react::Rect getPaddingFrame() const; } -struct facebook::react::LineMeasurement { - public Float ascender; - public Float capHeight; - public Float descender; - public Float xHeight; - public LineMeasurement(const folly::dynamic& data); - public LineMeasurement(std::string text, facebook::react::Rect frame, Float descender, Float capHeight, Float ascender, Float xHeight); - public bool operator==(const facebook::react::LineMeasurement& rhs) const; - public facebook::react::Rect frame; - public static Float baseline(const std::vector& lines); - public std::string text; -} - struct facebook::react::LinearGradient { public bool operator==(const facebook::react::LinearGradient& other) const = default; public facebook::react::GradientDirection direction; @@ -5753,110 +1908,6 @@ struct facebook::react::Magic32 { public uint32_t value; } -struct facebook::react::MarginValue { - public Float value; - public bool isPercentage; -} - -struct facebook::react::MeasuredPreparedTextLayout { - public facebook::react::LayoutConstraints layoutConstraints; - public facebook::react::TextMeasurement measurement; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout preparedTextLayout; -} - -struct facebook::react::MethodCall { - public MethodCall(int mod, int meth, folly::dynamic&& args, int cid); - public folly::dynamic arguments; - public int callId; - public int methodId; - public int moduleId; -} - -struct facebook::react::MethodDescriptor { - public MethodDescriptor(std::string n, std::string t); - public std::string name; - public std::string type; -} - -struct facebook::react::ModuleConfig { - public folly::dynamic config; - public size_t index; -} - -struct facebook::react::MutationRecord { - public facebook::react::MutationObserverId mutationObserverId; - public std::shared_ptr targetShadowNode; - public std::vector> addedShadowNodes; - public std::vector> removedShadowNodes; -} - -struct facebook::react::NativePerformanceEntry { - public facebook::react::HighResDuration duration; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional fetchStart; - public std::optional processingEnd; - public std::optional processingStart; - public std::optional requestStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::optional interactionId; - public std::optional decodedBodySize; - public std::optional encodedBodySize; - public std::optional responseStatus; - public std::optional contentType; - public std::string name; -} - -struct facebook::react::PerformanceEntrySorter { - public bool operator()(const facebook::react::PerformanceEntry& lhs, const facebook::react::PerformanceEntry& rhs) const; -} - -struct facebook::react::PerformanceEventTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp processingEnd; - public facebook::react::HighResTimeStamp processingStart; - public facebook::react::HighResTimeStamp taskEndTime; - public facebook::react::PerformanceEntryInteractionId interactionId; - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceLongTaskTiming : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMark : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceMeasure : public facebook::react::AbstractPerformanceEntry { - public static constexpr facebook::react::PerformanceEntryType entryType; -} - -struct facebook::react::PerformanceObserverObserveMultipleOptions { - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceObserverObserveSingleOptions { - public bool buffered; - public facebook::react::HighResDuration durationThreshold; -} - -struct facebook::react::PerformanceResourceTiming : public facebook::react::AbstractPerformanceEntry { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public static constexpr facebook::react::PerformanceEntryType entryType; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseEnd; - public std::optional responseStart; - public std::string contentType; -} - struct facebook::react::Point { public Float x; public Float y; @@ -5895,11 +1946,6 @@ struct facebook::react::PointerEvent : public facebook::react::EventPayload { public virtual facebook::react::EventPayloadType getType() const override; } -struct facebook::react::PointerEventTarget { - public facebook::react::PointerEvent event; - public std::shared_ptr target; -} - struct facebook::react::ProcessedColorStop { public bool operator==(const facebook::react::ProcessedColorStop& other) const = default; public facebook::react::SharedColor color; @@ -5922,12 +1968,6 @@ struct facebook::react::PropsParserContext { public facebook::react::PropsParserContext& operator=(const facebook::react::PropsParserContext&) = delete; } -struct facebook::react::PropsSnapshot { - public std::unique_ptr props; - public std::unique_ptr rawProps; - public std::unordered_set propNames; -} - struct facebook::react::RadialGradient { public bool operator==(const facebook::react::RadialGradient& other) const = default; public facebook::react::RadialGradientPosition position; @@ -5990,13 +2030,6 @@ struct facebook::react::ReactNativeVersionType { public std::string_view Prerelease; } -struct facebook::react::RecoverableError : public std::exception { - public RecoverableError(const std::string& what_); - public virtual const char* what() const noexcept override; - template - public static void runRethrowingAsRecoverable(std::function act); -} - struct facebook::react::Rect { public Float getMaxX() const noexcept; public Float getMaxY() const noexcept; @@ -6014,82 +2047,6 @@ struct facebook::react::Rect { public void unionInPlace(const facebook::react::Rect& rect) noexcept; } -struct facebook::react::RequestInfo { - public std::optional headers; - public std::optional httpBody; - public std::string httpMethod; - public std::string url; -} - -struct facebook::react::ResizeObservationResult { - public bool detached; - public facebook::react::Size observedSize; - public size_t targetDepth; - public std::optional entry; -} - -struct facebook::react::ResizeObserverEntry { - public facebook::react::Rect contentRect; - public facebook::react::ResizeObserverObserverId resizeObserverId; - public facebook::react::ShadowNodeFamily::Shared shadowNodeFamily; - public facebook::react::Size borderBoxSize; - public facebook::react::Size contentBoxSize; - public facebook::react::Size devicePixelContentBoxSize; -} - -struct facebook::react::ResourceTimingData { - public facebook::react::HighResTimeStamp fetchStart; - public facebook::react::HighResTimeStamp requestStart; - public int decodedBodySize; - public int encodedBodySize; - public int responseStatus; - public std::optional connectEnd; - public std::optional connectStart; - public std::optional responseStart; - public std::string contentType; - public std::string url; -} - -struct facebook::react::ResponseInfo { - public std::optional headers; - public std::string url; - public uint16_t statusCode; -} - -struct facebook::react::SchedulerToolbox { - public facebook::react::ComponentRegistryFactory componentRegistryFactory; - public facebook::react::EventBeat::Factory eventBeatFactory; - public facebook::react::RuntimeExecutor runtimeExecutor; - public std::optional bridgelessBindingsExecutor; - public std::shared_ptr contextContainer; - public std::shared_ptr animationChoreographer; - public std::vector> commitHooks; -} - -struct facebook::react::ScrollEndDragEvent : public facebook::react::ScrollEvent { - public ScrollEndDragEvent() = default; - public ScrollEndDragEvent(const facebook::react::ScrollEvent& scrollEvent); - public facebook::react::Point targetContentOffset; - public facebook::react::Point velocity; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; -} - -struct facebook::react::ScrollEvent : public facebook::react::EventPayload { - public Float timestamp; - public Float zoomScale; - public ScrollEvent() = default; - public bool responderIgnoreScroll; - public facebook::react::EdgeInsets contentInset; - public facebook::react::Point contentOffset; - public facebook::react::Size containerSize; - public facebook::react::Size contentSize; - public folly::dynamic asDynamic() const; - public virtual facebook::jsi::Value asJSIValue(facebook::jsi::Runtime& runtime) const override; - public virtual facebook::react::EventPayloadType getType() const override; - public virtual std::optional extractValue(const std::vector&) const override; -} - struct facebook::react::ShadowNodeFamilyFragment { public const facebook::react::SurfaceId surfaceId; public const facebook::react::Tag tag; @@ -6106,82 +2063,12 @@ struct facebook::react::ShadowNodeFragment { public static const std::shared_ptr>>& childrenPlaceholder(); } -struct facebook::react::ShadowNodeListWrapper : public facebook::jsi::NativeState { - public ShadowNodeListWrapper(std::shared_ptr>> shadowNodeList); - public std::shared_ptr>> shadowNodeList; - public ~ShadowNodeListWrapper() override; -} - struct facebook::react::ShadowNodeWrapper : public facebook::jsi::NativeState { public ShadowNodeWrapper(std::shared_ptr shadowNode); public std::shared_ptr shadowNode; public ~ShadowNodeWrapper() override; } -struct facebook::react::ShadowTreeCommitOptions { - public bool enableStateReconciliation; - public bool mountSynchronously; - public facebook::react::ShadowTreeCommitSource source; -} - -struct facebook::react::ShadowView { - public ShadowView() = default; - public ShadowView(const facebook::react::ShadowNode& shadowNode); - public ShadowView(const facebook::react::ShadowView& shadowView) = default; - public ShadowView(facebook::react::ShadowView&& shadowView) noexcept = default; - public bool operator==(const facebook::react::ShadowView& rhs) const; - public facebook::react::ComponentHandle componentHandle; - public facebook::react::ComponentName componentName; - public facebook::react::EventEmitter::Shared eventEmitter; - public facebook::react::LayoutMetrics layoutMetrics; - public facebook::react::Props::Shared props; - public facebook::react::ShadowNodeTraits traits; - public facebook::react::ShadowView& operator=(const facebook::react::ShadowView& other) = default; - public facebook::react::ShadowView& operator=(facebook::react::ShadowView&& other) = default; - public facebook::react::State::Shared state; - public facebook::react::SurfaceId surfaceId; - public facebook::react::Tag tag; -} - -struct facebook::react::ShadowViewMutation { - public ShadowViewMutation() = delete; - public bool mutatedViewIsVirtual() const; - public facebook::react::ShadowView newChildShadowView; - public facebook::react::ShadowView oldChildShadowView; - public facebook::react::ShadowViewMutation::Type type; - public facebook::react::Tag parentTag; - public int index; - public static facebook::react::ShadowViewMutation CreateMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation DeleteMutation(facebook::react::ShadowView shadowView); - public static facebook::react::ShadowViewMutation InsertMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation InsertMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(const facebook::react::ShadowView& parentShadowView, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation RemoveMutation(facebook::react::Tag parentTag, facebook::react::ShadowView childShadowView, int index); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, const facebook::react::ShadowView& parentShadowView); - public static facebook::react::ShadowViewMutation UpdateMutation(facebook::react::ShadowView oldChildShadowView, facebook::react::ShadowView newChildShadowView, facebook::react::Tag parentTag); - public using List = std::vector; -} - -enum facebook::react::ShadowViewMutation::Type : std::uint8_t { - Create, - Delete, - Insert, - Remove, - Update, -} - -struct facebook::react::ShadowViewNodePair { - public bool flattened; - public bool inOtherTree() const; - public bool isConcreteView; - public bool operator==(const facebook::react::ShadowViewNodePair& rhs) const; - public const facebook::react::ShadowNode* shadowNode; - public facebook::react::Point contextOrigin; - public facebook::react::ShadowView shadowView; - public mutable const facebook::react::ShadowViewNodePair* otherTreePair; - public size_t mountIndex; -} - struct facebook::react::Size { public Float height; public Float width; @@ -6193,44 +2080,6 @@ struct facebook::react::StateData { public using Shared = std::shared_ptr; } -struct facebook::react::SurfaceContext { - public std::unordered_map> map; - public std::unordered_map> pendingMap; - public std::unordered_set> families; - public std::unordered_set> pendingFamilies; -} - -struct facebook::react::SystraceSection : public facebook::react::DummyTraceSection { - template - public SystraceSection(const char* name, ConvertsToStringPiece &&... args); -} - -struct facebook::react::Task : public facebook::jsi::NativeState { - public Task(facebook::react::SchedulerPriority priority, facebook::jsi::Function&& callback, facebook::react::HighResTimeStamp expirationTime); - public Task(facebook::react::SchedulerPriority priority, facebook::react::RawCallback&& callback, facebook::react::HighResTimeStamp expirationTime); -} - -struct facebook::react::TextEffectInfo { - public bool operator==(const facebook::react::TextEffectInfo&) const = default; - public folly::dynamic props; - public std::string name; -} - -struct facebook::react::TextLayoutContext { - public Float pointScaleFactor; - public bool operator==(const facebook::react::TextLayoutContext& rhs) const = default; - public facebook::react::SurfaceId surfaceId; -} - -struct facebook::react::TimerCallback { - public TimerCallback(facebook::jsi::Function callback, std::vector args, bool repeat, facebook::react::TimerSource source = facebook::react::TimerSource::Unknown); - public bool repeat; - public const std::vector args_; - public facebook::jsi::Function callback_; - public facebook::react::TimerSource source; - public void invoke(facebook::jsi::Runtime& runtime); -} - struct facebook::react::TouchEvent { public facebook::react::Touches changedTouches; public facebook::react::Touches targetTouches; @@ -6264,12 +2113,6 @@ struct facebook::react::Transform { public std::vector operations; } -struct facebook::react::TransformConfig { - public double value; - public facebook::react::Tag nodeTag; - public std::string property; -} - struct facebook::react::TransformOperation { public bool operator==(const facebook::react::TransformOperation& other) const = default; public facebook::react::TransformOperationType type; @@ -6346,64 +2189,6 @@ enum facebook::react::ViewEvents::Offset : std::size_t { TouchStart, } -template -struct facebook::react::CSSList : public std::vector { -} - -template -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSList { -} - -template ... VisitorsT> -struct facebook::react::CSSComponentValueVisitorDispatcher { - public constexpr ReturnT consumeComponentValue(facebook::react::CSSDelimiter delimiter, const VisitorsT &... visitors); - public constexpr std::optional visitFunction(); - public constexpr std::optional visitFunction(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitPreservedToken(); - public constexpr std::optional visitPreservedToken(const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken); - public constexpr std::optional visitSimpleBlock(facebook::react::CSSTokenType endToken, const facebook::react::CSSComponentValueVisitor auto& visitor, const facebook::react::CSSComponentValueVisitor auto &... rest); - public facebook::react::CSSSyntaxParser& parser; -} - -template -struct facebook::react::CSSList : public std::vector { -} - -template -class facebook::react::CircularBuffer { - public CircularBuffer(size_t maxSize); - public T& operator[](size_t idx); - public bool add(const T& el); - public size_t size() const; - public std::vector getEntries() const; - public std::vector getEntries(std::function predicate) const; - public void clear(); - public void clear(std::function predicate); - public void getEntries(std::vector& res) const; - public void getEntries(std::vector& res, std::function predicate) const; -} - -template -class facebook::react::MoveWrapper { - public MoveWrapper() = default; - public MoveWrapper(T&& t); - public MoveWrapper(const facebook::react::MoveWrapper& other); - public MoveWrapper(facebook::react::MoveWrapper&& other) noexcept; - public T& operator*(); - public T&& move(); - public T* operator->(); - public const T& operator*() const; - public const T* operator->() const; - public facebook::react::MoveWrapper& operator=(const facebook::react::MoveWrapper&) = delete; - public facebook::react::MoveWrapper& operator=(facebook::react::MoveWrapper&&) = delete; -} - template class facebook::react::ConcreteViewShadowNode : public facebook::react::ConcreteShadowNode { public ConcreteViewShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); @@ -6416,20 +2201,6 @@ class facebook::react::ConcreteViewShadowNode : public facebook::react::Concrete public virtual facebook::react::Transform getTransform() const override; } -template -class facebook::react::BaseTextInputShadowNode : public facebook::react::ConcreteViewShadowNode, public facebook::react::BaseTextShadowNode { - protected facebook::react::LayoutConstraints getTextConstraints(const facebook::react::LayoutConstraints& layoutConstraints) const; - protected std::shared_ptr textLayoutManager_; - protected virtual Float baseline(const facebook::react::LayoutContext& layoutContext, facebook::react::Size size) const override; - protected virtual facebook::react::Size measureContent(const facebook::react::LayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const override; - protected virtual void layout(facebook::react::LayoutContext layoutContext) override; - public BaseTextInputShadowNode(const facebook::react::ShadowNode& sourceShadowNode, const facebook::react::ShadowNodeFragment& fragment); - public BaseTextInputShadowNode(const facebook::react::ShadowNodeFragment& fragment, const facebook::react::ShadowNodeFamily::Shared& family, facebook::react::ShadowNodeTraits traits); - public static facebook::react::ShadowNodeTraits BaseTraits(); - public using BaseShadowNode = facebook::react::ConcreteViewShadowNode; - public void setTextLayoutManager(std::shared_ptr textLayoutManager); -} - template class facebook::react::ConcreteShadowNode : public BaseShadowNodeT { protected facebook::react::Props::Shared props_; @@ -6460,17 +2231,6 @@ template struct facebook::react::Bridging : public facebook::react::Bridging { } -template -struct facebook::react::TemplateStringLiteral { - public constexpr TemplateStringLiteral(const char(&str)[N]); - public constexpr operator std::string_view() const; - public std::array value; -} - -template -struct facebook::react::CSSDataTypeParser { -} - template class facebook::react::ConcreteState : public facebook::react::State { public ConcreteState(facebook::react::ConcreteState::SharedData data, const facebook::react::State& previousState); @@ -6488,25 +2248,6 @@ template class facebook::react::SyncCallback { } -template -class facebook::react::SimpleThreadSafeCache { - public SimpleThreadSafeCache(); - public SimpleThreadSafeCache(unsigned long size); - public ValueT get(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; - public std::optional get(const KeyT& key) const; - public std::pair getWithKey(const KeyT& key, facebook::react::CacheGeneratorFunction auto generator) const; -} - -template -class facebook::react::OnScopeExit { - public OnScopeExit(const Lambda&& lambda) noexcept; - public OnScopeExit(const facebook::react::OnScopeExit&) = delete; - public OnScopeExit(facebook::react::OnScopeExit&&) = delete; - public facebook::react::OnScopeExit& operator=(const facebook::react::OnScopeExit&) = delete; - public facebook::react::OnScopeExit& operator=(facebook::react::OnScopeExit&&) = delete; - public ~OnScopeExit() noexcept; -} - template class facebook::react::SyncCallback { public R call(Args... args) const; @@ -6528,14 +2269,7 @@ struct facebook::react::Bridging : public facebook::react::Bridging< } template -class facebook::react::BaseParagraphComponentDescriptor : public facebook::react::ConcreteComponentDescriptor { - protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; - public BaseParagraphComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters); - public virtual facebook::react::ComponentName getComponentName() const override; -} - -template -class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { +class facebook::react::ConcreteComponentDescriptor : public facebook::react::ComponentDescriptor { protected virtual void adopt(facebook::react::ShadowNode& shadowNode) const override; public ConcreteComponentDescriptor(const facebook::react::ComponentDescriptorParameters& parameters, facebook::react::RawPropsParser&& rawPropsParser = {}); public using ConcreteEventEmitter = typename ShadowNodeT::ConcreteEventEmitter; @@ -6557,2188 +2291,283 @@ class facebook::react::ConcreteComponentDescriptor : public facebook::react::Com public virtual void appendChild(const std::shared_ptr& parentShadowNode, const std::shared_ptr& childShadowNode) const override; } -template -class facebook::react::Element { - public Element(); - public facebook::react::Element& children(std::vector children); - public facebook::react::Element& finalize(std::function finalizeCallback); - public facebook::react::Element& props(facebook::react::Element::SharedConcreteProps props); - public facebook::react::Element& props(std::function callback); - public facebook::react::Element& reference(facebook::react::Element::ConcreteUnsharedShadowNode& outShadowNode); - public facebook::react::Element& reference(std::function callback); - public facebook::react::Element& stateData(std::function callback); - public facebook::react::Element& surfaceId(facebook::react::SurfaceId surfaceId); - public facebook::react::Element& tag(facebook::react::Tag tag); - public operator facebook::react::ElementFragment(); - public using ConcreteProps = typename ShadowNodeT::ConcreteProps; - public using ConcreteReferenceCallback = std::function& shadowNode)>; - public using ConcreteShadowNode = ShadowNodeT; - public using ConcreteState = typename ShadowNodeT::ConcreteState; - public using ConcreteStateData = typename ShadowNodeT::ConcreteStateData; - public using ConcreteUnsharedShadowNode = std::shared_ptr; - public using SharedConcreteProps = std::shared_ptr; - public using SharedConcreteState = std::shared_ptr; -} - template struct facebook::react::Bridging { } -template -struct facebook::react::AnimatedProp : public facebook::react::AnimatedPropBase { - public AnimatedProp() = default; - public AnimatedProp(facebook::react::PropName propName, const T& value); - public T value; -} - -template -struct facebook::react::CascadedRectangleCorners { - public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; - public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleCorners::OptionalT all; - public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; - public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; - public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; - public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; - public facebook::react::CascadedRectangleCorners::OptionalT endEnd; - public facebook::react::CascadedRectangleCorners::OptionalT endStart; - public facebook::react::CascadedRectangleCorners::OptionalT startEnd; - public facebook::react::CascadedRectangleCorners::OptionalT startStart; - public facebook::react::CascadedRectangleCorners::OptionalT topEnd; - public facebook::react::CascadedRectangleCorners::OptionalT topLeft; - public facebook::react::CascadedRectangleCorners::OptionalT topRight; - public facebook::react::CascadedRectangleCorners::OptionalT topStart; - public using Counterpart = facebook::react::RectangleCorners; - public using OptionalT = std::optional; -} - -template -struct facebook::react::CascadedRectangleEdges { - public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; - public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; - public facebook::react::CascadedRectangleEdges::OptionalT all; - public facebook::react::CascadedRectangleEdges::OptionalT block; - public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; - public facebook::react::CascadedRectangleEdges::OptionalT blockStart; - public facebook::react::CascadedRectangleEdges::OptionalT bottom; - public facebook::react::CascadedRectangleEdges::OptionalT end; - public facebook::react::CascadedRectangleEdges::OptionalT horizontal; - public facebook::react::CascadedRectangleEdges::OptionalT left; - public facebook::react::CascadedRectangleEdges::OptionalT right; - public facebook::react::CascadedRectangleEdges::OptionalT start; - public facebook::react::CascadedRectangleEdges::OptionalT top; - public facebook::react::CascadedRectangleEdges::OptionalT vertical; - public using Counterpart = facebook::react::RectangleEdges; - public using OptionalT = std::optional; -} - -template -struct facebook::react::RectangleCorners { - public T bottomLeft; - public T bottomRight; - public T topLeft; - public T topRight; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; -} - -template -struct facebook::react::RectangleEdges { - public T bottom; - public T left; - public T right; - public T top; - public bool isUniform() const noexcept; - public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; - public static const facebook::react::RectangleEdges ZERO; -} - -template -class facebook::react::AsyncCallback { - public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); - public void call(Args... args) const noexcept; - public void call(std::function&& callImpl) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; - public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; - public void operator()(Args... args) const noexcept; -} - -template -class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { - public AsyncEventEmitter(); - public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; - public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; - public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; - public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; - public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; - public void emit(Args... value); - public void emit(std::function&& converter); - public ~AsyncEventEmitter() override = default; -} - -template -class facebook::react::SharedFunction { - public SharedFunction(const facebook::react::SharedFunction& other) = default; - public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; - public SharedFunction(std::function&& function = nullptr); - public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; - public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; - public void assign(std::function function) const; - public void operator()(ArgumentT... args) const; -} - -template -class facebook::react::AsyncPromise { - public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); - public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; - public void reject(facebook::react::Error error); - public void resolve(T... value); -} - -template -class facebook::react::EventListenerContainerT { - public bool willDispatchEvent(TArgs... args); - public void addListener(std::shared_ptr> listener); - public void removeListener(const std::shared_ptr>& listener); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); - public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); -} - -struct facebook::react::Bridging { - public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); - public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); -} - -template -struct facebook::react::Bridging> { - public static constexpr size_t kArgumentCount; - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); - public using Func = std::function; - public using IndexSequence = std::index_sequence_for; -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { - public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { - public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); - public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); - template - public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { - public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { -} - -struct facebook::react::Bridging { - public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); -} - -struct facebook::react::Bridging { - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); - public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); - public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); -} - -struct facebook::react::Bridging : public NativeAnimatedTurboModuleEndResultBridging { -} - -struct facebook::react::Bridging { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); -} - -struct facebook::react::Bridging { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); - public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); - public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging { - public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); - public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverEntryBridging { -} - -struct facebook::react::Bridging : public NativeIntersectionObserverNativeIntersectionObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationObserverObserveOptionsBridging { -} - -struct facebook::react::Bridging : public NativeMutationObserverNativeMutationRecordBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModulePartialReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativePerformanceRawPerformanceEntryBridging { -} - -struct facebook::react::Bridging : public NativePerformancePerformanceObserverInitBridging { -} - -struct facebook::react::Bridging : public NativeReactDevToolsRuntimeSettingsModuleReloadAndProfileConfigBridging { -} - -struct facebook::react::Bridging : public NativeIdleCallbacksRequestIdleCallbackOptionsBridging { -} - -struct facebook::react::Bridging { - public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); - public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consume(facebook::react::CSSValueParser& syntaxParser); -} - -struct facebook::react::CSSDataTypeParser { - public static std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSNumberPercentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSFilterSimpleAmountParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSAngleTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consume(facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser : public facebook::react::detail::CSSVariantComponentTransformParser { -} - -struct facebook::react::CSSDataTypeParser { - public static constexpr std::optional consumePreservedToken(const facebook::react::CSSPreservedToken& token); -} - -template -struct facebook::react::CSSDataTypeParser> { - public static std::optional> consume(facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); - public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); - public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { -} - -template -struct facebook::react::Bridging> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); -} - -struct facebook::react::Bridging> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& jsiValue); -} - -template -struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); -} - -template -struct facebook::react::Bridging, std::enable_if_t>> { - public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); - public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); -} - - -bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); -bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); - - -constexpr bool facebook::react::detail::isHexDigit(char c); -constexpr bool facebook::react::detail::isValidHexColor(std::string_view hex); -constexpr float facebook::react::detail::hueToRgb(float p, float q, float t); -constexpr std::optional facebook::react::detail::normalizeNumberComponent(const std::variant& component); -constexpr uint8_t facebook::react::detail::clamp255Component(float f); -constexpr uint8_t facebook::react::detail::clampAlpha(std::optional alpha); -constexpr uint8_t facebook::react::detail::hexToNumeric(std::string_view hex, facebook::react::detail::HexColorType hexType); -float facebook::react::detail::normalizeHue(float hue); -std::optional facebook::react::detail::normalizeHueComponent(const std::variant& component); -std::tuple facebook::react::detail::hslToRgb(float h, float s, float l); -std::tuple facebook::react::detail::hwbToRgb(float h, float w, float b); -template -constexpr bool facebook::react::detail::isLegacyColorFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseLegacyRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseModernRgbFunction(facebook::react::CSSValueParser& parser); -template -constexpr std::optional facebook::react::detail::parseRgbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseHwbFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseLegacyHslFunction(facebook::react::CSSValueParser& parser); -template -std::optional facebook::react::detail::parseModernHslFunction(facebook::react::CSSValueParser& parser); -template -C facebook::react::detail::memberFunctionClass(T C::*); -template -constexpr std::optional facebook::react::detail::normalizeComponent(const std::variant& component, float baseValue); - -class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { - public OwnedBytesBuffer(std::vector bytes) noexcept; - public virtual size_t size() const override; - public virtual uint8_t* data() override; -} - -enum facebook::react::detail::HexColorType { - Long, - Short, -} - -template -struct facebook::react::detail::merge_data_types { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types { -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = typename T::PreparedTextLayout; -} - -template -struct facebook::react::detail::CSSVariantComponentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSAngleTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSFilterSimpleAmountParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::CSSNumberPercentTransformParser { - public static constexpr std::optional consumeFunctionBlock(const facebook::react::CSSFunctionBlock& func, facebook::react::CSSValueParser& parser); -} - -template -struct facebook::react::detail::PreparedTextLayoutT { - public using type = std::nullptr_t; -} - -template -struct facebook::react::detail::is_variant_of_data_types : public std::false_type { -} - -template -class facebook::react::detail::TextLayoutManagerExtended { - public TextLayoutManagerExtended(const TextLayoutManagerT& textLayoutManager); - public facebook::react::LinesMeasurements measureLines(const facebook::react::AttributedStringBox& attributedStringBox, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::Size& size); - public facebook::react::TextMeasurement measurePreparedLayout(const facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout& layout, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public facebook::react::detail::TextLayoutManagerExtended::PreparedTextLayout prepareLayout(const facebook::react::AttributedString& attributedString, const facebook::react::ParagraphAttributes& paragraphAttributes, const facebook::react::TextLayoutContext& layoutContext, const facebook::react::LayoutConstraints& layoutConstraints) const; - public static constexpr bool supportsLineMeasurement(); - public static constexpr bool supportsPreparedTextLayout(); - public using PreparedTextLayout = typename facebook::react::detail::PreparedTextLayoutT::type; -} - -template -struct facebook::react::detail::merge_variant { -} - -template -struct facebook::react::detail::merge_data_types, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_data_types, AlllowedType2T, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - -template -struct facebook::react::detail::merge_variant, RestT...> { - public using type = std::variant; -} - -template -struct facebook::react::detail::merge_data_types> { - public using type = std::variant; -} - -template -struct facebook::react::detail::is_variant_of_data_types> : public std::true_type { -} - -template -struct facebook::react::detail::merge_data_types, std::variant, RestT...> { - public using type = typename facebook::react::detail::merge_data_types, RestT...>::type; -} - - -constexpr std::string_view facebook::react::detail::css::keywords::Absolute; -constexpr std::string_view facebook::react::detail::css::keywords::At; -constexpr std::string_view facebook::react::detail::css::keywords::Auto; -constexpr std::string_view facebook::react::detail::css::keywords::Baseline; -constexpr std::string_view facebook::react::detail::css::keywords::Block; -constexpr std::string_view facebook::react::detail::css::keywords::Bottom; -constexpr std::string_view facebook::react::detail::css::keywords::Center; -constexpr std::string_view facebook::react::detail::css::keywords::Clip; -constexpr std::string_view facebook::react::detail::css::keywords::Column; -constexpr std::string_view facebook::react::detail::css::keywords::ColumnReverse; -constexpr std::string_view facebook::react::detail::css::keywords::CommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Content; -constexpr std::string_view facebook::react::detail::css::keywords::Contents; -constexpr std::string_view facebook::react::detail::css::keywords::Contextual; -constexpr std::string_view facebook::react::detail::css::keywords::Dashed; -constexpr std::string_view facebook::react::detail::css::keywords::DiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Dotted; -constexpr std::string_view facebook::react::detail::css::keywords::Double; -constexpr std::string_view facebook::react::detail::css::keywords::End; -constexpr std::string_view facebook::react::detail::css::keywords::Fixed; -constexpr std::string_view facebook::react::detail::css::keywords::Flex; -constexpr std::string_view facebook::react::detail::css::keywords::FlexEnd; -constexpr std::string_view facebook::react::detail::css::keywords::FlexStart; -constexpr std::string_view facebook::react::detail::css::keywords::Grid; -constexpr std::string_view facebook::react::detail::css::keywords::Groove; -constexpr std::string_view facebook::react::detail::css::keywords::Hidden; -constexpr std::string_view facebook::react::detail::css::keywords::HistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::Inherit; -constexpr std::string_view facebook::react::detail::css::keywords::Initial; -constexpr std::string_view facebook::react::detail::css::keywords::Inline; -constexpr std::string_view facebook::react::detail::css::keywords::InlineBlock; -constexpr std::string_view facebook::react::detail::css::keywords::InlineFlex; -constexpr std::string_view facebook::react::detail::css::keywords::InlineGrid; -constexpr std::string_view facebook::react::detail::css::keywords::Inset; -constexpr std::string_view facebook::react::detail::css::keywords::Left; -constexpr std::string_view facebook::react::detail::css::keywords::LiningNums; -constexpr std::string_view facebook::react::detail::css::keywords::Ltr; -constexpr std::string_view facebook::react::detail::css::keywords::MaxContent; -constexpr std::string_view facebook::react::detail::css::keywords::Medium; -constexpr std::string_view facebook::react::detail::css::keywords::MinContent; -constexpr std::string_view facebook::react::detail::css::keywords::NoCommonLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoContextual; -constexpr std::string_view facebook::react::detail::css::keywords::NoDiscretionaryLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoHistoricalLigatures; -constexpr std::string_view facebook::react::detail::css::keywords::NoWrap; -constexpr std::string_view facebook::react::detail::css::keywords::None; -constexpr std::string_view facebook::react::detail::css::keywords::Normal; -constexpr std::string_view facebook::react::detail::css::keywords::OldstyleNums; -constexpr std::string_view facebook::react::detail::css::keywords::Outset; -constexpr std::string_view facebook::react::detail::css::keywords::ProportionalNums; -constexpr std::string_view facebook::react::detail::css::keywords::Relative; -constexpr std::string_view facebook::react::detail::css::keywords::Ridge; -constexpr std::string_view facebook::react::detail::css::keywords::Right; -constexpr std::string_view facebook::react::detail::css::keywords::Row; -constexpr std::string_view facebook::react::detail::css::keywords::RowReverse; -constexpr std::string_view facebook::react::detail::css::keywords::Rtl; -constexpr std::string_view facebook::react::detail::css::keywords::Scroll; -constexpr std::string_view facebook::react::detail::css::keywords::SmallCaps; -constexpr std::string_view facebook::react::detail::css::keywords::Solid; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceAround; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceBetween; -constexpr std::string_view facebook::react::detail::css::keywords::SpaceEvenly; -constexpr std::string_view facebook::react::detail::css::keywords::Start; -constexpr std::string_view facebook::react::detail::css::keywords::Static; -constexpr std::string_view facebook::react::detail::css::keywords::Sticky; -constexpr std::string_view facebook::react::detail::css::keywords::Stretch; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEight; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEighteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticEleven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFifteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFive; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFour; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticFourteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNine; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticNineteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticOne; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeven; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSeventeen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSix; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticSixteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThirteen; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticThree; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwelve; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwenty; -constexpr std::string_view facebook::react::detail::css::keywords::StylisticTwo; -constexpr std::string_view facebook::react::detail::css::keywords::TabularNums; -constexpr std::string_view facebook::react::detail::css::keywords::Thick; -constexpr std::string_view facebook::react::detail::css::keywords::Thin; -constexpr std::string_view facebook::react::detail::css::keywords::To; -constexpr std::string_view facebook::react::detail::css::keywords::Top; -constexpr std::string_view facebook::react::detail::css::keywords::Unset; -constexpr std::string_view facebook::react::detail::css::keywords::Visible; -constexpr std::string_view facebook::react::detail::css::keywords::Wrap; -constexpr std::string_view facebook::react::detail::css::keywords::WrapReverse; -template -concept facebook::react::detail::css::keywords::hasAbsolute = (CSSKeywordSet && requires() { T::Absolute; }); -template -concept facebook::react::detail::css::keywords::hasAt = (CSSKeywordSet && requires() { T::At; }); -template -concept facebook::react::detail::css::keywords::hasAuto = (CSSKeywordSet && requires() { T::Auto; }); -template -concept facebook::react::detail::css::keywords::hasBaseline = (CSSKeywordSet && requires() { T::Baseline; }); -template -concept facebook::react::detail::css::keywords::hasBlock = (CSSKeywordSet && requires() { T::Block; }); -template -concept facebook::react::detail::css::keywords::hasBottom = (CSSKeywordSet && requires() { T::Bottom; }); -template -concept facebook::react::detail::css::keywords::hasCenter = (CSSKeywordSet && requires() { T::Center; }); -template -concept facebook::react::detail::css::keywords::hasClip = (CSSKeywordSet && requires() { T::Clip; }); -template -concept facebook::react::detail::css::keywords::hasColumn = (CSSKeywordSet && requires() { T::Column; }); -template -concept facebook::react::detail::css::keywords::hasColumnReverse = (CSSKeywordSet && requires() { T::ColumnReverse; }); -template -concept facebook::react::detail::css::keywords::hasCommonLigatures = (CSSKeywordSet && requires() { T::CommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasContent = (CSSKeywordSet && requires() { T::Content; }); -template -concept facebook::react::detail::css::keywords::hasContents = (CSSKeywordSet && requires() { T::Contents; }); -template -concept facebook::react::detail::css::keywords::hasContextual = (CSSKeywordSet && requires() { T::Contextual; }); -template -concept facebook::react::detail::css::keywords::hasDashed = (CSSKeywordSet && requires() { T::Dashed; }); -template -concept facebook::react::detail::css::keywords::hasDiscretionaryLigatures = (CSSKeywordSet && requires() { T::DiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasDotted = (CSSKeywordSet && requires() { T::Dotted; }); -template -concept facebook::react::detail::css::keywords::hasDouble = (CSSKeywordSet && requires() { T::Double; }); -template -concept facebook::react::detail::css::keywords::hasEnd = (CSSKeywordSet && requires() { T::End; }); -template -concept facebook::react::detail::css::keywords::hasFixed = (CSSKeywordSet && requires() { T::Fixed; }); -template -concept facebook::react::detail::css::keywords::hasFlex = (CSSKeywordSet && requires() { T::Flex; }); -template -concept facebook::react::detail::css::keywords::hasFlexEnd = (CSSKeywordSet && requires() { T::FlexEnd; }); -template -concept facebook::react::detail::css::keywords::hasFlexStart = (CSSKeywordSet && requires() { T::FlexStart; }); -template -concept facebook::react::detail::css::keywords::hasGrid = (CSSKeywordSet && requires() { T::Grid; }); -template -concept facebook::react::detail::css::keywords::hasGroove = (CSSKeywordSet && requires() { T::Groove; }); -template -concept facebook::react::detail::css::keywords::hasHidden = (CSSKeywordSet && requires() { T::Hidden; }); -template -concept facebook::react::detail::css::keywords::hasHistoricalLigatures = (CSSKeywordSet && requires() { T::HistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasInherit = (CSSKeywordSet && requires() { T::Inherit; }); -template -concept facebook::react::detail::css::keywords::hasInitial = (CSSKeywordSet && requires() { T::Initial; }); -template -concept facebook::react::detail::css::keywords::hasInline = (CSSKeywordSet && requires() { T::Inline; }); -template -concept facebook::react::detail::css::keywords::hasInlineBlock = (CSSKeywordSet && requires() { T::InlineBlock; }); -template -concept facebook::react::detail::css::keywords::hasInlineFlex = (CSSKeywordSet && requires() { T::InlineFlex; }); -template -concept facebook::react::detail::css::keywords::hasInlineGrid = (CSSKeywordSet && requires() { T::InlineGrid; }); -template -concept facebook::react::detail::css::keywords::hasInset = (CSSKeywordSet && requires() { T::Inset; }); -template -concept facebook::react::detail::css::keywords::hasLeft = (CSSKeywordSet && requires() { T::Left; }); -template -concept facebook::react::detail::css::keywords::hasLiningNums = (CSSKeywordSet && requires() { T::LiningNums; }); -template -concept facebook::react::detail::css::keywords::hasLtr = (CSSKeywordSet && requires() { T::Ltr; }); -template -concept facebook::react::detail::css::keywords::hasMaxContent = (CSSKeywordSet && requires() { T::MaxContent; }); -template -concept facebook::react::detail::css::keywords::hasMedium = (CSSKeywordSet && requires() { T::Medium; }); -template -concept facebook::react::detail::css::keywords::hasMinContent = (CSSKeywordSet && requires() { T::MinContent; }); -template -concept facebook::react::detail::css::keywords::hasNoCommonLigatures = (CSSKeywordSet && requires() { T::NoCommonLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoContextual = (CSSKeywordSet && requires() { T::NoContextual; }); -template -concept facebook::react::detail::css::keywords::hasNoDiscretionaryLigatures = (CSSKeywordSet && requires() { T::NoDiscretionaryLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoHistoricalLigatures = (CSSKeywordSet && requires() { T::NoHistoricalLigatures; }); -template -concept facebook::react::detail::css::keywords::hasNoWrap = (CSSKeywordSet && requires() { T::NoWrap; }); -template -concept facebook::react::detail::css::keywords::hasNone = (CSSKeywordSet && requires() { T::None; }); -template -concept facebook::react::detail::css::keywords::hasNormal = (CSSKeywordSet && requires() { T::Normal; }); -template -concept facebook::react::detail::css::keywords::hasOldstyleNums = (CSSKeywordSet && requires() { T::OldstyleNums; }); -template -concept facebook::react::detail::css::keywords::hasOutset = (CSSKeywordSet && requires() { T::Outset; }); -template -concept facebook::react::detail::css::keywords::hasProportionalNums = (CSSKeywordSet && requires() { T::ProportionalNums; }); -template -concept facebook::react::detail::css::keywords::hasRelative = (CSSKeywordSet && requires() { T::Relative; }); -template -concept facebook::react::detail::css::keywords::hasRidge = (CSSKeywordSet && requires() { T::Ridge; }); -template -concept facebook::react::detail::css::keywords::hasRight = (CSSKeywordSet && requires() { T::Right; }); -template -concept facebook::react::detail::css::keywords::hasRow = (CSSKeywordSet && requires() { T::Row; }); -template -concept facebook::react::detail::css::keywords::hasRowReverse = (CSSKeywordSet && requires() { T::RowReverse; }); -template -concept facebook::react::detail::css::keywords::hasRtl = (CSSKeywordSet && requires() { T::Rtl; }); -template -concept facebook::react::detail::css::keywords::hasScroll = (CSSKeywordSet && requires() { T::Scroll; }); -template -concept facebook::react::detail::css::keywords::hasSmallCaps = (CSSKeywordSet && requires() { T::SmallCaps; }); -template -concept facebook::react::detail::css::keywords::hasSolid = (CSSKeywordSet && requires() { T::Solid; }); -template -concept facebook::react::detail::css::keywords::hasSpaceAround = (CSSKeywordSet && requires() { T::SpaceAround; }); -template -concept facebook::react::detail::css::keywords::hasSpaceBetween = (CSSKeywordSet && requires() { T::SpaceBetween; }); -template -concept facebook::react::detail::css::keywords::hasSpaceEvenly = (CSSKeywordSet && requires() { T::SpaceEvenly; }); -template -concept facebook::react::detail::css::keywords::hasStart = (CSSKeywordSet && requires() { T::Start; }); -template -concept facebook::react::detail::css::keywords::hasStatic = (CSSKeywordSet && requires() { T::Static; }); -template -concept facebook::react::detail::css::keywords::hasSticky = (CSSKeywordSet && requires() { T::Sticky; }); -template -concept facebook::react::detail::css::keywords::hasStretch = (CSSKeywordSet && requires() { T::Stretch; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEight = (CSSKeywordSet && requires() { T::StylisticEight; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEighteen = (CSSKeywordSet && requires() { T::StylisticEighteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticEleven = (CSSKeywordSet && requires() { T::StylisticEleven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFifteen = (CSSKeywordSet && requires() { T::StylisticFifteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFive = (CSSKeywordSet && requires() { T::StylisticFive; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFour = (CSSKeywordSet && requires() { T::StylisticFour; }); -template -concept facebook::react::detail::css::keywords::hasStylisticFourteen = (CSSKeywordSet && requires() { T::StylisticFourteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNine = (CSSKeywordSet && requires() { T::StylisticNine; }); -template -concept facebook::react::detail::css::keywords::hasStylisticNineteen = (CSSKeywordSet && requires() { T::StylisticNineteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticOne = (CSSKeywordSet && requires() { T::StylisticOne; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeven = (CSSKeywordSet && requires() { T::StylisticSeven; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSeventeen = (CSSKeywordSet && requires() { T::StylisticSeventeen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSix = (CSSKeywordSet && requires() { T::StylisticSix; }); -template -concept facebook::react::detail::css::keywords::hasStylisticSixteen = (CSSKeywordSet && requires() { T::StylisticSixteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTen = (CSSKeywordSet && requires() { T::StylisticTen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThirteen = (CSSKeywordSet && requires() { T::StylisticThirteen; }); -template -concept facebook::react::detail::css::keywords::hasStylisticThree = (CSSKeywordSet && requires() { T::StylisticThree; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwelve = (CSSKeywordSet && requires() { T::StylisticTwelve; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwenty = (CSSKeywordSet && requires() { T::StylisticTwenty; }); -template -concept facebook::react::detail::css::keywords::hasStylisticTwo = (CSSKeywordSet && requires() { T::StylisticTwo; }); -template -concept facebook::react::detail::css::keywords::hasTabularNums = (CSSKeywordSet && requires() { T::TabularNums; }); -template -concept facebook::react::detail::css::keywords::hasThick = (CSSKeywordSet && requires() { T::Thick; }); -template -concept facebook::react::detail::css::keywords::hasThin = (CSSKeywordSet && requires() { T::Thin; }); -template -concept facebook::react::detail::css::keywords::hasTo = (CSSKeywordSet && requires() { T::To; }); -template -concept facebook::react::detail::css::keywords::hasTop = (CSSKeywordSet && requires() { T::Top; }); -template -concept facebook::react::detail::css::keywords::hasUnset = (CSSKeywordSet && requires() { T::Unset; }); -template -concept facebook::react::detail::css::keywords::hasVisible = (CSSKeywordSet && requires() { T::Visible; }); -template -concept facebook::react::detail::css::keywords::hasWrap = (CSSKeywordSet && requires() { T::Wrap; }); -template -concept facebook::react::detail::css::keywords::hasWrapReverse = (CSSKeywordSet && requires() { T::WrapReverse; }); - - -constexpr size_t facebook::react::jsinspector_modern::REQUEST_BUFFER_MAX_SIZE_BYTES; -template -using facebook::react::jsinspector_modern::ScopedExecutor = std::function&& callback)>; -typedef std::function facebook::react::jsinspector_modern::FrontendChannel; -typedef std::map facebook::react::jsinspector_modern::Headers; -using facebook::react::jsinspector_modern::ExecutionContextSelectorSet = std::unordered_set; -using facebook::react::jsinspector_modern::IOReadError = const std::string; -using facebook::react::jsinspector_modern::InspectorPage = facebook::react::jsinspector_modern::InspectorPageDescription; -using facebook::react::jsinspector_modern::StreamID = const std::string; -using facebook::react::jsinspector_modern::VoidExecutor = std::function&& callback)>; -bool facebook::react::jsinspector_modern::matchesAny(const facebook::react::jsinspector_modern::ExecutionContextDescription& context, const facebook::react::jsinspector_modern::ExecutionContextSelectorSet& selectors); -facebook::react::jsinspector_modern::IInspector& facebook::react::jsinspector_modern::getInspectorInstance(); -folly::dynamic facebook::react::jsinspector_modern::createHostMetadataPayload(const facebook::react::jsinspector_modern::HostTargetMetadata& metadata); -folly::dynamic facebook::react::jsinspector_modern::targetCapabilitiesToDynamic(const facebook::react::jsinspector_modern::InspectorTargetCapabilities& capabilities); -std::string facebook::react::jsinspector_modern::httpReasonPhrase(uint16_t status); -std::string facebook::react::jsinspector_modern::mimeTypeFromHeaders(const facebook::react::jsinspector_modern::Headers& headers); -std::unique_ptr facebook::react::jsinspector_modern::makeTestInspectorInstance(); -template -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const ChannelsRange& channels, bool isBackgroundTrace); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::ScopedExecutor executor); -template -facebook::react::jsinspector_modern::ScopedExecutor facebook::react::jsinspector_modern::makeScopedExecutor(std::shared_ptr self, facebook::react::jsinspector_modern::VoidExecutor executor); -template -facebook::react::jsinspector_modern::VoidExecutor facebook::react::jsinspector_modern::makeVoidExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); -void facebook::react::jsinspector_modern::emitGlobalStateObserverChange(facebook::jsi::Runtime& runtime, const char* globalName, const char* callbackName, bool value); -void facebook::react::jsinspector_modern::emitNotificationsForTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const facebook::react::jsinspector_modern::FrontendChannel& channel, bool isBackgroundTrace); -void facebook::react::jsinspector_modern::emitTracingStateObserverChange(facebook::jsi::Runtime& runtime, bool isTracing); -void facebook::react::jsinspector_modern::installGlobalStateObserver(facebook::jsi::Runtime& runtime, const char* globalName, const char* statusProperty, const char* callbackName); -void facebook::react::jsinspector_modern::installTracingStateObserver(facebook::jsi::Runtime& runtime); -void facebook::react::jsinspector_modern::truncateToValidUTF8(std::vector& buffer); - -class facebook::react::jsinspector_modern::BoundedRequestBuffer { - public bool put(const std::string& requestId, std::string_view data, bool base64Encoded) noexcept; - public std::shared_ptr get(const std::string& requestId) const; - public void clear(); -} - -struct facebook::react::jsinspector_modern::BoundedRequestBuffer::ResponseBody { - public bool base64Encoded; - public std::string data; -} - -class facebook::react::jsinspector_modern::CallbackLocalConnection : public facebook::react::jsinspector_modern::ILocalConnection { - public CallbackLocalConnection(std::function handler); - public virtual void disconnect() override; - public virtual void sendMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::CallbackRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public CallbackRemoteConnection(std::function handler); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::ConsoleTask { - public ConsoleTask(const facebook::react::jsinspector_modern::ConsoleTask&) = default; - public ConsoleTask(facebook::react::jsinspector_modern::ConsoleTask&&) = default; - public ConsoleTask(std::shared_ptr taskContext); - public facebook::react::jsinspector_modern::ConsoleTask& operator=(const facebook::react::jsinspector_modern::ConsoleTask&) = delete; - public facebook::react::jsinspector_modern::ConsoleTask& operator=(facebook::react::jsinspector_modern::ConsoleTask&&) = delete; - public ~ConsoleTask(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskContext : public std::enable_shared_from_this { - public ConsoleTaskContext(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public ConsoleTaskContext(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::RuntimeTargetDelegate& runtimeTargetDelegate, std::string name); - public ConsoleTaskContext(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(const facebook::react::jsinspector_modern::ConsoleTaskContext&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskContext& operator=(facebook::react::jsinspector_modern::ConsoleTaskContext&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskId id() const; - public std::optional getSerializedStackTrace() const; - public void schedule(); - public ~ConsoleTaskContext(); -} - -class facebook::react::jsinspector_modern::ConsoleTaskId { - public ConsoleTaskId() = default; - public ConsoleTaskId(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public ConsoleTaskId(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public bool operator==(const facebook::react::jsinspector_modern::ConsoleTaskId&) const = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(const facebook::react::jsinspector_modern::ConsoleTaskId&) = default; - public facebook::react::jsinspector_modern::ConsoleTaskId& operator=(facebook::react::jsinspector_modern::ConsoleTaskId&&) = default; - public operator bool() const; - public operator void *() const; - public ~ConsoleTaskId() = default; -} - -class facebook::react::jsinspector_modern::ConsoleTaskOrchestrator { - public ConsoleTaskOrchestrator(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public ConsoleTaskOrchestrator(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(const facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&) = delete; - public facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& operator=(facebook::react::jsinspector_modern::ConsoleTaskOrchestrator&&) = delete; - public static facebook::react::jsinspector_modern::ConsoleTaskOrchestrator& getInstance(); - public std::shared_ptr top() const; - public void cancelTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void finishTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public void scheduleTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId, std::weak_ptr taskContext); - public void startTask(facebook::react::jsinspector_modern::ConsoleTaskId taskId); - public ~ConsoleTaskOrchestrator() = default; -} - -class facebook::react::jsinspector_modern::EmulationAgent { - public EmulationAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); -} - -class facebook::react::jsinspector_modern::ExecutionContextManager { - public int32_t allocateExecutionContextId(); -} - -class facebook::react::jsinspector_modern::ExecutionContextSelector { - public ExecutionContextSelector() = delete; - public ExecutionContextSelector(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public ExecutionContextSelector(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public bool matches(const facebook::react::jsinspector_modern::ExecutionContextDescription& context) const noexcept; - public bool operator==(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) const noexcept; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(const facebook::react::jsinspector_modern::ExecutionContextSelector& other) = default; - public facebook::react::jsinspector_modern::ExecutionContextSelector& operator=(facebook::react::jsinspector_modern::ExecutionContextSelector&& other) noexcept = default; - public static facebook::react::jsinspector_modern::ExecutionContextSelector all(); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byId(int32_t id); - public static facebook::react::jsinspector_modern::ExecutionContextSelector byName(std::string name); - public ~ExecutionContextSelector() = default; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeAgentDelegate : public facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public FallbackRuntimeAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, const facebook::react::jsinspector_modern::SessionState& sessionState, std::string engineDescription); - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) override; -} - -class facebook::react::jsinspector_modern::FallbackRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public FallbackRuntimeTargetDelegate(std::string engineDescription); - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; -} - -class facebook::react::jsinspector_modern::HermesRuntimeTargetDelegate : public facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public HermesRuntimeTargetDelegate(std::shared_ptr runtime, hermes::HermesRuntime& hermesRuntime); - public std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) override; - public virtual bool supportsConsole() const override; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() override; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) override; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip) override; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) override; - public virtual void disableSamplingProfiler() override; - public virtual void enableSamplingProfiler() override; - public ~HermesRuntimeTargetDelegate() override; -} - -class facebook::react::jsinspector_modern::HostAgent { - public HostAgent(const facebook::react::jsinspector_modern::FrontendChannel& frontendChannel, facebook::react::jsinspector_modern::HostTargetController& targetController, facebook::react::jsinspector_modern::HostTargetMetadata hostMetadata, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::VoidExecutor executor); - public HostAgent(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public HostAgent(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public bool isEligibleForBackgroundTrace() const; - public facebook::react::jsinspector_modern::HostAgent& operator=(const facebook::react::jsinspector_modern::HostAgent&) = delete; - public facebook::react::jsinspector_modern::HostAgent& operator=(facebook::react::jsinspector_modern::HostAgent&&) = delete; - public void emitSystemStateChanged(bool isSingleHost); - public void handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void setCurrentInstanceAgent(std::shared_ptr agent); - public ~HostAgent(); -} - -class facebook::react::jsinspector_modern::HostTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public HostTarget(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public HostTarget(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public bool stopAndMaybeEmitBackgroundTrace(); - public facebook::react::jsinspector_modern::HostTarget& operator=(const facebook::react::jsinspector_modern::HostTarget&) = delete; - public facebook::react::jsinspector_modern::HostTarget& operator=(facebook::react::jsinspector_modern::HostTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& registerInstance(facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public static std::shared_ptr create(facebook::react::jsinspector_modern::HostTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public std::unique_ptr connect(std::unique_ptr connectionToFrontend); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void sendCommand(facebook::react::jsinspector_modern::HostCommand command); - public void unregisterInstance(facebook::react::jsinspector_modern::InstanceTarget& instance); - public ~HostTarget(); -} - -class facebook::react::jsinspector_modern::HostTargetController { - public HostTargetController(facebook::react::jsinspector_modern::HostTarget& target); - public bool decrementPauseOverlayCounter(); - public bool hasInstance() const; - public bool maybeEmitStashedBackgroundTrace(); - public bool startTracing(facebook::react::jsinspector_modern::tracing::Mode mode, std::set enabledCategories); - public facebook::react::jsinspector_modern::HostTargetDelegate& getDelegate(); - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stopTracing(); - public void incrementPauseOverlayCounter(); -} - -class facebook::react::jsinspector_modern::HostTargetDelegate : public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public HostTargetDelegate() = default; - public HostTargetDelegate(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public HostTargetDelegate(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetDelegate& operator=(facebook::react::jsinspector_modern::HostTargetDelegate&&) = delete; - public virtual bool onSetEmulatedMedia(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest&); - public virtual facebook::react::jsinspector_modern::HostTargetMetadata getMetadata() = 0; - public virtual facebook::react::jsinspector_modern::HostTargetTracingDelegate* getTracingDelegate(); - public virtual std::optional captureScreenshot(const facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest&); - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest&, facebook::react::jsinspector_modern::ScopedExecutor) override; - public virtual void onReload(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& request) = 0; - public virtual void onSetPausedInDebuggerMessage(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& request) = 0; - public virtual ~HostTargetDelegate() override; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::OverlaySetPausedInDebuggerMessageRequest& rhs) const; - public std::optional message; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageCaptureScreenshotRequest { - public std::optional quality; - public std::optional format; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::PageReloadRequest& rhs) const; - public std::optional ignoreCache; - public std::optional scriptToEvaluateOnLoad; -} - -struct facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest { - public bool operator==(const facebook::react::jsinspector_modern::HostTargetDelegate::SetEmulatedMediaRequest& rhs) const; - public std::string colorScheme; -} - -class facebook::react::jsinspector_modern::HostTargetTraceRecording { - public HostTargetTraceRecording(facebook::react::jsinspector_modern::HostTarget& hostTarget, facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public bool isBackgroundInitiated() const; - public bool isUserInitiated() const; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile stop(); - public void recordFrameTimings(facebook::react::jsinspector_modern::tracing::FrameTimingSequence frameTimingSequence); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); - public void start(); -} - -class facebook::react::jsinspector_modern::HostTargetTracingDelegate { - public HostTargetTracingDelegate() = default; - public HostTargetTracingDelegate(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public HostTargetTracingDelegate(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(const facebook::react::jsinspector_modern::HostTargetTracingDelegate&) = delete; - public facebook::react::jsinspector_modern::HostTargetTracingDelegate& operator=(facebook::react::jsinspector_modern::HostTargetTracingDelegate&&) = delete; - public virtual void onTracingStarted(facebook::react::jsinspector_modern::tracing::Mode, bool); - public virtual void onTracingStopped(); - public virtual ~HostTargetTracingDelegate() = default; -} - -class facebook::react::jsinspector_modern::HostTracingAgent { - public HostTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedInstance(facebook::react::jsinspector_modern::InstanceTarget* instanceTarget); -} - -class facebook::react::jsinspector_modern::IDestructible { - public virtual ~IDestructible() = 0; -} - -class facebook::react::jsinspector_modern::IInspector : public facebook::react::jsinspector_modern::IDestructible { - public using ConnectFunc = std::function(std::unique_ptr)>; - public virtual facebook::react::jsinspector_modern::InspectorSystemState getSystemState() const = 0; - public virtual int addPage(const std::string& description, const std::string& vm, facebook::react::jsinspector_modern::IInspector::ConnectFunc connectFunc, facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities = {}) = 0; - public virtual std::unique_ptr connect(int pageId, std::unique_ptr remote) = 0; - public virtual std::vector getPages() const = 0; - public virtual void registerPageStatusListener(std::weak_ptr listener) = 0; - public virtual void removePage(int pageId) = 0; - public virtual ~IInspector() = 0; -} - -class facebook::react::jsinspector_modern::ILocalConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void disconnect() = 0; - public virtual void sendMessage(std::string message) = 0; - public virtual ~ILocalConnection() = 0; -} - -class facebook::react::jsinspector_modern::IPageStatusListener : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onPageRemoved(int); - public virtual ~IPageStatusListener() = 0; -} - -class facebook::react::jsinspector_modern::IRemoteConnection : public facebook::react::jsinspector_modern::IDestructible { - public virtual void onDisconnect() = 0; - public virtual void onMessage(std::string message) = 0; - public virtual ~IRemoteConnection() = 0; -} - -class facebook::react::jsinspector_modern::IWebSocket { - public virtual void send(std::string_view message) = 0; - public virtual ~IWebSocket() = default; -} - -class facebook::react::jsinspector_modern::IWebSocketDelegate { - public virtual void didClose() = 0; - public virtual void didFailWithError(std::optional posixCode, std::string error) = 0; - public virtual void didOpen() = 0; - public virtual void didReceiveMessage(std::string_view message) = 0; - public virtual ~IWebSocketDelegate() = default; -} - -class facebook::react::jsinspector_modern::InspectorFlags { - public InspectorFlags(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public bool getAssertSingleHostState() const; - public bool getFrameRecordingEnabled() const; - public bool getFuseboxEnabled() const; - public bool getIsProfilingBuild() const; - public bool getPerfIssuesEnabled() const; - public bool getScreenshotCaptureEnabled() const; - public facebook::react::jsinspector_modern::InspectorFlags& operator=(const facebook::react::jsinspector_modern::InspectorFlags&) = delete; - public static facebook::react::jsinspector_modern::InspectorFlags& getInstance(); - public void dangerouslyDisableFuseboxForTest(); - public void dangerouslyResetFlags(); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection { - public InspectorPackagerConnection(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public bool isConnected() const; - public void closeQuietly(); - public void connect(); - public void sendEventToAllConnections(std::string event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl : public facebook::react::jsinspector_modern::IWebSocketDelegate, public facebook::react::jsinspector_modern::IPageStatusListener, public std::enable_shared_from_this { - public bool isConnected() const; - public static std::shared_ptr create(std::string url, std::string deviceName, std::string appName, std::unique_ptr delegate); - public using SessionId = uint32_t; - public void closeQuietly(); - public void connect(); - public void scheduleSendToPackager(folly::dynamic message, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sourceSessionId, const std::string& sourcePageId, const std::string& sourceProxySessionId); - public void sendEventToAllConnections(const std::string& event); -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::RemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { - public RemoteConnection(std::weak_ptr owningPackagerConnection, std::string pageId, facebook::react::jsinspector_modern::InspectorPackagerConnection::Impl::SessionId sessionId, std::string proxySessionId); - public virtual void onDisconnect() override; - public virtual void onMessage(std::string message) override; -} - -class facebook::react::jsinspector_modern::InspectorPackagerConnectionDelegate { - public virtual std::unique_ptr connectWebSocket(const std::string& url, std::weak_ptr delegate) = 0; - public virtual void scheduleCallback(std::function callback, std::chrono::milliseconds delayMs) = 0; - public virtual ~InspectorPackagerConnectionDelegate() = default; -} - -class facebook::react::jsinspector_modern::InstanceAgent { - public InstanceAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::InstanceTarget& target, facebook::react::jsinspector_modern::SessionState& sessionState); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public void sendConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public void setCurrentRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtime); -} - -class facebook::react::jsinspector_modern::InstanceTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public InstanceTarget(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public InstanceTarget(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(const facebook::react::jsinspector_modern::InstanceTarget&) = delete; - public facebook::react::jsinspector_modern::InstanceTarget& operator=(facebook::react::jsinspector_modern::InstanceTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& registerRuntime(facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor executor); - public static std::shared_ptr create(std::shared_ptr executionContextManager, facebook::react::jsinspector_modern::InstanceTargetDelegate& delegate, facebook::react::jsinspector_modern::VoidExecutor executor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void unregisterRuntime(facebook::react::jsinspector_modern::RuntimeTarget& runtime); - public ~InstanceTarget(); -} - -class facebook::react::jsinspector_modern::InstanceTargetDelegate { - public InstanceTargetDelegate() = default; - public InstanceTargetDelegate(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public InstanceTargetDelegate(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(const facebook::react::jsinspector_modern::InstanceTargetDelegate&) = delete; - public facebook::react::jsinspector_modern::InstanceTargetDelegate& operator=(facebook::react::jsinspector_modern::InstanceTargetDelegate&&) = delete; - public virtual ~InstanceTargetDelegate(); -} - -class facebook::react::jsinspector_modern::InstanceTracingAgent { - public InstanceTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public void setTracedRuntime(facebook::react::jsinspector_modern::RuntimeTarget* runtimeTarget); - public ~InstanceTracingAgent(); -} - -class facebook::react::jsinspector_modern::LoadNetworkResourceDelegate { - public LoadNetworkResourceDelegate() = default; - public LoadNetworkResourceDelegate(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public LoadNetworkResourceDelegate(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(const facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&) = delete; - public facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& operator=(facebook::react::jsinspector_modern::LoadNetworkResourceDelegate&&) noexcept = delete; - public virtual void loadNetworkResource(const facebook::react::jsinspector_modern::LoadNetworkResourceRequest& params, facebook::react::jsinspector_modern::ScopedExecutor executor) = 0; - public virtual ~LoadNetworkResourceDelegate() = default; -} - -class facebook::react::jsinspector_modern::NetworkHandler { - public bool isEnabled() const; - public size_t enableAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel); - public static facebook::react::jsinspector_modern::NetworkHandler& getInstance(); - public std::optional> getResponseBody(const std::string& requestId); - public void disableAgent(size_t agentId); - public void onDataReceived(const std::string& requestId, int dataLength, int encodedDataLength); - public void onLoadingFailed(const std::string& requestId, bool cancelled); - public void onLoadingFinished(const std::string& requestId, int encodedDataLength); - public void onRequestWillBeSent(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Request& request, const std::optional& redirectResponse); - public void onRequestWillBeSentExtraInfo(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void onResponseReceived(const std::string& requestId, const facebook::react::jsinspector_modern::cdp::network::Response& response); - public void onWebSocketClosed(const std::string& requestId); - public void onWebSocketCreated(const std::string& requestId, const std::string& url); - public void onWebSocketFrameReceived(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketFrameSent(const std::string& requestId, const std::string& payloadData, bool isBinary); - public void onWebSocketHandshakeResponseReceived(const std::string& requestId, uint16_t status, const facebook::react::jsinspector_modern::Headers& headers); - public void onWebSocketWillSendHandshakeRequest(const std::string& requestId, const facebook::react::jsinspector_modern::Headers& headers); - public void recordRequestInitiatorStack(const std::string& requestId, folly::dynamic stackTrace); - public void storeResponseBody(const std::string& requestId, std::string_view body, bool base64Encoded); -} - -class facebook::react::jsinspector_modern::NetworkIOAgent { - public NetworkIOAgent(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public NetworkIOAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::VoidExecutor executor); - public NetworkIOAgent(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req, facebook::react::jsinspector_modern::LoadNetworkResourceDelegate& delegate); - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(const facebook::react::jsinspector_modern::NetworkIOAgent&) = delete; - public facebook::react::jsinspector_modern::NetworkIOAgent& operator=(facebook::react::jsinspector_modern::NetworkIOAgent&&) = delete; - public ~NetworkIOAgent(); -} - -class facebook::react::jsinspector_modern::NetworkRequestListener { - public NetworkRequestListener() = default; - public NetworkRequestListener(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public NetworkRequestListener(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(const facebook::react::jsinspector_modern::NetworkRequestListener&) = delete; - public facebook::react::jsinspector_modern::NetworkRequestListener& operator=(facebook::react::jsinspector_modern::NetworkRequestListener&&) noexcept = default; - public virtual void onCompletion() = 0; - public virtual void onData(std::string_view data) = 0; - public virtual void onError(const std::string& message) = 0; - public virtual void onHeaders(uint32_t httpStatusCode, const facebook::react::jsinspector_modern::Headers& headers) = 0; - public virtual void setCancelFunction(std::function cancelFunction) = 0; - public virtual ~NetworkRequestListener() = default; -} - -class facebook::react::jsinspector_modern::NotImplementedException : public std::exception { - public NotImplementedException(std::string message); - public const char* what() const noexcept override; -} - -class facebook::react::jsinspector_modern::NullRemoteConnection : public facebook::react::jsinspector_modern::IRemoteConnection { -} - -class facebook::react::jsinspector_modern::PerfMonitorUpdateHandler { - public PerfMonitorUpdateHandler(facebook::react::jsinspector_modern::HostTargetDelegate& delegate); - public void handlePerfIssueAdded(const std::string& message); -} - -class facebook::react::jsinspector_modern::RAIIRemoteConnection { - public RAIIRemoteConnection(std::unique_ptr remote); - public void onMessage(std::string message); - public ~RAIIRemoteConnection(); -} - -class facebook::react::jsinspector_modern::RuntimeAgent { - public RuntimeAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::RuntimeTargetController& targetController, facebook::react::jsinspector_modern::ExecutionContextDescription executionContextDescription, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr delegate); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public const facebook::react::jsinspector_modern::ExecutionContextDescription& getExecutionContextDescription() const; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState getExportedState(); - public void notifyBindingCalled(const std::string& bindingName, const std::string& payload); - public void notifyFastRefreshComplete(); - public ~RuntimeAgent(); -} - -struct facebook::react::jsinspector_modern::RuntimeAgent::ExportedState { - public std::unique_ptr delegateState; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate { - public virtual bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req) = 0; - public virtual std::unique_ptr getExportedState(); - public virtual ~RuntimeAgentDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeAgentDelegate::ExportedState { - public virtual ~ExportedState() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTarget : public facebook::react::jsinspector_modern::EnableExecutorFromThis { - public RuntimeTarget(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public RuntimeTarget(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(const facebook::react::jsinspector_modern::RuntimeTarget&) = delete; - public facebook::react::jsinspector_modern::RuntimeTarget& operator=(facebook::react::jsinspector_modern::RuntimeTarget&&) = delete; - public static std::shared_ptr create(const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::jsinspector_modern::RuntimeTargetDelegate& delegate, facebook::react::RuntimeExecutor jsExecutor, facebook::react::jsinspector_modern::VoidExecutor selfExecutor); - public std::shared_ptr createAgent(const facebook::react::jsinspector_modern::FrontendChannel& channel, facebook::react::jsinspector_modern::SessionState& sessionState); - public std::shared_ptr createTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public ~RuntimeTarget(); -} - -class facebook::react::jsinspector_modern::RuntimeTargetController { - public RuntimeTargetController(facebook::react::jsinspector_modern::RuntimeTarget& target); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile(); - public void disableSamplingProfiler(); - public void emitTracingStateChange(bool isTracing); - public void enableSamplingProfiler(); - public void installBindingHandler(const std::string& bindingName); - public void installScriptToEvaluateOnNewDocument(const std::string& source); - public void notifyDomainStateChanged(facebook::react::jsinspector_modern::RuntimeTargetController::Domain domain, bool enabled, const facebook::react::jsinspector_modern::RuntimeAgent& notifyingAgent); -} - -enum facebook::react::jsinspector_modern::RuntimeTargetController::Domain { - Log, - Network, - Runtime, - kMaxValue, -} - -class facebook::react::jsinspector_modern::RuntimeTargetDelegate { - public virtual bool supportsConsole() const = 0; - public virtual facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile collectSamplingProfile() = 0; - public virtual std::optional serializeStackTrace(const facebook::react::jsinspector_modern::StackTrace& stackTrace) = 0; - public virtual std::unique_ptr createAgentDelegate(facebook::react::jsinspector_modern::FrontendChannel channel, facebook::react::jsinspector_modern::SessionState& sessionState, std::unique_ptr previouslyExportedState, const facebook::react::jsinspector_modern::ExecutionContextDescription& executionContextDescription, facebook::react::RuntimeExecutor runtimeExecutor) = 0; - public virtual std::unique_ptr captureStackTrace(facebook::jsi::Runtime& runtime, size_t framesToSkip = 0) = 0; - public virtual void addConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::ConsoleMessage message) = 0; - public virtual void disableSamplingProfiler() = 0; - public virtual void enableSamplingProfiler() = 0; - public virtual ~RuntimeTargetDelegate() = default; -} - -class facebook::react::jsinspector_modern::RuntimeTracingAgent : public facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - public RuntimeTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state, facebook::react::jsinspector_modern::RuntimeTargetController& targetController); - public ~RuntimeTracingAgent(); -} - -class facebook::react::jsinspector_modern::StackTrace { - public StackTrace() = default; - public StackTrace(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public StackTrace(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(const facebook::react::jsinspector_modern::StackTrace&) = delete; - public facebook::react::jsinspector_modern::StackTrace& operator=(facebook::react::jsinspector_modern::StackTrace&&) = delete; - public static std::unique_ptr empty(); - public virtual ~StackTrace() = default; -} - -class facebook::react::jsinspector_modern::TracingAgent { - public TracingAgent(facebook::react::jsinspector_modern::FrontendChannel frontendChannel, facebook::react::jsinspector_modern::SessionState& sessionState, facebook::react::jsinspector_modern::HostTargetController& hostTargetController); - public bool handleRequest(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& req); - public ~TracingAgent(); -} - -enum facebook::react::jsinspector_modern::ConsoleAPIType { - kAssert, - kClear, - kCount, - kDebug, - kDir, - kDirXML, - kEndGroup, - kError, - kInfo, - kLog, - kStartGroup, - kStartGroupCollapsed, - kTable, - kTimeEnd, - kTrace, - kWarning, -} - -enum facebook::react::jsinspector_modern::HostCommand { - DebuggerResume, - DebuggerStepOver, -} - -struct facebook::react::jsinspector_modern::ConsoleMessage { - public ConsoleMessage(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public ConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args, std::unique_ptr stackTrace = facebook::react::jsinspector_modern::StackTrace::empty()); - public ConsoleMessage(facebook::jsi::Runtime& runtime, facebook::react::jsinspector_modern::SimpleConsoleMessage message); - public ConsoleMessage(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(const facebook::react::jsinspector_modern::ConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::ConsoleMessage& operator=(facebook::react::jsinspector_modern::ConsoleMessage&& other) noexcept = default; - public std::unique_ptr stackTrace; - public std::vector args; - public ~ConsoleMessage() = default; -} - -struct facebook::react::jsinspector_modern::ExecutionContextDescription { - public int32_t id; - public std::optional uniqueId; - public std::string name; - public std::string origin; -} - -struct facebook::react::jsinspector_modern::GetResponseBodyResult { - public bool base64Encoded; - public folly::dynamic toDynamic() const; - public std::string body; -} - -struct facebook::react::jsinspector_modern::HostTargetMetadata { - public std::optional appDisplayName; - public std::optional appIdentifier; - public std::optional deviceName; - public std::optional integrationName; - public std::optional platform; - public std::optional reactNativeVersion; +template +struct facebook::react::CascadedRectangleCorners { + public bool operator==(const facebook::react::CascadedRectangleCorners& rhs) const = default; + public facebook::react::CascadedRectangleCorners::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleCorners::OptionalT all; + public facebook::react::CascadedRectangleCorners::OptionalT bottomEnd; + public facebook::react::CascadedRectangleCorners::OptionalT bottomLeft; + public facebook::react::CascadedRectangleCorners::OptionalT bottomRight; + public facebook::react::CascadedRectangleCorners::OptionalT bottomStart; + public facebook::react::CascadedRectangleCorners::OptionalT endEnd; + public facebook::react::CascadedRectangleCorners::OptionalT endStart; + public facebook::react::CascadedRectangleCorners::OptionalT startEnd; + public facebook::react::CascadedRectangleCorners::OptionalT startStart; + public facebook::react::CascadedRectangleCorners::OptionalT topEnd; + public facebook::react::CascadedRectangleCorners::OptionalT topLeft; + public facebook::react::CascadedRectangleCorners::OptionalT topRight; + public facebook::react::CascadedRectangleCorners::OptionalT topStart; + public using Counterpart = facebook::react::RectangleCorners; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::IOReadResult { - public bool base64Encoded; - public bool eof; - public folly::dynamic toDynamic() const; - public std::string data; +template +struct facebook::react::CascadedRectangleEdges { + public bool operator==(const facebook::react::CascadedRectangleEdges& rhs) const = default; + public facebook::react::CascadedRectangleEdges::Counterpart resolve(bool isRTL, T defaults) const; + public facebook::react::CascadedRectangleEdges::OptionalT all; + public facebook::react::CascadedRectangleEdges::OptionalT block; + public facebook::react::CascadedRectangleEdges::OptionalT blockEnd; + public facebook::react::CascadedRectangleEdges::OptionalT blockStart; + public facebook::react::CascadedRectangleEdges::OptionalT bottom; + public facebook::react::CascadedRectangleEdges::OptionalT end; + public facebook::react::CascadedRectangleEdges::OptionalT horizontal; + public facebook::react::CascadedRectangleEdges::OptionalT left; + public facebook::react::CascadedRectangleEdges::OptionalT right; + public facebook::react::CascadedRectangleEdges::OptionalT start; + public facebook::react::CascadedRectangleEdges::OptionalT top; + public facebook::react::CascadedRectangleEdges::OptionalT vertical; + public using Counterpart = facebook::react::RectangleEdges; + public using OptionalT = std::optional; } -struct facebook::react::jsinspector_modern::InspectorPageDescription { - public const facebook::react::jsinspector_modern::InspectorTargetCapabilities capabilities; - public const int id; - public const std::string description; - public const std::string vm; +template +struct facebook::react::RectangleCorners { + public T bottomLeft; + public T bottomRight; + public T topLeft; + public T topRight; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleCorners& rhs) const noexcept = default; } -struct facebook::react::jsinspector_modern::InspectorSystemState { - public int registeredHostsCount; +template +struct facebook::react::RectangleEdges { + public T bottom; + public T left; + public T right; + public T top; + public bool isUniform() const noexcept; + public bool operator==(const facebook::react::RectangleEdges& rhs) const noexcept = default; + public static const facebook::react::RectangleEdges ZERO; } -struct facebook::react::jsinspector_modern::InspectorTargetCapabilities { - public bool nativePageReloads; - public bool nativeSourceCodeFetching; +template +class facebook::react::AsyncCallback { + public AsyncCallback(facebook::jsi::Runtime& runtime, facebook::jsi::Function function, std::shared_ptr jsInvoker); + public void call(Args... args) const noexcept; + public void call(std::function&& callImpl) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, Args... args) const noexcept; + public void callWithPriority(facebook::react::SchedulerPriority priority, std::function&& callImpl) const noexcept; + public void operator()(Args... args) const noexcept; } -struct facebook::react::jsinspector_modern::LoadNetworkResourceRequest { - public std::string url; +template +class facebook::react::AsyncEventEmitter : public facebook::react::IAsyncEventEmitter { + public AsyncEventEmitter(); + public AsyncEventEmitter(const facebook::react::AsyncEventEmitter&) = delete; + public AsyncEventEmitter(facebook::react::AsyncEventEmitter&&) noexcept = default; + public facebook::react::AsyncEventEmitter& operator=(const facebook::react::AsyncEventEmitter&) = delete; + public facebook::react::AsyncEventEmitter& operator=(facebook::react::AsyncEventEmitter&&) noexcept = default; + public virtual facebook::jsi::Object get(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker) const override; + public void emit(Args... value); + public void emit(std::function&& converter); + public ~AsyncEventEmitter() override = default; } -struct facebook::react::jsinspector_modern::NetworkResource { - public bool success; - public folly::dynamic toDynamic() const; - public std::optional headers; - public std::optional netErrorName; - public std::optional stream; - public std::optional httpStatusCode; +template +class facebook::react::SharedFunction { + public SharedFunction(const facebook::react::SharedFunction& other) = default; + public SharedFunction(facebook::react::SharedFunction&& other) noexcept = default; + public SharedFunction(std::function&& function = nullptr); + public facebook::react::SharedFunction& operator=(const facebook::react::SharedFunction& other) = default; + public facebook::react::SharedFunction& operator=(facebook::react::SharedFunction&& other) noexcept = default; + public void assign(std::function function) const; + public void operator()(ArgumentT... args) const; } -struct facebook::react::jsinspector_modern::PerfIssuePayload { - public std::optional description; - public std::optional learnMoreUrl; - public std::optional severity; - public std::string name; +template +class facebook::react::AsyncPromise { + public AsyncPromise(facebook::jsi::Runtime& rt, const std::shared_ptr& jsInvoker); + public facebook::jsi::Object get(facebook::jsi::Runtime& rt) const; + public void reject(facebook::react::Error error); + public void resolve(T... value); } -struct facebook::react::jsinspector_modern::ReadStreamParams { - public facebook::react::jsinspector_modern::StreamID handle; - public std::optional offset; - public std::optional size; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const folly::dynamic& value); + public static folly::dynamic fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); } -struct facebook::react::jsinspector_modern::SessionState { - public bool hasPendingTraceRecording; - public bool isDebuggerDomainEnabled; - public bool isLogDomainEnabled; - public bool isNetworkDomainEnabled; - public bool isReactNativeApplicationDomainEnabled; - public bool isRuntimeDomainEnabled; - public facebook::react::jsinspector_modern::RuntimeAgent::ExportedState lastRuntimeAgentExportedState; - public std::unordered_map subscribedBindings; - public std::vector scriptsToEvaluateOnNewDocument; - public std::vector pendingSimpleConsoleMessages; - public unsigned int nextScriptToEvaluateOnNewDocumentId; +struct facebook::react::Bridging { + public static std::nullptr_t fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static std::nullptr_t toJs(facebook::jsi::Runtime&, std::nullptr_t); } -struct facebook::react::jsinspector_modern::SessionState::ScriptToEvaluateOnNewDocument { - public std::string identifier; - public std::string source; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, const std::string& value); + public static std::string fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::String& value); } -struct facebook::react::jsinspector_modern::SimpleConsoleMessage { - public SimpleConsoleMessage(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public SimpleConsoleMessage(double timestamp, facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::ConsoleAPIType type, std::vector args); - public SimpleConsoleMessage(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public double timestamp; - public facebook::react::jsinspector_modern::ConsoleAPIType type; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(const facebook::react::jsinspector_modern::SimpleConsoleMessage& other) = delete; - public facebook::react::jsinspector_modern::SimpleConsoleMessage& operator=(facebook::react::jsinspector_modern::SimpleConsoleMessage&& other) noexcept = default; - public std::vector args; - public ~SimpleConsoleMessage() = default; +struct facebook::react::Bridging { + public static facebook::jsi::String toJs(facebook::jsi::Runtime& rt, std::string_view value); } -template -class facebook::react::jsinspector_modern::EnumArray { - public constexpr ValueType& operator[](IndexType i); - public constexpr const ValueType& operator[](IndexType i) const; - public constexpr int size() const; +template +struct facebook::react::Bridging> { + public static constexpr size_t kArgumentCount; + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, facebook::react::Bridging>::Func fn, const std::shared_ptr& jsInvoker); + public using Func = std::function; + public using IndexSequence = std::index_sequence_for; } -template -struct facebook::react::jsinspector_modern::UniqueMonostate { - public constexpr bool operator<(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator<=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator==(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; - public constexpr bool operator>=(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, 2> { + public static std::pair fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::EnableExecutorFromThis : public std::enable_shared_from_this { - public facebook::react::jsinspector_modern::ScopedExecutor executorFromThis(); - public void setExecutor(facebook::react::jsinspector_modern::VoidExecutor executor); - template - public void setExecutor(facebook::react::jsinspector_modern::ScopedExecutor executor); +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, N> { + public static std::array fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::WeakList { - public bool empty() const; - public size_t size() const; - public void insert(std::weak_ptr ptr); - template - public bool anyOf(Fn&& fn) const; - template - public bool anyOf(Fn&& fn); - template - public void forEach(Fn&& fn) const; - template - public void forEach(Fn&& fn); -} - - -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::TRACING_TIME_ORIGIN; -constexpr facebook::react::HighResTimeStamp facebook::react::jsinspector_modern::tracing::kCurrentBufferStartTimeUninitialized; -using facebook::react::jsinspector_modern::tracing::Categories = folly::small_vector; -using facebook::react::jsinspector_modern::tracing::ConsoleTimeStampEntry = std::variant; -using facebook::react::jsinspector_modern::tracing::FrameSequenceId = uint64_t; -using facebook::react::jsinspector_modern::tracing::Headers = std::map; -using facebook::react::jsinspector_modern::tracing::ProcessId = uint64_t; -using facebook::react::jsinspector_modern::tracing::RuntimeProfileId = uint16_t; -using facebook::react::jsinspector_modern::tracing::ThreadId = uint64_t; -int64_t facebook::react::jsinspector_modern::tracing::highResDurationToTracingClockDuration(facebook::react::HighResDuration duration); -std::optional facebook::react::jsinspector_modern::tracing::getTracingCategoryFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampColorFromString(const std::string& str); -std::optional facebook::react::jsinspector_modern::tracing::getConsoleTimeStampDetailFromObject(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& detailValue); -std::set facebook::react::jsinspector_modern::tracing::parseSerializedTracingCategories(const std::string& serializedCategories); -std::string facebook::react::jsinspector_modern::tracing::consoleTimeStampColorToString(facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor color); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const facebook::react::jsinspector_modern::tracing::Categories& categories); -std::string facebook::react::jsinspector_modern::tracing::serializeTracingCategories(const std::set& categories); -std::string facebook::react::jsinspector_modern::tracing::tracingCategoryToString(const facebook::react::jsinspector_modern::tracing::Category& category); -uint64_t facebook::react::jsinspector_modern::tracing::highResTimeStampToTracingClockTimeStamp(facebook::react::HighResTimeStamp timestamp); - -class facebook::react::jsinspector_modern::tracing::HermesRuntimeSamplingProfileSerializer { - public static facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile serializeToTracingSamplingProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::HostTracingProfileSerializer { - public static void emitAsDataCollectedChunks(facebook::react::jsinspector_modern::tracing::HostTracingProfile&& hostTracingProfile, const std::function& chunkCallback, size_t maxChunkBytes, uint16_t profileTraceEventsChunkSize); - public static void emitFrameTimings(std::vector&& frameTimings, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::HighResTimeStamp recordingStartTimestamp, const std::function& chunkCallback, size_t maxChunkBytes); - public static void emitPerformanceTraceEvents(std::vector&& events, const std::function& chunkCallback, size_t maxChunkBytes); -} - -class facebook::react::jsinspector_modern::tracing::PerformanceTracer { - public bool isTracing() const; - public bool startTracing(); - public bool startTracing(facebook::react::HighResDuration maxDuration); - public static facebook::react::jsinspector_modern::tracing::PerformanceTracer& getInstance(); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileChunkTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ProcessId threadId, facebook::react::HighResTimeStamp chunkTimestamp, facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& traceEventProfileChunk); - public static facebook::react::jsinspector_modern::tracing::TraceEvent constructRuntimeProfileTraceEvent(facebook::react::jsinspector_modern::tracing::RuntimeProfileId profileId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp profileTimestamp); - public std::optional> stopTracing(); - public uint32_t subscribeToTracingStateChanges(facebook::react::jsinspector_modern::tracing::PerformanceTracer::TracingStateCallback callback); - public using TracingStateCallback = std::function; - public void reportEventLoopMicrotasks(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportEventLoopTask(facebook::react::HighResTimeStamp start, facebook::react::HighResTimeStamp end); - public void reportMark(const std::string& name, facebook::react::HighResTimeStamp start, folly::dynamic&& detail = nullptr); - public void reportMeasure(const std::string& name, facebook::react::HighResTimeStamp start, facebook::react::HighResDuration duration, folly::dynamic&& detail = nullptr, std::optional stackTrace = nullptr); - public void reportResourceFinish(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength, int decodedBodyLength); - public void reportResourceReceiveResponse(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int statusCode, const facebook::react::jsinspector_modern::tracing::Headers& headers, int encodedDataLength, folly::dynamic timingData); - public void reportResourceReceivedData(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, int encodedDataLength); - public void reportResourceSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start, const std::string& url, const std::string& requestMethod, const facebook::react::jsinspector_modern::tracing::Headers& headers); - public void reportResourceWillSendRequest(const std::string& devtoolsRequestId, facebook::react::HighResTimeStamp start); - public void reportTimeStamp(const std::string& name, std::optional start = std::nullopt, std::optional end = std::nullopt, std::optional trackName = std::nullopt, std::optional trackGroup = std::nullopt, std::optional color = std::nullopt, std::optional detail = std::nullopt, std::optional stackTrace = std::nullopt); - public void unsubscribeFromTracingStateChanges(uint32_t subscriptionId); -} - -class facebook::react::jsinspector_modern::tracing::ProfileTreeNode { - public ProfileTreeNode(uint32_t id, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType codeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame callFrame, uint32_t parentId = facebook::react::jsinspector_modern::tracing::ProfileTreeNode::NO_PARENT); - public bool hasParent() const; - public const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& getCallFrame() const; - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* addChild(uint32_t childId, facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode* getIfAlreadyExists(facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType childCodeType, const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& childCallFrame); - public facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType getCodeType() const; - public static constexpr uint32_t NO_PARENT; - public uint32_t getId() const; - public uint32_t getParentId() const; -} - -enum facebook::react::jsinspector_modern::tracing::ProfileTreeNode::CodeType { - JavaScript, - Other, -} - -class facebook::react::jsinspector_modern::tracing::RawHermesRuntimeProfile : public facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public RawHermesRuntimeProfile(hermes::sampling_profiler::Profile hermesProfile); -} - -class facebook::react::jsinspector_modern::tracing::RawRuntimeProfile { - public virtual ~RawRuntimeProfile() = default; -} - -class facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfileTraceEventSerializer { - public static void serializeAndDispatch(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&& profile, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); - public static void serializeAndDispatch(std::vector&& profiles, facebook::react::jsinspector_modern::tracing::IdGenerator& profileIdGenerator, facebook::react::HighResTimeStamp tracingStartTime, const std::function& dispatchCallback, uint16_t traceEventChunkSize, uint16_t profileChunkSize = PROFILE_CHUNK_SIZE, uint16_t maxUniqueNodesPerChunk = MAX_UNIQUE_NODES_PER_CHUNK); -} - -class facebook::react::jsinspector_modern::tracing::TargetTracingAgent { - protected facebook::react::jsinspector_modern::tracing::TraceRecordingState& state_; - public TargetTracingAgent(facebook::react::jsinspector_modern::tracing::TraceRecordingState& state); - public bool isRunningInBackgroundMode(); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventGenerator { - public static facebook::react::jsinspector_modern::tracing::TraceEvent createIdleBeginFrameEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createNeedsBeginFrameChangedEvent(int layerTreeId, facebook::react::HighResTimeStamp timestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createScreenshotEvent(facebook::react::jsinspector_modern::tracing::FrameSequenceId frameSequenceId, int sourceId, std::vector&& snapshot, facebook::react::HighResTimeStamp expectedDisplayTime, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); - public static facebook::react::jsinspector_modern::tracing::TraceEvent createSetLayerTreeIdEvent(std::string frame, int layerTreeId, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp timestamp); - public static std::pair createFrameTimingsEvents(facebook::react::jsinspector_modern::tracing::FrameSequenceId sequenceId, int layerTreeId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, facebook::react::jsinspector_modern::tracing::ProcessId processId, facebook::react::jsinspector_modern::tracing::ThreadId threadId); -} - -class facebook::react::jsinspector_modern::tracing::TraceEventSerializer { - public static folly::dynamic serialize(facebook::react::jsinspector_modern::tracing::TraceEvent&& event); - public static folly::dynamic serializeProfileChunk(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk&& profileChunk); - public static folly::dynamic serializeProfileChunkCPUProfile(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile&& cpuProfile); - public static folly::dynamic serializeProfileChunkCPUProfileNode(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node&& node); - public static folly::dynamic serializeProfileChunkCPUProfileNodeCallFrame(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame&& callFrame); - public static folly::dynamic serializeProfileChunkTimeDeltas(facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas&& deltas); - public static size_t estimateJsonSize(const folly::dynamic& value); -} - -enum facebook::react::jsinspector_modern::tracing::Category { - Frame, - HiddenTimeline, - JavaScriptSampling, - RuntimeExecution, - Screenshot, - Timeline, - UserTiming, -} - -enum facebook::react::jsinspector_modern::tracing::ConsoleTimeStampColor { - Error, - Primary, - PrimaryDark, - PrimaryLight, - Secondary, - SecondaryDark, - SecondaryLight, - Tertiary, - TertiaryDark, - TertiaryLight, - Warning, -} - -enum facebook::react::jsinspector_modern::tracing::EventLoopPhase { - Microtasks, - Task, -} - -enum facebook::react::jsinspector_modern::tracing::Mode { - Background, - CDP, -} - -struct facebook::react::jsinspector_modern::tracing::EventLoopReporter { - public EventLoopReporter(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopPhase phase); - public EventLoopReporter(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(const facebook::react::jsinspector_modern::tracing::EventLoopReporter&) = delete; - public facebook::react::jsinspector_modern::tracing::EventLoopReporter& operator=(facebook::react::jsinspector_modern::tracing::EventLoopReporter&&) = delete; - public ~EventLoopReporter(); -} - -struct facebook::react::jsinspector_modern::tracing::FrameTimingSequence { - public FrameTimingSequence() = delete; - public FrameTimingSequence(facebook::react::jsinspector_modern::tracing::FrameSequenceId id, facebook::react::jsinspector_modern::tracing::ThreadId threadId, facebook::react::HighResTimeStamp beginTimestamp, facebook::react::HighResTimeStamp endTimestamp, std::optional> screenshot = std::nullopt, facebook::react::HighResDuration vsyncInterval = facebook::react::HighResDuration::zero()); - public facebook::react::HighResDuration vsyncInterval; - public facebook::react::HighResTimeStamp beginTimestamp; - public facebook::react::HighResTimeStamp endTimestamp; - public facebook::react::jsinspector_modern::tracing::FrameSequenceId id; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::optional> screenshot; -} - -struct facebook::react::jsinspector_modern::tracing::HostTracingProfile { - public HostTracingProfile() = default; - public HostTracingProfile(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public HostTracingProfile(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::HighResTimeStamp startTime; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(const facebook::react::jsinspector_modern::tracing::HostTracingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::HostTracingProfile& operator=(facebook::react::jsinspector_modern::tracing::HostTracingProfile&&) = default; - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public std::vector frameTimings; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~HostTracingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::IdGenerator { - public uint32_t getNext(); -} - -struct facebook::react::jsinspector_modern::tracing::InstanceTracingProfile { - public std::vector performanceTraceEvents; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile { - public RuntimeSamplingProfile(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public RuntimeSamplingProfile(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public RuntimeSamplingProfile(std::string runtimeName, facebook::react::jsinspector_modern::tracing::ProcessId processId, std::vector samples, std::unique_ptr rawRuntimeProfile); - public facebook::react::jsinspector_modern::tracing::ProcessId processId; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile&&) = default; - public std::string runtimeName; - public std::unique_ptr rawRuntimeProfile; - public std::vector samples; - public ~RuntimeSamplingProfile() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample { - public Sample(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public Sample(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public Sample(uint64_t timestamp, facebook::react::jsinspector_modern::tracing::ThreadId threadId, std::vector callStack); - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&) = delete; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample& operator=(facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::Sample&&) = default; - public facebook::react::jsinspector_modern::tracing::ThreadId threadId; - public std::vector callStack; - public uint64_t timestamp; - public ~Sample() = default; -} - -struct facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame { - public bool operator==(const facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame& rhs) const noexcept = default; - public facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind kind; - public std::optional scriptURL; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string_view functionName; - public uint32_t scriptId; -} - -enum facebook::react::jsinspector_modern::tracing::RuntimeSamplingProfile::SampleCallStackFrame::Kind { - GarbageCollector, - HostFunction, - JSFunction, - NativeFunction, -} - -struct facebook::react::jsinspector_modern::tracing::TraceEvent { - public char ph; - public facebook::react::HighResTimeStamp ts; - public facebook::react::jsinspector_modern::tracing::Categories cat; - public facebook::react::jsinspector_modern::tracing::ProcessId pid; - public facebook::react::jsinspector_modern::tracing::ThreadId tid; - public folly::dynamic args; - public std::optional s; - public std::optional dur; - public std::optional id; - public std::string name; +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile cpuProfile; - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::TimeDeltas timeDeltas; - public using TimeDeltas = std::vector; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile { - public std::vector nodes; - public std::vector samples; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node { - public facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame callFrame; - public std::optional parentId; - public uint32_t id; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); + public static std::optional fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value, const std::shared_ptr& jsInvoker); + template + public static std::optional fromJs(facebook::jsi::Runtime& rt, const std::optional& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceEventProfileChunk::CPUProfile::Node::CallFrame { - public std::optional url; - public std::optional columnNumber; - public std::optional lineNumber; - public std::string codeType; - public std::string functionName; - public uint32_t scriptId; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::set fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::tracing::TraceRecordingState { - public TraceRecordingState(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::Mode tracingMode, std::set enabledCategories, std::optional windowSize = std::nullopt); - public TraceRecordingState(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public facebook::react::jsinspector_modern::tracing::Mode mode; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(const facebook::react::jsinspector_modern::tracing::TraceRecordingState&) = delete; - public facebook::react::jsinspector_modern::tracing::TraceRecordingState& operator=(facebook::react::jsinspector_modern::tracing::TraceRecordingState&&) = default; - public std::optional windowSize; - public std::set enabledCategories; - public std::vector instanceTracingProfiles; - public std::vector runtimeSamplingProfiles; - public ~TraceRecordingState() = default; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::unique_ptr& ptr, const std::shared_ptr& jsInvoker); } template -class facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer { - public TimeWindowedBuffer(); - public TimeWindowedBuffer(facebook::react::jsinspector_modern::tracing::TimeWindowedBuffer::TimestampAccessor timestampAccessor, facebook::react::HighResDuration windowSize); - public std::vector pruneExpiredAndExtract(facebook::react::HighResTimeStamp windowRightBoundary = facebook::react::HighResTimeStamp::now()); - public using TimestampAccessor = std::function; - public void clear(); - public void push(T&& element); - public void push(const T& element); +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingDynamic> { + public static std::vector fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Array& array, const std::shared_ptr& jsInvoker); } -template -class facebook::react::jsinspector_modern::tracing::PerformanceTracerSection { - public PerformanceTracerSection(const char* name, const char* track = nullptr, const char* trackGroup = nullptr, const char* color = nullptr, Args... args) noexcept; - public PerformanceTracerSection(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public PerformanceTracerSection(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(const facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&) = delete; - public facebook::react::jsinspector_modern::tracing::PerformanceTracerSection& operator=(facebook::react::jsinspector_modern::tracing::PerformanceTracerSection&&) = delete; - public ~PerformanceTracerSection() noexcept; -} - - -using facebook::react::jsinspector_modern::cdp::ParseError = folly::json::parse_error; -using facebook::react::jsinspector_modern::cdp::RequestId = long long; -using facebook::react::jsinspector_modern::cdp::TypeError = folly::TypeError; -facebook::react::jsinspector_modern::cdp::PreparsedRequest facebook::react::jsinspector_modern::cdp::preparse(std::string_view message); -std::string facebook::react::jsinspector_modern::cdp::jsonError(std::optional id, facebook::react::jsinspector_modern::cdp::ErrorCode code, std::optional message = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonNotification(const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonRequest(facebook::react::jsinspector_modern::cdp::RequestId id, const std::string& method, std::optional params = std::nullopt); -std::string facebook::react::jsinspector_modern::cdp::jsonResult(facebook::react::jsinspector_modern::cdp::RequestId id, const folly::dynamic& result = folly::dynamic::object()); - -enum facebook::react::jsinspector_modern::cdp::ErrorCode { - InternalError, - InvalidParams, - InvalidRequest, - MethodNotFound, - ParseError, -} - -struct facebook::react::jsinspector_modern::cdp::PreparsedRequest { - public bool operator==(const facebook::react::jsinspector_modern::cdp::PreparsedRequest& rhs) const; - public facebook::react::jsinspector_modern::cdp::RequestId id; - public folly::dynamic params; - public std::string method; - public std::string toJson() const; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::weak_ptr& weakPtr, const std::shared_ptr& jsInvoker); } - -using facebook::react::jsinspector_modern::cdp::network::Headers = std::map; -std::string facebook::react::jsinspector_modern::cdp::network::resourceTypeFromMimeType(const std::string& mimeType); - -struct facebook::react::jsinspector_modern::cdp::network::ConnectTiming { - public double requestTime; +template +struct facebook::react::Bridging> : public facebook::react::array_detail::BridgingStatic, sizeof...(Types)> { } -struct facebook::react::jsinspector_modern::cdp::network::DataReceivedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int dataLength; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::ArrayBuffer fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& obj); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::ArrayBuffer buf); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFailedParams { - public bool canceled; - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string errorText; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& value); + public static facebook::jsi::JSError fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Value&& value); + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, std::string message); } -struct facebook::react::jsinspector_modern::cdp::network::LoadingFinishedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::jsi::WeakObject& value); + public static facebook::jsi::WeakObject fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -struct facebook::react::jsinspector_modern::cdp::network::Request { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::optional postData; - public std::string method; - public std::string url; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentExtraInfoParams { - public facebook::react::jsinspector_modern::cdp::network::ConnectTiming connectTiming; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::RequestWillBeSentParams { - public bool redirectHasExtraInfo; - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Request request; - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::optional redirectResponse; - public std::string documentURL; - public std::string loaderId; - public std::string requestId; -} - -struct facebook::react::jsinspector_modern::cdp::network::Response { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public int encodedDataLength; - public static facebook::react::jsinspector_modern::cdp::network::Response fromInputParams(const std::string& url, uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers, int encodedDataLength); - public std::string mimeType; - public std::string statusText; - public std::string url; - public uint16_t status; -} - -struct facebook::react::jsinspector_modern::cdp::network::ResponseReceivedParams { - public bool hasExtraInfo; - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::Response response; - public folly::dynamic toDynamic() const; - public std::string loaderId; - public std::string requestId; - public std::string type; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::AsyncArrayBuffer buffer); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketClosedParams { - public double timestamp; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const facebook::react::Error& error); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketCreatedParams { - public folly::dynamic initiator; - public folly::dynamic toDynamic() const; - public std::string requestId; - public std::string url; +struct facebook::react::Bridging { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::EventSubscription& eventSubscription, const std::shared_ptr& jsInvoker); + public static facebook::react::EventSubscription fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrame { - public bool mask; - public folly::dynamic toDynamic() const; - public int opcode; - public std::string payloadData; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResDuration& value); + public static facebook::react::HighResDuration fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketFrameParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketFrame response; - public folly::dynamic toDynamic() const; - public std::string requestId; +struct facebook::react::Bridging { + public static double toJs(facebook::jsi::Runtime&, const facebook::react::HighResTimeStamp& value); + public static facebook::react::HighResTimeStamp fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& jsiValue); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketHandshakeResponseReceivedParams { - public double timestamp; - public facebook::react::jsinspector_modern::cdp::network::WebSocketResponse response; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::SyncCallback& value); + public static facebook::react::SyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketResponse { - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public static facebook::react::jsinspector_modern::cdp::network::WebSocketResponse fromInputParams(uint16_t status, const facebook::react::jsinspector_modern::cdp::network::Headers& headers); - public std::string statusText; - public uint16_t status; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Function toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncCallback& value); + public static facebook::react::AsyncCallback fromJs(facebook::jsi::Runtime& rt, facebook::jsi::Function&& value, const std::shared_ptr& jsInvoker); } -struct facebook::react::jsinspector_modern::cdp::network::WebSocketWillSendHandshakeRequestParams { - public double timestamp; - public double wallTime; - public facebook::react::jsinspector_modern::cdp::network::Headers headers; - public folly::dynamic toDynamic() const; - public std::string requestId; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncEventEmitter& eventEmitter, const std::shared_ptr& jsInvoker); } - -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINED_BY; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_CONTAINS; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_DISCONNECTED; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_FOLLOWING; -constexpr uint_fast16_t facebook::react::dom::DOCUMENT_POSITION_PRECEDING; -bool facebook::react::dom::isConnected(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMBorderWidthRounded facebook::react::dom::getBorderWidth(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMOffset facebook::react::dom::getOffset(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMPoint facebook::react::dom::getScrollPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMRect facebook::react::dom::getBoundingClientRect(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, bool includeTransform); -facebook::react::dom::DOMRect facebook::react::dom::measureInWindow(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getInnerSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::DOMSizeRounded facebook::react::dom::getScrollSize(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -facebook::react::dom::RNMeasureRect facebook::react::dom::measure(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::optional facebook::react::dom::measureLayout(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& relativeToShadowNode); -std::shared_ptr facebook::react::dom::getElementById(const std::shared_ptr& currentRevision, const std::string& id); -std::shared_ptr facebook::react::dom::getParentNode(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTagName(const facebook::react::ShadowNode& shadowNode); -std::string facebook::react::dom::getTextContent(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -std::vector> facebook::react::dom::getChildNodes(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode); -uint_fast16_t facebook::react::dom::compareDocumentPosition(const facebook::react::RootShadowNode::Shared& currentRevision, const facebook::react::ShadowNode& shadowNode, const facebook::react::ShadowNode& otherShadowNode); - -struct facebook::react::dom::DOMBorderWidthRounded { - public int bottom; - public int left; - public int right; - public int top; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMOffset { - public double left; - public double top; - public std::shared_ptr offsetParent; +template +struct facebook::react::Bridging> : public facebook::react::map_detail::Bridging> { } -struct facebook::react::dom::DOMPoint { - public double x; - public double y; +template +struct facebook::react::Bridging> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const facebook::react::AsyncPromise& promise); } -struct facebook::react::dom::DOMRect { - public double height; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t, std::function>>> : public facebook::react::Bridging> { } -struct facebook::react::dom::DOMSizeRounded { - public int height; - public int width; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, const std::shared_ptr& ptr, const std::shared_ptr& jsInvoker); } -struct facebook::react::dom::RNMeasureRect { - public double height; - public double pageX; - public double pageY; - public double width; - public double x; - public double y; +template +struct facebook::react::Bridging, std::enable_if_t>> { + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, std::shared_ptr value); + public static std::shared_ptr fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value); } -static constexpr facebook::react::Tag facebook::react::animated::undefinedAnimatedNodeIdentifier; +bool facebook::react::HostPlatformViewTraitsInitializer::formsStackingContext(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::formsView(const facebook::react::ViewProps& props); +bool facebook::react::HostPlatformViewTraitsInitializer::isKeyboardFocusable(const facebook::react::ViewProps&); template @@ -8874,6 +2703,16 @@ struct facebook::react::array_detail::BridgingDynamic { } +template +C facebook::react::detail::memberFunctionClass(T C::*); + +class facebook::react::detail::OwnedBytesBuffer : public facebook::jsi::MutableBuffer { + public OwnedBytesBuffer(std::vector bytes) noexcept; + public virtual size_t size() const override; + public virtual uint8_t* data() override; +} + + template struct facebook::react::map_detail::Bridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -8881,109 +2720,6 @@ struct facebook::react::map_detail::Bridging { } -uint64_t facebook::react::oscompat::getCurrentProcessId(); -uint64_t facebook::react::oscompat::getCurrentThreadId(); - - -using facebook::react::ReactMarker::LogTaggedMarker = std::function; -using facebook::react::ReactMarker::LogTaggedMarkerBridgeless = facebook::react::ReactMarker::LogTaggedMarker; -void facebook::react::ReactMarker::logMarker(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId); -void facebook::react::ReactMarker::logMarkerDone(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); -void facebook::react::ReactMarker::logTaggedMarker(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -void facebook::react::ReactMarker::logTaggedMarkerBridgeless(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag); -facebook::react::ReactMarker::AtomicLogTaggedMarker facebook::react::ReactMarker::logTaggedMarkerImpl; - -class facebook::react::ReactMarker::StartupLogger { - public double getAppStartupEndTime(); - public double getAppStartupStartTime(); - public double getInitReactRuntimeStartTime(); - public double getRunJSBundleStartTime(); - public static facebook::react::ReactMarker::StartupLogger& getInstance(); - public void logStartupEvent(facebook::react::ReactMarker::ReactMarkerId markerId, double markerTime); - public void reset(); -} - -enum facebook::react::ReactMarker::ReactMarkerId { - APP_STARTUP_START, - APP_STARTUP_STOP, - CREATE_REACT_CONTEXT_STOP, - INIT_REACT_RUNTIME_START, - INIT_REACT_RUNTIME_STOP, - JS_BUNDLE_STRING_CONVERT_START, - JS_BUNDLE_STRING_CONVERT_STOP, - NATIVE_MODULE_SETUP_START, - NATIVE_MODULE_SETUP_STOP, - NATIVE_REQUIRE_START, - NATIVE_REQUIRE_STOP, - REACT_INSTANCE_INIT_START, - REACT_INSTANCE_INIT_STOP, - REGISTER_JS_SEGMENT_START, - REGISTER_JS_SEGMENT_STOP, - RUN_JS_BUNDLE_START, - RUN_JS_BUNDLE_STOP, -} - -struct facebook::react::ReactMarker::AtomicLogTaggedMarker { - public facebook::react::ReactMarker::AtomicLogTaggedMarker& operator=(facebook::react::ReactMarker::LogTaggedMarker marker); - public operator bool() const noexcept; - public void operator()(facebook::react::ReactMarker::ReactMarkerId markerId, const char* tag) const; -} - -struct facebook::react::ReactMarker::ReactMarkerEvent { - public const char* tag; - public const facebook::react::ReactMarker::ReactMarkerId markerId; - public double time; -} - - -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallBatchPreprocessStart(); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallDispatch(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionArgConversionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionEnd(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionFail(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallExecutionStart(const char* moduleName, const char* methodName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::asyncMethodCallStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::disableLogging(); -void facebook::react::BridgeNativeModulePerfLogger::enableLogging(std::unique_ptr&& logger); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateCacheHit(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateConstructStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateFail(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateSetUpStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateEnd(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleDataCreateStart(const char* moduleName, int32_t id); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningCacheHit(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireBeginningStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingEnd(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingFail(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::moduleJSRequireEndingStart(const char* moduleName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallArgConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallExecutionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallFail(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionEnd(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallReturnConversionStart(const char* moduleName, const char* methodName); -void facebook::react::BridgeNativeModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); - - -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); -void facebook::react::LegacyUIManagerConstantsProviderBinding::install(facebook::jsi::Runtime& runtime, const std::string& name, std::function&& provider); - - void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionEnd(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallArgConversionStart(const char* moduleName, const char* methodName); void facebook::react::TurboModulePerfLogger::asyncMethodCallBatchPreprocessEnd(int batchSize); @@ -9027,9 +2763,6 @@ void facebook::react::TurboModulePerfLogger::syncMethodCallReturnConversionStart void facebook::react::TurboModulePerfLogger::syncMethodCallStart(const char* moduleName, const char* methodName); -std::unique_ptr facebook::jsc::makeJSCRuntime(); - - using facebook::jsi::HostFunctionType = std::function; facebook::jsi::Value facebook::jsi::valueFromDynamic(facebook::jsi::Runtime& runtime, const folly::dynamic& dyn); folly::dynamic facebook::jsi::dynamicFromValue(facebook::jsi::Runtime& runtime, const facebook::jsi::Value& value, const std::function& filterObjectKeys = nullptr); @@ -10803,18 +4536,6 @@ struct facebook::yoga::LayoutableChildren::Iterator { } -struct std::hash { - public size_t operator()(const facebook::react::AttributedString& attributedString) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedStringBox& attributedStringBox) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::EventAnimationDriverKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::LayoutConstraints& constraints) const; } @@ -10823,30 +4544,14 @@ struct std::hash { public size_t operator()(const facebook::react::LayoutMetrics& layoutMetrics) const; } -struct std::hash { - public size_t operator()(const facebook::react::LineMeasureCacheKey& key) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::ParagraphAttributes& attributes) const; -} - struct std::hash { public size_t operator()(const facebook::react::Point& point) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::PreparedTextCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Rect& rect) const noexcept; } -struct std::hash { - public size_t operator()(const facebook::react::ShadowView& shadowView) const; -} - struct std::hash { public size_t operator()(const facebook::react::SharedColor& color) const; } @@ -10855,18 +4560,6 @@ struct std::hash { public size_t operator()(const facebook::react::Size& size) const; } -struct std::hash { - public size_t operator()(const facebook::react::TextAttributes& textAttributes) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextEffectInfo& info) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::TextMeasureCacheKey& key) const; -} - struct std::hash { public size_t operator()(const facebook::react::Transform& transform) const; } @@ -10879,21 +4572,4 @@ struct std::hash> { template struct std::hash> { public size_t operator()(const facebook::react::RectangleEdges& edges) const noexcept; -} - -struct std::hash { - public size_t operator()(const facebook::react::AttributedString::Fragment& fragment) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ConsoleTaskId& id) const; -} - -struct std::hash { - public size_t operator()(const facebook::react::jsinspector_modern::ExecutionContextSelector& selector) const; -} - -template -struct std::hash> { - public size_t operator()(const facebook::react::jsinspector_modern::UniqueMonostate&) const noexcept; } \ No newline at end of file diff --git a/scripts/cxx-api/parser/__main__.py b/scripts/cxx-api/parser/__main__.py index 574b54d1bfa1..7a3130a47823 100644 --- a/scripts/cxx-api/parser/__main__.py +++ b/scripts/cxx-api/parser/__main__.py @@ -22,9 +22,19 @@ from .config import ApiViewSnapshotConfig, parse_config_file from .doxygen import get_doxygen_bin, run_doxygen -from .main import build_snapshot +from .main import build_snapshot, make_location_filter from .path_utils import get_react_native_dir from .snapshot_diff import validate_snapshots +from .tiers import ( + classify_headers, + find_boundary_breaks, + HeaderGraph, + skipped_headers, + Tier, +) + +# Mirrors the fixed EXCLUDE_PATTERNS in .doxygen.config.template. +_TEMPLATE_EXCLUDE_PATTERNS = ["*/tests/*", "*/samples/*"] def run_command( @@ -96,6 +106,7 @@ def build_snapshot_for_view( input_filter: str = None, work_dir: str | None = None, exclude_symbols: list[str] | None = None, + skipped_files: set[str] | None = None, ) -> str: if verbose: print(f"[{api_view}] Generating API view") @@ -128,7 +139,9 @@ def build_snapshot_for_view( print(f"[{api_view}] Building snapshot") snapshot = build_snapshot( - os.path.join(work_dir, "xml"), exclude_symbols=exclude_symbols + os.path.join(work_dir, "xml"), + exclude_symbols=exclude_symbols, + location_filter=make_location_filter(skipped_files, react_native_dir), ) snapshot_string = snapshot.to_string() @@ -142,6 +155,86 @@ def build_snapshot_for_view( return snapshot_string +def _display_path(path: str, react_native_dir: str) -> str: + relative = os.path.relpath(path, react_native_dir) + return path if relative.startswith("..") else relative + + +def classify_views( + configs: list[ApiViewSnapshotConfig], + codegen_dirs: dict[str, str], +) -> list[tuple[list[str], HeaderGraph]]: + # Variants of a view differ only in preprocessor definitions, which the + # textual include scan ignores, so classify each distinct input set once. + groups: dict[tuple, list[str]] = {} + for config in configs: + codegen_dir = codegen_dirs.get(config.codegen_platform) + key = ( + tuple(config.inputs + ([codegen_dir] if codegen_dir else [])), + tuple(config.exclude_patterns), + ) + groups.setdefault(key, []).append(config.snapshot_name) + + return [ + ( + view_names, + classify_headers( + list(inputs), _TEMPLATE_EXCLUDE_PATTERNS + list(exclude_patterns) + ), + ) + for (inputs, exclude_patterns), view_names in groups.items() + ] + + +def get_skipped_files_by_view( + view_graphs: list[tuple[list[str], HeaderGraph]], + react_native_dir: str, + verbose: bool, +) -> dict[str, set[str]]: + skipped_by_view: dict[str, set[str]] = {} + for view_names, graph in view_graphs: + skipped = skipped_headers(graph) + if verbose: + kept = sorted( + path + for path, tier in graph.tiers.items() + if tier in (Tier.PRIVATE, Tier.FRAMEWORKS) and path not in skipped + ) + print( + f"[{', '.join(view_names)}] {len(kept)} private or frameworks " + "header(s) kept because a public header reaches them" + ) + for path in kept: + print( + f" {graph.tiers[path].name.lower()} " + f"{_display_path(path, react_native_dir)}" + ) + for view_name in view_names: + skipped_by_view[view_name] = skipped + return skipped_by_view + + +def log_boundary_breaks( + view_graphs: list[tuple[list[str], HeaderGraph]], + react_native_dir: str, + enabled: bool, +) -> None: + if not enabled: + return + + for view_names, graph in view_graphs: + label = ", ".join(view_names) + breaks = find_boundary_breaks(graph) + print(f"[{label}] {len(breaks)} tier boundary break(s)") + for boundary_break in breaks: + chain = [_display_path(p, react_native_dir) for p in boundary_break.chain] + print( + f" {boundary_break.source_tier.name.lower()} {chain[0]}" + + "".join(f"\n -> {p}" for p in chain[1:-1]) + + f"\n -> {boundary_break.target_tier.name.lower()} {chain[-1]}" + ) + + def build_snapshots( snapshot_configs: list[ApiViewSnapshotConfig], react_native_dir: str, @@ -151,6 +244,7 @@ def build_snapshots( view_filter: str | None = None, is_test: bool = False, keep_xml: bool = False, + log_breaks: bool = False, ) -> None: if not is_test: configs_to_build = [ @@ -177,6 +271,12 @@ def build_snapshots( label=platform, ) + view_graphs = classify_views(configs_to_build, codegen_dirs) + log_boundary_breaks(view_graphs, react_native_dir, log_breaks) + skipped_by_view = get_skipped_files_by_view( + view_graphs, react_native_dir, verbose + ) + with concurrent.futures.ThreadPoolExecutor() as executor: futures = {} for config in configs_to_build: @@ -195,6 +295,7 @@ def build_snapshots( input_filter=input_filter if config.input_filter else None, work_dir=work_dir, exclude_symbols=config.exclude_symbols, + skipped_files=skipped_by_view[config.snapshot_name], ) futures[future] = config.snapshot_name @@ -285,6 +386,11 @@ def main(): action="store_true", help="Keep the generated Doxygen XML files next to the .api output in a xml/ directory", ) + parser.add_argument( + "--log-boundary-breaks", + action="store_true", + help="Log headers whose includes cross the C++ stable API tier boundaries", + ) args = parser.parse_args() verbose = not args.validate @@ -343,6 +449,7 @@ def main(): view_filter=args.view, is_test=args.test, keep_xml=args.xml, + log_breaks=args.log_boundary_breaks, ) if args.validate: diff --git a/scripts/cxx-api/parser/main.py b/scripts/cxx-api/parser/main.py index 946119b00c12..de872c78f4f1 100644 --- a/scripts/cxx-api/parser/main.py +++ b/scripts/cxx-api/parser/main.py @@ -12,6 +12,7 @@ import os import re from dataclasses import dataclass +from typing import Callable from doxmlparser import compound, index @@ -46,16 +47,62 @@ ) +LocationFilter = Callable[[object], bool] + + +def _skip_nothing(_location) -> bool: + return False + + +def make_location_filter( + skipped_files: set[str] | None, source_dir: str +) -> LocationFilter: + """ + Returns a predicate telling whether a Doxygen `location` element points + into one of `skipped_files`. Doxygen reports paths relative to the + directory it ran in, or absolute for inputs outside it. + """ + if not skipped_files: + return _skip_nothing + + skipped = {os.path.realpath(path) for path in skipped_files} + cache: dict[str, bool] = {} + + def is_skipped(location) -> bool: + if location is None or not location.file: + return False + if location.file not in cache: + path = os.path.realpath(os.path.join(source_dir, location.file)) + cache[location.file] = path in skipped + return cache[location.file] + + return is_skipped + + +def _is_skipped_compound(compound_object, location_filter: LocationFilter) -> bool: + # Namespaces are filtered per member in `_process_namespace_sections`. + return compound_object.kind != "namespace" and location_filter( + compound_object.location + ) + + def _process_namespace_sections( - snapshot, namespace_scope, compound_object, exclude_symbols: list[re.Pattern] + snapshot, + namespace_scope, + compound_object, + exclude_symbols: list[re.Pattern], + location_filter: LocationFilter = _skip_nothing, ): """ Process all section definitions inside a namespace compound. """ compound_name = compound_object.compoundname for section_def in compound_object.sectiondef: + # A namespace merges members from every header that reopens it, so + # each member is filtered by where it is declared. + members = [m for m in section_def.memberdef if not location_filter(m.location)] if section_def.kind == "var": - for variable_def in section_def.memberdef: + for variable_def in members: # Skip out-of-class definitions (e.g. "Strct::VALUE") if has_scope_resolution_outside_angles(variable_def.get_name()): continue @@ -68,7 +115,7 @@ def _process_namespace_sections( continue namespace_scope.add_member(var_member) elif section_def.kind == "func": - for function_def in section_def.memberdef: + for function_def in members: # Skip out-of-class definitions (e.g. "Strct::convert") if has_scope_resolution_outside_angles(function_def.get_name()): continue @@ -85,7 +132,7 @@ def _process_namespace_sections( continue namespace_scope.add_member(func_member) elif section_def.kind == "typedef": - for typedef_def in section_def.memberdef: + for typedef_def in members: qualified_name = f"{compound_name}::{typedef_def.get_name()}" if _should_exclude_symbol(qualified_name, exclude_symbols): continue @@ -96,7 +143,7 @@ def _process_namespace_sections( continue namespace_scope.add_member(typedef_member) elif section_def.kind == "enum": - for enum_def in section_def.memberdef: + for enum_def in members: qualified_name = f"{compound_name}::{enum_def.get_name()}" if _should_exclude_symbol(qualified_name, exclude_symbols): continue @@ -107,7 +154,12 @@ def _process_namespace_sections( ) -def _handle_namespace_compound(snapshot, compound_object, exclude_symbols=None): +def _handle_namespace_compound( + snapshot, + compound_object, + exclude_symbols=None, + location_filter: LocationFilter = _skip_nothing, +): """ Handle a namespace compound definition. """ @@ -124,7 +176,7 @@ def _handle_namespace_compound(snapshot, compound_object, exclude_symbols=None): namespace_scope.location = compound_object.location.file _process_namespace_sections( - snapshot, namespace_scope, compound_object, exclude_symbols + snapshot, namespace_scope, compound_object, exclude_symbols, location_filter ) @@ -388,7 +440,11 @@ def find_excluded_symbol_references( return results -def build_snapshot(xml_dir: str, exclude_symbols: list[str] | None = None) -> Snapshot: +def build_snapshot( + xml_dir: str, + exclude_symbols: list[str] | None = None, + location_filter: LocationFilter = _skip_nothing, +) -> Snapshot: """ Reads the Doxygen XML output and builds a snapshot of the C++ API. @@ -396,6 +452,9 @@ def build_snapshot(xml_dir: str, exclude_symbols: list[str] | None = None) -> Sn xml_dir: Path to the Doxygen XML output directory. exclude_symbols: Optional list of regex patterns. Compounds whose qualified name matches any of these patterns will be excluded. + location_filter: Predicate over Doxygen `location` elements (see + `make_location_filter`). Entities declared at a skipped location + are left out of the snapshot. """ if exclude_symbols is None: exclude_symbols = [] @@ -421,7 +480,9 @@ def build_snapshot(xml_dir: str, exclude_symbols: list[str] | None = None) -> Sn if compound_object.prot == "private": continue - if _should_exclude_symbol(compound_object.compoundname, compiled_patterns): + if _should_exclude_symbol( + compound_object.compoundname, compiled_patterns + ) or _is_skipped_compound(compound_object, location_filter): continue kind = compound_object.kind @@ -431,7 +492,9 @@ def build_snapshot(xml_dir: str, exclude_symbols: list[str] | None = None) -> Sn elif kind in _COMPOUND_HANDLERS: handler = _COMPOUND_HANDLERS[kind] if handler == _handle_namespace_compound: - handler(snapshot, compound_object, compiled_patterns) + handler( + snapshot, compound_object, compiled_patterns, location_filter + ) elif handler == _handle_class_compound: handler(snapshot, compound_object, compiled_patterns) elif handler in ( diff --git a/scripts/cxx-api/parser/tiers.py b/scripts/cxx-api/parser/tiers.py new file mode 100644 index 000000000000..9e565914f79f --- /dev/null +++ b/scripts/cxx-api/parser/tiers.py @@ -0,0 +1,208 @@ +# 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. + +""" +Header tier classification for the C++ stable API visibility model. + +Each header declares its tier by including one of the guards from +`react/cxxstableapi/`. Headers without a guard are unclassified. +""" + +from __future__ import annotations + +import enum +import fnmatch +import os +import re +from collections import deque +from dataclasses import dataclass + + +class Tier(enum.IntEnum): + PRIVATE = 1 + FRAMEWORKS = 2 + PUBLIC = 3 + + +_GUARD_TIERS = { + "Private": Tier.PRIVATE, + "Frameworks": Tier.FRAMEWORKS, + "Umbrella": Tier.PUBLIC, +} + +_GUARD_RE = re.compile( + r'^\s*#\s*include\s*[<"]react/cxxstableapi/(Private|Frameworks|Umbrella)Guard\.h[>"]', + re.MULTILINE, +) + +_INCLUDE_RE = re.compile( + r'^\s*#\s*(?:include|import)\s*([<"])([^>"]+)[>"]', + re.MULTILINE, +) + +_GUARD_DIR = os.sep + os.path.join("react", "cxxstableapi") + os.sep + + +@dataclass +class HeaderGraph: + # header path -> tier + tiers: dict[str, Tier | None] + # header path -> its direct includes + includes: dict[str, list[str]] + + +@dataclass(frozen=True) +class BoundaryBreak: + # From the declared header that starts the walk to the header it must not + # reach; everything in between is unclassified. + chain: tuple[str, ...] + source_tier: Tier + target_tier: Tier + + +def collect_headers(input_dirs: list[str], exclude_patterns: list[str]) -> list[str]: + """ + Walk the input directories for `*.h` files, skipping any whose absolute + path matches an exclude pattern (Doxygen `EXCLUDE_PATTERNS` semantics). + """ + headers = set() + for input_dir in input_dirs: + for dirpath, _, filenames in os.walk(input_dir): + for filename in filenames: + if not filename.endswith(".h"): + continue + path = os.path.abspath(os.path.join(dirpath, filename)) + if any(fnmatch.fnmatchcase(path, p) for p in exclude_patterns): + continue + headers.add(path) + return sorted(headers) + + +def _read_tier(content: str) -> Tier | None: + match = _GUARD_RE.search(content) + return _GUARD_TIERS[match.group(1)] if match else None + + +def _resolve_include( + includer: str, + delimiter: str, + includee: str, + headers: set[str], + by_basename: dict[str, list[str]], +) -> list[str]: + # #include "header.h" + if delimiter == '"': + sibling = os.path.normpath(os.path.join(os.path.dirname(includer), includee)) + # The compiler picks an existing sibling even when this view excludes + # it, so falling back to a same-named header elsewhere would be wrong. + if os.path.isfile(sibling): + return [sibling] if sibling in headers else [] + + # #include or fall through + suffix = os.sep + includee + return [ + path + for path in by_basename.get(os.path.basename(includee), []) + if path.endswith(suffix) + ] + + +def build_header_graph(headers: list[str]) -> HeaderGraph: + # The guard headers declare nothing, so every header that includes one + # would otherwise gain an edge into them. + headers = [path for path in headers if _GUARD_DIR not in path] + header_set = set(headers) + by_basename: dict[str, list[str]] = {} + for path in headers: + by_basename.setdefault(os.path.basename(path), []).append(path) + + tiers: dict[str, Tier | None] = {} + includes: dict[str, list[str]] = {} + for path in headers: + with open(path, encoding="utf-8", errors="replace") as f: + content = f.read() + tiers[path] = _read_tier(content) + resolved: list[str] = [] + for delimiter, includee in _INCLUDE_RE.findall(content): + for target in _resolve_include( + path, delimiter, includee, header_set, by_basename + ): + if target != path and target not in resolved: + resolved.append(target) + includes[path] = resolved + + return HeaderGraph(tiers=tiers, includes=includes) + + +def classify_headers(input_dirs: list[str], exclude_patterns: list[str]) -> HeaderGraph: + return build_header_graph(collect_headers(input_dirs, exclude_patterns)) + + +def find_boundary_breaks(graph: HeaderGraph) -> list[BoundaryBreak]: + """ + Find every declared public or frameworks header that reaches a less + visible declared header, directly or through unclassified headers. + + The walk stops at declared headers: whatever a declared header reaches is + reported from that header's own walk, so each break is reported once, at + the edge where visibility actually drops. + """ + breaks: list[BoundaryBreak] = [] + for source_tier in (Tier.PUBLIC, Tier.FRAMEWORKS): + sources = sorted( + path for path, tier in graph.tiers.items() if tier == source_tier + ) + for source in sources: + parents: dict[str, str | None] = {source: None} + queue = deque([source]) + + while queue: + node = queue.popleft() + for target in graph.includes.get(node, []): + if target in parents: + continue + parents[target] = node + target_tier = graph.tiers.get(target) + if target_tier is None: + queue.append(target) + elif target_tier < source_tier: + breaks.append( + BoundaryBreak( + chain=_chain_to(target, parents), + source_tier=source_tier, + target_tier=target_tier, + ) + ) + return breaks + + +def skipped_headers(graph: HeaderGraph) -> set[str]: + """ + Private and frameworks headers that no public header reaches. A header + reachable from a public one is public in practice, whatever its guard says. + """ + reachable = {path for path, tier in graph.tiers.items() if tier == Tier.PUBLIC} + queue = deque(reachable) + while queue: + node = queue.popleft() + for target in graph.includes.get(node, []): + if target not in reachable: + reachable.add(target) + queue.append(target) + + return { + path + for path, tier in graph.tiers.items() + if tier in (Tier.PRIVATE, Tier.FRAMEWORKS) and path not in reachable + } + + +def _chain_to(target: str, parents: dict[str, str | None]) -> tuple[str, ...]: + chain = [] + node: str | None = target + while node is not None: + chain.append(node) + node = parents[node] + return tuple(reversed(chain)) diff --git a/scripts/cxx-api/tests/test_tier_filtering.py b/scripts/cxx-api/tests/test_tier_filtering.py new file mode 100644 index 000000000000..511edd560fb1 --- /dev/null +++ b/scripts/cxx-api/tests/test_tier_filtering.py @@ -0,0 +1,106 @@ +# 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. + +"""Tests for leaving entities declared in skipped headers out of a snapshot""" + +import importlib.resources as ir +import os +import subprocess +import tempfile +import unittest + +from ..parser import build_snapshot +from ..parser.main import make_location_filter + +PUBLIC_HEADER = """ +namespace ns { +class PublicClass {}; +void publicFunction(); +enum class PublicEnum { A }; +using PublicAlias = int; +extern int publicVariable; +} // namespace ns +""" + +PRIVATE_HEADER = """ +namespace ns { +class PrivateClass { + public: + class Nested {}; +}; +void privateFunction(); +enum class PrivateEnum { B }; +using PrivateAlias = int; +extern int privateVariable; +} // namespace ns + +namespace ns::detail { +void detailFunction(); +} // namespace ns::detail +""" + + +class TestTierFiltering(unittest.TestCase): + def setUp(self): + self._tmp = tempfile.TemporaryDirectory() + self.root = os.path.realpath(self._tmp.name) + for name, content in ( + ("Public.h", PUBLIC_HEADER), + ("Private.h", PRIVATE_HEADER), + ): + with open(os.path.join(self.root, name), "w") as f: + f.write(content) + + config = ir.files(__package__) / "snapshots" / ".doxygen.config.template" + # The config reads INPUT_FILTER from this variable, and Doxygen parses + # nothing when it expands to an empty filter. + env = {**os.environ, "DOXYGEN_INPUT_FILTER": "cat"} + with ir.as_file(config) as config_path: + result = subprocess.run( + [env.get("DOXYGEN_BIN", "doxygen"), str(config_path)], + cwd=self.root, + capture_output=True, + text=True, + env=env, + ) + if result.returncode != 0: + raise RuntimeError(f"Doxygen failed: {result.stderr}") + self.xml_dir = os.path.join(self.root, "api", "xml") + + def tearDown(self): + self._tmp.cleanup() + + def test_leaves_out_entities_declared_in_skipped_headers(self): + location_filter = make_location_filter( + {os.path.join(self.root, "Private.h")}, self.root + ) + snapshot = build_snapshot( + self.xml_dir, location_filter=location_filter + ).to_string() + + for name in ( + "PublicClass", + "publicFunction", + "PublicEnum", + "PublicAlias", + "publicVariable", + ): + self.assertIn(name, snapshot) + for name in ( + "PrivateClass", + "Nested", + "privateFunction", + "PrivateEnum", + "PrivateAlias", + "privateVariable", + "detail", + ): + self.assertNotIn(name, snapshot) + + def test_keeps_everything_without_skipped_headers(self): + snapshot = build_snapshot(self.xml_dir).to_string() + + for name in ("PublicClass", "PrivateClass", "privateFunction", "detail"): + self.assertIn(name, snapshot) diff --git a/scripts/cxx-api/tests/test_tiers.py b/scripts/cxx-api/tests/test_tiers.py new file mode 100644 index 000000000000..727892989a51 --- /dev/null +++ b/scripts/cxx-api/tests/test_tiers.py @@ -0,0 +1,245 @@ +# 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. + +"""Unit tests for header tier classification and boundary breaks""" + +import os +import tempfile +import unittest + +from ..parser.tiers import ( + build_header_graph, + classify_headers, + collect_headers, + find_boundary_breaks, + skipped_headers, + Tier, +) + +PRIVATE = "#include \n" +FRAMEWORKS = "#include \n" +PUBLIC = "#include \n" + + +class TestTiers(unittest.TestCase): + def setUp(self): + self._tmp = tempfile.TemporaryDirectory() + self.root = os.path.realpath(self._tmp.name) + + def tearDown(self): + self._tmp.cleanup() + + def write(self, relative_path: str, content: str = "") -> str: + path = os.path.join(self.root, relative_path) + os.makedirs(os.path.dirname(path), exist_ok=True) + with open(path, "w") as f: + f.write(content) + return path + + def graph(self, exclude_patterns=None): + return classify_headers([self.root], exclude_patterns or []) + + def break_edges(self): + return { + ( + os.path.relpath(b.chain[0], self.root), + os.path.relpath(b.chain[-1], self.root), + ) + for b in find_boundary_breaks(self.graph()) + } + + # ========================================================================= + # Classification + # ========================================================================= + + def test_reads_tier_from_guard(self): + private = self.write("a/Private.h", "#pragma once\n\n" + PRIVATE) + frameworks = self.write("a/Frameworks.h", "#pragma once\n" + FRAMEWORKS) + public = self.write("a/Public.h", PUBLIC) + unguarded = self.write("a/Unguarded.h", "#pragma once\n") + + tiers = self.graph().tiers + + self.assertEqual(tiers[private], Tier.PRIVATE) + self.assertEqual(tiers[frameworks], Tier.FRAMEWORKS) + self.assertEqual(tiers[public], Tier.PUBLIC) + self.assertIsNone(tiers[unguarded]) + + def test_reads_guard_below_conditional(self): + path = self.write("a/A.h", "#ifdef __cplusplus\n" + PRIVATE + "#endif\n") + self.assertEqual(self.graph().tiers[path], Tier.PRIVATE) + + def test_reads_quoted_guard(self): + path = self.write("a/A.h", '#include "react/cxxstableapi/PrivateGuard.h"\n') + self.assertEqual(self.graph().tiers[path], Tier.PRIVATE) + + def test_ignores_commented_out_guard(self): + path = self.write("a/A.h", "// " + PRIVATE) + self.assertIsNone(self.graph().tiers[path]) + + def test_exclude_patterns_skip_headers(self): + kept = self.write("a/A.h") + self.write("a/tests/T.h") + self.write("a/B.cpp") + + self.assertEqual(collect_headers([self.root], ["*/tests/*"]), [kept]) + + # ========================================================================= + # Include resolution + # ========================================================================= + + def test_resolves_angle_include_by_path_suffix(self): + includer = self.write("x/A.h", "#include \n") + target = self.write("ReactCommon/react/foo/B.h") + self.write("ReactCommon/react/bar/B.h") + + self.assertEqual(self.graph().includes[includer], [target]) + + def test_excluded_sibling_does_not_fall_back_to_other_headers(self): + includer = self.write("platform/a/A.h", '#include "B.h"\n') + self.write("platform/a/B.h") + self.write("other/B.h") + + graph = classify_headers([self.root], ["*/platform/a/B.h"]) + + self.assertEqual(graph.includes[includer], []) + + def test_resolves_quoted_include_to_sibling_first(self): + includer = self.write("a/A.h", '#include "B.h"\n') + sibling = self.write("a/B.h") + self.write("b/B.h") + + self.assertEqual(self.graph().includes[includer], [sibling]) + + def test_resolves_one_copy_per_platform(self): + includer = self.write("A.h", "#include \n") + ios = self.write("platform/ios/react/foo/Platform.h") + android = self.write("platform/android/react/foo/Platform.h") + + self.assertCountEqual(self.graph().includes[includer], [ios, android]) + + def test_resolves_every_bare_include_candidate(self): + includer = self.write("A.h", "#include \n") + a = self.write("a/primitives.h") + b = self.write("b/primitives.h") + + self.assertCountEqual(self.graph().includes[includer], [a, b]) + + def test_guard_headers_are_not_in_the_graph(self): + includer = self.write("a/A.h", PRIVATE + "#include \n") + target = self.write("react/foo/B.h") + guard = self.write("react/cxxstableapi/PrivateGuard.h") + + graph = self.graph() + + self.assertNotIn(guard, graph.tiers) + self.assertEqual(graph.includes[includer], [target]) + + def test_resolves_objc_import(self): + includer = self.write("A.h", "#import \n") + target = self.write("React/B.h") + + self.assertEqual(self.graph().includes[includer], [target]) + + # ========================================================================= + # Boundary breaks + # ========================================================================= + + def test_public_including_private_is_a_break(self): + self.write("Public.h", PUBLIC + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + self.assertEqual(self.break_edges(), {("Public.h", "Private.h")}) + + def test_public_including_frameworks_is_a_break(self): + self.write("Public.h", PUBLIC + '#include "Frameworks.h"\n') + self.write("Frameworks.h", FRAMEWORKS) + + self.assertEqual(self.break_edges(), {("Public.h", "Frameworks.h")}) + + def test_frameworks_including_private_is_a_break(self): + self.write("Frameworks.h", FRAMEWORKS + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + self.assertEqual(self.break_edges(), {("Frameworks.h", "Private.h")}) + + def test_break_through_unclassified_headers_reports_chain(self): + self.write("Public.h", PUBLIC + '#include "Middle.h"\n') + self.write("Middle.h", '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + breaks = find_boundary_breaks(self.graph()) + + self.assertEqual(len(breaks), 1) + self.assertEqual( + [os.path.relpath(p, self.root) for p in breaks[0].chain], + ["Public.h", "Middle.h", "Private.h"], + ) + self.assertEqual(breaks[0].source_tier, Tier.PUBLIC) + self.assertEqual(breaks[0].target_tier, Tier.PRIVATE) + + def test_including_more_visible_headers_is_not_a_break(self): + self.write("Private.h", PRIVATE + '#include "Frameworks.h"\n') + self.write("Frameworks.h", FRAMEWORKS + '#include "Public.h"\n') + self.write("Public.h", PUBLIC + '#include "Public2.h"\n') + self.write("Public2.h", PUBLIC) + + self.assertEqual(self.break_edges(), set()) + + def test_unclassified_headers_do_not_start_a_walk(self): + self.write("Unguarded.h", '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + self.assertEqual(self.break_edges(), set()) + + def test_walk_stops_at_declared_headers(self): + self.write("Public.h", PUBLIC + '#include "Frameworks.h"\n') + self.write("Frameworks.h", FRAMEWORKS + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + self.assertEqual( + self.break_edges(), + {("Public.h", "Frameworks.h"), ("Frameworks.h", "Private.h")}, + ) + + def test_handles_include_cycles(self): + self.write("Public.h", PUBLIC + '#include "A.h"\n') + self.write("A.h", '#include "B.h"\n') + self.write("B.h", '#include "A.h"\n#include "Private.h"\n') + self.write("Private.h", PRIVATE) + + self.assertEqual(self.break_edges(), {("Public.h", "Private.h")}) + + def test_build_header_graph_ignores_self_include(self): + path = self.write("A.h", '#include "A.h"\n') + self.assertEqual(build_header_graph([path]).includes[path], []) + + # ========================================================================= + # Skipped headers + # ========================================================================= + + def skipped(self): + return {os.path.relpath(p, self.root) for p in skipped_headers(self.graph())} + + def test_skips_unreached_private_and_frameworks_headers(self): + self.write("Public.h", PUBLIC) + self.write("Frameworks.h", FRAMEWORKS + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + self.write("Unguarded.h", '#include "Private.h"\n') + + self.assertEqual(self.skipped(), {"Frameworks.h", "Private.h"}) + + def test_keeps_headers_reached_from_public(self): + self.write("Public.h", PUBLIC + '#include "Middle.h"\n') + self.write("Middle.h", '#include "Frameworks.h"\n') + self.write("Frameworks.h", FRAMEWORKS + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + self.write("Other.h", PRIVATE) + + self.assertEqual(self.skipped(), {"Other.h"}) + + def test_never_skips_unclassified_headers(self): + self.write("Unguarded.h") + self.assertEqual(self.skipped(), set())