From 5baad216625df3bbdc236a0a1efe54d9aea89479 Mon Sep 17 00:00:00 2001 From: Jakub Piasecki Date: Thu, 8 Oct 2026 01:08:47 -0700 Subject: [PATCH 1/4] Classify legacy bridge JNI headers as private Summary: Classifies `JavaModuleWrapper.h`, `JavaScriptExecutorHolder.h`, `JniJSModulesUnbundle.h`, `MethodInvoker.h` and `ModuleRegistryBuilder.h` from the `reactnativejni` target as "private" under the three-tier C++ stable API visibility model. They exist only to wire the legacy bridge and expose private `cxxreact` types. Consumers that opt into `RN_STRICT_API` now get an error if they include them directly; without that flag the guards are inert, so no existing build changes behaviour. The remaining headers of `reactnativejni` are not classified yet. Changelog: [Internal] Differential Revision: D122764164 --- .../ReactAndroid/src/main/jni/react/jni/CMakeLists.txt | 1 + .../ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h | 2 ++ .../src/main/jni/react/jni/JavaScriptExecutorHolder.h | 2 ++ .../ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h | 2 ++ .../ReactAndroid/src/main/jni/react/jni/MethodInvoker.h | 2 ++ .../ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h | 2 ++ 6 files changed, 11 insertions(+) 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 From f8a0abe62f8cd98782f614894326332acb4cf320 Mon Sep 17 00:00:00 2001 From: Jakub Piasecki Date: Thu, 8 Oct 2026 01:08:47 -0700 Subject: [PATCH 2/4] Log tier boundary breaks in the C++ API snapshot generator Summary: Adds a header tier classifier to the C++ API snapshot generator. A header's tier comes from the stable API guard it includes; headers without one are unclassified. With the new `--log-boundary-breaks` flag, the generator logs every public header that reaches a frameworks or private header, and every frameworks header that reaches a private one, with the include chain. Snapshot output is unchanged. Changelog: [Internal] Differential Revision: D123001749 --- scripts/cxx-api/parser/__main__.py | 56 ++++++++ scripts/cxx-api/parser/tiers.py | 187 ++++++++++++++++++++++++ scripts/cxx-api/tests/test_tiers.py | 216 ++++++++++++++++++++++++++++ 3 files changed, 459 insertions(+) create mode 100644 scripts/cxx-api/parser/tiers.py create mode 100644 scripts/cxx-api/tests/test_tiers.py diff --git a/scripts/cxx-api/parser/__main__.py b/scripts/cxx-api/parser/__main__.py index 574b54d1bfa1..f7086c2be2ea 100644 --- a/scripts/cxx-api/parser/__main__.py +++ b/scripts/cxx-api/parser/__main__.py @@ -25,6 +25,10 @@ from .main import build_snapshot from .path_utils import get_react_native_dir from .snapshot_diff import validate_snapshots +from .tiers import classify_headers, find_boundary_breaks + +# Mirrors the fixed EXCLUDE_PATTERNS in .doxygen.config.template. +_TEMPLATE_EXCLUDE_PATTERNS = ["*/tests/*", "*/samples/*"] def run_command( @@ -142,6 +146,47 @@ 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 log_boundary_breaks( + configs: list[ApiViewSnapshotConfig], + codegen_dirs: dict[str, str], + react_native_dir: str, + enabled: bool, +) -> None: + if not enabled: + return + + # 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) + + for (inputs, exclude_patterns), view_names in groups.items(): + label = ", ".join(view_names) + graph = classify_headers( + list(inputs), _TEMPLATE_EXCLUDE_PATTERNS + list(exclude_patterns) + ) + 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 +196,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 +223,10 @@ def build_snapshots( label=platform, ) + log_boundary_breaks( + configs_to_build, codegen_dirs, react_native_dir, log_breaks + ) + with concurrent.futures.ThreadPoolExecutor() as executor: futures = {} for config in configs_to_build: @@ -285,6 +335,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 +398,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/tiers.py b/scripts/cxx-api/parser/tiers.py new file mode 100644 index 000000000000..f20cdafdb4c8 --- /dev/null +++ b/scripts/cxx-api/parser/tiers.py @@ -0,0 +1,187 @@ +# 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 _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_tiers.py b/scripts/cxx-api/tests/test_tiers.py new file mode 100644 index 000000000000..f658d580934d --- /dev/null +++ b/scripts/cxx-api/tests/test_tiers.py @@ -0,0 +1,216 @@ +# 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, + 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], []) From f4b53ce2485e283f8ed18c57ecea0f0299f909e8 Mon Sep 17 00:00:00 2001 From: Jakub Piasecki Date: Thu, 8 Oct 2026 01:13:50 -0700 Subject: [PATCH 3/4] Leave private and frameworks headers out of the C++ API snapshots Summary: The C++ API snapshots now cover only the public tier of the C++ stable API. Symbols declared in headers that include `PrivateGuard.h` or `FrameworksGuard.h` are left out, unless a public header reaches them directly or transitively, in which case they are public in practice. Unclassified headers are kept. In verbose mode the generator reports how many private or frameworks headers are kept that way. The snapshots are regenerated, and the README and snapshot docs describe the filtering. Changelog: [Internal] Differential Revision: D123001770 --- scripts/cxx-api/README.md | 42 +- .../api-snapshots/ReactAndroidDebugCxx.api | 6856 +--------------- .../api-snapshots/ReactAndroidNewarchCxx.api | 6703 +--------------- .../api-snapshots/ReactAndroidReleaseCxx.api | 6854 +--------------- .../api-snapshots/ReactAppleDebugCxx.api | 6926 +---------------- .../api-snapshots/ReactAppleNewarchCxx.api | 6733 +--------------- .../api-snapshots/ReactAppleReleaseCxx.api | 6918 +--------------- .../api-snapshots/ReactCommonDebugCxx.api | 6738 +--------------- .../api-snapshots/ReactCommonNewarchCxx.api | 6567 +--------------- .../api-snapshots/ReactCommonReleaseCxx.api | 6736 +--------------- scripts/cxx-api/parser/__main__.py | 83 +- scripts/cxx-api/parser/main.py | 83 +- scripts/cxx-api/parser/tiers.py | 21 + scripts/cxx-api/tests/test_tier_filtering.py | 106 + scripts/cxx-api/tests/test_tiers.py | 29 + 15 files changed, 1904 insertions(+), 59491 deletions(-) create mode 100644 scripts/cxx-api/tests/test_tier_filtering.py 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 f7086c2be2ea..7a3130a47823 100644 --- a/scripts/cxx-api/parser/__main__.py +++ b/scripts/cxx-api/parser/__main__.py @@ -22,10 +22,16 @@ 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 +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/*"] @@ -100,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") @@ -132,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() @@ -151,15 +160,10 @@ def _display_path(path: str, react_native_dir: str) -> str: return path if relative.startswith("..") else relative -def log_boundary_breaks( +def classify_views( configs: list[ApiViewSnapshotConfig], codegen_dirs: dict[str, str], - react_native_dir: str, - enabled: bool, -) -> None: - if not enabled: - return - +) -> 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]] = {} @@ -171,11 +175,55 @@ def log_boundary_breaks( ) groups.setdefault(key, []).append(config.snapshot_name) - for (inputs, exclude_patterns), view_names in groups.items(): - label = ", ".join(view_names) - graph = classify_headers( - list(inputs), _TEMPLATE_EXCLUDE_PATTERNS + list(exclude_patterns) + 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: @@ -223,8 +271,10 @@ def build_snapshots( label=platform, ) - log_boundary_breaks( - configs_to_build, codegen_dirs, react_native_dir, log_breaks + 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: @@ -245,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 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 index f20cdafdb4c8..9e565914f79f 100644 --- a/scripts/cxx-api/parser/tiers.py +++ b/scripts/cxx-api/parser/tiers.py @@ -178,6 +178,27 @@ def find_boundary_breaks(graph: HeaderGraph) -> list[BoundaryBreak]: 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 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 index f658d580934d..727892989a51 100644 --- a/scripts/cxx-api/tests/test_tiers.py +++ b/scripts/cxx-api/tests/test_tiers.py @@ -14,6 +14,7 @@ classify_headers, collect_headers, find_boundary_breaks, + skipped_headers, Tier, ) @@ -214,3 +215,31 @@ def test_handles_include_cycles(self): 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()) From 37dc06936f2372e3f6691cdca230275bca5e1b8d Mon Sep 17 00:00:00 2001 From: Jakub Piasecki Date: Thu, 8 Oct 2026 01:32:03 -0700 Subject: [PATCH 4/4] Let the C++ API snapshot config select its visibility (#58838) Summary: Pull Request resolved: https://github.com/react/react-native/pull/58838 Adds a `visibility` option to the C++ API snapshot `config.yml`, listing which C++ stable API tiers (`public`, `frameworks`, `private`) a view includes. It can be set per view or at the top level, where it applies to views that do not set their own. When omitted it defaults to `public`, so existing snapshots are unchanged. Headers in tiers outside the selection are skipped unless a header in an included tier reaches them. Unclassified headers are still kept. Changelog: [Internal] Reviewed By: cipolleschi Differential Revision: D123001791 --- scripts/cxx-api/README.md | 7 +-- scripts/cxx-api/parser/__main__.py | 72 ++++++++++++++++++---------- scripts/cxx-api/parser/config.py | 17 +++++++ scripts/cxx-api/parser/tiers.py | 23 +++++++-- scripts/cxx-api/tests/test_config.py | 49 +++++++++++++++++++ scripts/cxx-api/tests/test_tiers.py | 25 +++++++++- 6 files changed, 157 insertions(+), 36 deletions(-) diff --git a/scripts/cxx-api/README.md b/scripts/cxx-api/README.md index 3986958b2a35..b4e68e4afe7e 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. Symbols declared in headers that the C++ stable API classifies as private or "for frameworks" are left out (see [Tier filtering](#tier-filtering)). +`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 by default (see [Tier filtering](#tier-filtering)). The pipeline produces one `.api` snapshot file per configured **API view × variant** combination: @@ -76,7 +76,7 @@ The Python parser (`parser/`) reads the Doxygen XML output and builds a scope tr ## 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. +Each view includes the tiers listed in its `visibility` config (`public`, `frameworks`, `private`), only `public` by default. A header in any other tier is skipped unless a header in an included tier 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. @@ -102,8 +102,9 @@ All API views and their variants are defined in `config.yml`. Each view specifie | `codegen` | Optional codegen platform (`android`, `ios`) to generate TurboModule/Component headers before scanning | | `exclude_symbols` | Regex patterns for symbols to skip | | `input_filter` | Whether to run Doxygen through the input filters in `parser/input_filters/` | +| `visibility` | C++ stable API tiers to include (`public`, `frameworks`, `private`); defaults to `[public]`. See [Tier filtering](#tier-filtering) | -`exclude_patterns` and `exclude_symbols` can also be set at the top level, in which case they apply to every view. +`exclude_patterns` and `exclude_symbols` can also be set at the top level, in which case they apply to every view. A top-level `visibility` applies to every view that does not set its own. ## Snapshot format diff --git a/scripts/cxx-api/parser/__main__.py b/scripts/cxx-api/parser/__main__.py index 7a3130a47823..1b33d96affcf 100644 --- a/scripts/cxx-api/parser/__main__.py +++ b/scripts/cxx-api/parser/__main__.py @@ -163,67 +163,87 @@ def _display_path(path: str, react_native_dir: str) -> str: def classify_views( configs: list[ApiViewSnapshotConfig], codegen_dirs: dict[str, str], -) -> list[tuple[list[str], HeaderGraph]]: +) -> list[tuple[list[ApiViewSnapshotConfig], 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]] = {} + groups: dict[tuple, list[ApiViewSnapshotConfig]] = {} 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) + groups.setdefault(key, []).append(config) return [ ( - view_names, + view_configs, classify_headers( list(inputs), _TEMPLATE_EXCLUDE_PATTERNS + list(exclude_patterns) ), ) - for (inputs, exclude_patterns), view_names in groups.items() + for (inputs, exclude_patterns), view_configs in groups.items() ] def get_skipped_files_by_view( - view_graphs: list[tuple[list[str], HeaderGraph]], + view_graphs: list[tuple[list[ApiViewSnapshotConfig], 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 view_configs, graph in view_graphs: + names_by_visibility: dict[frozenset[Tier], list[str]] = {} + for config in view_configs: + names_by_visibility.setdefault(config.visibility, []).append( + config.snapshot_name ) - for path in kept: - print( - f" {graph.tiers[path].name.lower()} " - f"{_display_path(path, react_native_dir)}" + + for visibility, view_names in names_by_visibility.items(): + skipped = skipped_headers(graph, visibility) + if verbose: + _log_kept_headers( + view_names, graph, visibility, skipped, react_native_dir ) - for view_name in view_names: - skipped_by_view[view_name] = skipped + for view_name in view_names: + skipped_by_view[view_name] = skipped return skipped_by_view +def _log_kept_headers( + view_names: list[str], + graph: HeaderGraph, + included_tiers: frozenset[Tier], + skipped: set[str], + react_native_dir: str, +) -> None: + kept = sorted( + path + for path, tier in graph.tiers.items() + if tier is not None and tier not in included_tiers and path not in skipped + ) + included = ", ".join(tier.name.lower() for tier in sorted(included_tiers)) + print( + f"[{', '.join(view_names)}] {len(kept)} header(s) outside the included " + f"tiers ({included}) kept because an included header reaches them" + ) + for path in kept: + print( + f" {graph.tiers[path].name.lower()} " + f"{_display_path(path, react_native_dir)}" + ) + + def log_boundary_breaks( - view_graphs: list[tuple[list[str], HeaderGraph]], + view_graphs: list[tuple[list[ApiViewSnapshotConfig], HeaderGraph]], react_native_dir: str, enabled: bool, ) -> None: if not enabled: return - for view_names, graph in view_graphs: - label = ", ".join(view_names) + for view_configs, graph in view_graphs: + label = ", ".join(config.snapshot_name for config in view_configs) breaks = find_boundary_breaks(graph) print(f"[{label}] {len(breaks)} tier boundary break(s)") for boundary_break in breaks: diff --git a/scripts/cxx-api/parser/config.py b/scripts/cxx-api/parser/config.py index 972d1556850e..b040a0d1d602 100644 --- a/scripts/cxx-api/parser/config.py +++ b/scripts/cxx-api/parser/config.py @@ -15,6 +15,8 @@ import yaml +from .tiers import DEFAULT_TIERS, parse_tier, Tier + @dataclass class ApiViewVariant: @@ -39,6 +41,15 @@ class ApiViewSnapshotConfig: codegen_platform: str | None = None input_filter: bool = False exclude_symbols: list[str] = field(default_factory=list) + visibility: frozenset[Tier] = DEFAULT_TIERS + + +def _parse_visibility( + names: list[str] | None, default: frozenset[Tier] +) -> frozenset[Tier]: + if names is None: + return default + return frozenset(parse_tier(name) for name in names) def parse_config( @@ -51,6 +62,8 @@ def parse_config( The config must contain: - An optional top-level ``exclude_patterns`` list that is prepended to every platform's own ``exclude_patterns``. + - An optional top-level ``visibility`` list of C++ stable API tiers, + used by platforms that do not set their own. Defaults to ``[public]``. - A ``platforms`` mapping whose values are per-platform view configs. Args: @@ -62,6 +75,7 @@ def parse_config( """ global_exclude_patterns: list[str] = raw_config.get("exclude_patterns") or [] global_exclude_symbols: list[str] = raw_config.get("exclude_symbols") or [] + global_visibility = _parse_visibility(raw_config.get("visibility"), DEFAULT_TIERS) platforms: dict = raw_config.get("platforms") or {} snapshot_configs = [] @@ -95,6 +109,7 @@ def parse_config( merged_symbols.append(symbol) seen_symbols.add(symbol) exclude_symbols = merged_symbols + visibility = _parse_visibility(view_config.get("visibility"), global_visibility) raw_variants = view_config.get("variants") or {} variants = [ @@ -115,6 +130,7 @@ def parse_config( codegen_platform=codegen_platform, input_filter=input_filter, exclude_symbols=exclude_symbols, + visibility=visibility, ) ) else: @@ -130,6 +146,7 @@ def parse_config( codegen_platform=codegen_platform, input_filter=input_filter, exclude_symbols=exclude_symbols, + visibility=visibility, ) ) diff --git a/scripts/cxx-api/parser/tiers.py b/scripts/cxx-api/parser/tiers.py index 9e565914f79f..a69f9c29e312 100644 --- a/scripts/cxx-api/parser/tiers.py +++ b/scripts/cxx-api/parser/tiers.py @@ -26,6 +26,8 @@ class Tier(enum.IntEnum): PUBLIC = 3 +DEFAULT_TIERS: frozenset[Tier] = frozenset({Tier.PUBLIC}) + _GUARD_TIERS = { "Private": Tier.PRIVATE, "Frameworks": Tier.FRAMEWORKS, @@ -178,12 +180,23 @@ def find_boundary_breaks(graph: HeaderGraph) -> list[BoundaryBreak]: return breaks -def skipped_headers(graph: HeaderGraph) -> set[str]: +def parse_tier(name: str) -> Tier: + try: + return Tier[name.upper()] + except KeyError: + valid = ", ".join(tier.name.lower() for tier in Tier) + raise ValueError(f"Unknown tier '{name}', expected one of: {valid}") from None + + +def skipped_headers( + graph: HeaderGraph, included_tiers: frozenset[Tier] = DEFAULT_TIERS +) -> 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. + Classified headers outside `included_tiers` that no header in an included + tier reaches. A header reachable from an included one is effectively part + of that tier, whatever its guard says. """ - reachable = {path for path, tier in graph.tiers.items() if tier == Tier.PUBLIC} + reachable = {path for path, tier in graph.tiers.items() if tier in included_tiers} queue = deque(reachable) while queue: node = queue.popleft() @@ -195,7 +208,7 @@ def skipped_headers(graph: HeaderGraph) -> set[str]: return { path for path, tier in graph.tiers.items() - if tier in (Tier.PRIVATE, Tier.FRAMEWORKS) and path not in reachable + if tier is not None and tier not in included_tiers and path not in reachable } diff --git a/scripts/cxx-api/tests/test_config.py b/scripts/cxx-api/tests/test_config.py index 563963078192..abe4e8ff841b 100644 --- a/scripts/cxx-api/tests/test_config.py +++ b/scripts/cxx-api/tests/test_config.py @@ -8,6 +8,7 @@ import unittest from ..parser.config import parse_config +from ..parser.tiers import Tier class TestParseConfig(unittest.TestCase): @@ -625,6 +626,54 @@ def test_per_platform_exclude_symbols_propagated_to_variants(self): for r in result: self.assertEqual(r.exclude_symbols, ["Fantom", "Android"]) + # ========================================================================= + # Visibility + # ========================================================================= + + def test_visibility_defaults_to_public(self): + """Missing visibility defaults to public only""" + result = parse_config({"platforms": {"TestView": {}}}, "/base/dir") + + self.assertEqual(result[0].visibility, frozenset({Tier.PUBLIC})) + + def test_per_platform_visibility_overrides_global(self): + """Per-platform visibility replaces the global one""" + config = { + "visibility": ["public", "frameworks"], + "platforms": { + "ViewA": {"visibility": ["private"]}, + "ViewB": {}, + }, + } + result = parse_config(config, "/base/dir") + + view_a = next(r for r in result if r.snapshot_name == "ViewA") + self.assertEqual(view_a.visibility, frozenset({Tier.PRIVATE})) + + view_b = next(r for r in result if r.snapshot_name == "ViewB") + self.assertEqual(view_b.visibility, frozenset({Tier.PUBLIC, Tier.FRAMEWORKS})) + + def test_visibility_propagated_to_variants(self): + """Visibility applies to every variant of a view""" + config = { + "platforms": { + "TestView": { + "visibility": ["public", "private"], + "variants": {"debug": {}, "release": {}}, + } + } + } + result = parse_config(config, "/base/dir") + + for r in result: + self.assertEqual(r.visibility, frozenset({Tier.PUBLIC, Tier.PRIVATE})) + + def test_unknown_visibility_rejected(self): + """An unknown tier name in visibility raises""" + config = {"platforms": {"TestView": {"visibility": ["internal"]}}} + with self.assertRaises(ValueError): + parse_config(config, "/base/dir") + # ========================================================================= # Variant naming # ========================================================================= diff --git a/scripts/cxx-api/tests/test_tiers.py b/scripts/cxx-api/tests/test_tiers.py index 727892989a51..35b9dbb949c0 100644 --- a/scripts/cxx-api/tests/test_tiers.py +++ b/scripts/cxx-api/tests/test_tiers.py @@ -220,8 +220,11 @@ def test_build_header_graph_ignores_self_include(self): # Skipped headers # ========================================================================= - def skipped(self): - return {os.path.relpath(p, self.root) for p in skipped_headers(self.graph())} + def skipped(self, *included_tiers): + args = (frozenset(included_tiers),) if included_tiers else () + return { + os.path.relpath(p, self.root) for p in skipped_headers(self.graph(), *args) + } def test_skips_unreached_private_and_frameworks_headers(self): self.write("Public.h", PUBLIC) @@ -243,3 +246,21 @@ def test_keeps_headers_reached_from_public(self): def test_never_skips_unclassified_headers(self): self.write("Unguarded.h") self.assertEqual(self.skipped(), set()) + + def test_keeps_included_tiers(self): + self.write("Public.h", PUBLIC) + self.write("Frameworks.h", FRAMEWORKS) + self.write("Private.h", PRIVATE) + + self.assertEqual(self.skipped(Tier.PUBLIC, Tier.FRAMEWORKS), {"Private.h"}) + self.assertEqual( + self.skipped(Tier.PUBLIC, Tier.FRAMEWORKS, Tier.PRIVATE), set() + ) + + def test_keeps_headers_reached_from_included_tiers(self): + self.write("Public.h", PUBLIC) + self.write("Frameworks.h", FRAMEWORKS + '#include "Private.h"\n') + self.write("Private.h", PRIVATE) + self.write("Other.h", PRIVATE) + + self.assertEqual(self.skipped(Tier.PUBLIC, Tier.FRAMEWORKS), {"Other.h"})