Full Code of facebook/react-native for AI

main 0e65df9152d9 cached
7392 files
56.9 MB
15.4M tokens
46668 symbols
3 requests
Copy disabled (too large) Download .txt
Showing preview only (61,760K chars total). Download the full file to get everything.
Repository: facebook/react-native
Branch: main
Commit: 0e65df9152d9
Files: 7392
Total size: 56.9 MB

Directory structure:
gitextract_q2tq5gs6/

├── .babelrc
├── .bundle/
│   └── config
├── .clang-format
├── .editorconfig
├── .eslintignore
├── .eslintrc.js
├── .flowconfig
├── .gitattributes
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.yml
│   │   ├── config.yml
│   │   ├── debugger_bug_report.yml
│   │   └── new_architecture_bug_report.yml
│   ├── ISSUE_TEMPLATE.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── RELEASE_TEMPLATE.md
│   ├── SUPPORT.md
│   ├── actions/
│   │   ├── build-android/
│   │   │   └── action.yml
│   │   ├── build-fantom-runner/
│   │   │   └── action.yml
│   │   ├── build-npm-package/
│   │   │   └── action.yml
│   │   ├── create-release/
│   │   │   └── action.yml
│   │   ├── diff-js-api-changes/
│   │   │   └── action.yml
│   │   ├── maestro-android/
│   │   │   └── action.yml
│   │   ├── maestro-ios/
│   │   │   └── action.yml
│   │   ├── post-pr-comment/
│   │   │   └── action.yml
│   │   ├── prepare-hermes-v1-app/
│   │   │   └── action.yml
│   │   ├── prepare-ios-tests/
│   │   │   └── action.yml
│   │   ├── run-fantom-tests/
│   │   │   └── action.yml
│   │   ├── setup-gradle/
│   │   │   └── action.yml
│   │   ├── setup-node/
│   │   │   └── action.yml
│   │   ├── setup-xcode/
│   │   │   └── action.yml
│   │   ├── test-ios-helloworld/
│   │   │   └── action.yml
│   │   ├── test-ios-rntester/
│   │   │   └── action.yml
│   │   ├── test-js/
│   │   │   └── action.yml
│   │   └── yarn-install/
│   │       └── action.yml
│   ├── workflow-scripts/
│   │   ├── __tests__/
│   │   │   ├── createDraftRelease-test.js
│   │   │   ├── extractIssueOncalls-test.js
│   │   │   ├── generateChangelog-test.js
│   │   │   ├── publishTemplate-test.js
│   │   │   ├── verifyArtifactsAreOnMaven-test.js
│   │   │   ├── verifyPublishedPackage-test.js
│   │   │   └── verifyReleaseOnNpm-test.js
│   │   ├── actOnLabel.js
│   │   ├── addDescriptiveLabels.js
│   │   ├── analyze_scripts.sh
│   │   ├── checkBranchTarget.js
│   │   ├── checkForReproducer.js
│   │   ├── createDraftRelease.js
│   │   ├── exec_swallow_error.sh
│   │   ├── extractIssueOncalls.js
│   │   ├── generateChangelog.js
│   │   ├── hermes-v1.patch
│   │   ├── lint_files.sh
│   │   ├── maestro-android.js
│   │   ├── maestro-ios.js
│   │   ├── publishTemplate.js
│   │   ├── selectLatestHermesV1Version.js
│   │   ├── utils.js
│   │   ├── validatePRBody.js
│   │   ├── verifyArtifactsAreOnMaven.js
│   │   ├── verifyPublishedPackage.js
│   │   ├── verifyReleaseOnNpm.js
│   │   └── verifyVersion.js
│   └── workflows/
│       ├── analyze-pr.yml
│       ├── api-changes.yml
│       ├── autorebase.yml
│       ├── bump-podfile-lock.yml
│       ├── cache-reaper.yml
│       ├── check-for-reproducer.yml
│       ├── close-pr.yml
│       ├── create-draft-release.yml
│       ├── create-release.yml
│       ├── generate-changelog.yml
│       ├── monitor-new-issues.yml
│       ├── needs-attention.yml
│       ├── nightly.yml
│       ├── on-issue-labeled.yml
│       ├── prebuild-ios-core.yml
│       ├── prebuild-ios-dependencies.yml
│       ├── publish-bumped-packages.yml
│       ├── publish-release.yml
│       ├── retry-workflow.yml
│       ├── stale-bot.yml
│       ├── test-all.yml
│       ├── validate-cxx-api-snapshots.yml
│       └── validate-dotslash-artifacts.yml
├── .gitignore
├── .markdownlint-cli2.mjs
├── .prettierignore
├── .prettierrc.js
├── CHANGELOG-0.5x.md
├── CHANGELOG-0.6x.md
├── CHANGELOG-0.7x.md
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── ECOSYSTEM.md
├── Gemfile
├── LICENSE
├── README.md
├── __docs__/
│   ├── GUIDELINES.md
│   ├── README-template.md
│   └── README.md
├── build.gradle.kts
├── flow-typed/
│   ├── environment/
│   │   └── node.js
│   └── npm/
│       ├── @expo/
│       │   └── spawn-async_v1.x.x.js
│       ├── @isaacs/
│       │   └── ttlcache_1.x.x.js
│       ├── @octokit/
│       │   └── rest_v22.x.x.js
│       ├── @react-native-community/
│       │   ├── cli-server-api_v19.x.x.js
│       │   └── cli-types_v19.x.x.js
│       ├── @tsconfig/
│       │   └── node22_v22.x.x.js
│       ├── actual-request-url_v1.x.x.js
│       ├── ansi-regex_v5.x.x.js
│       ├── babel-traverse_v7.x.x.js
│       ├── babel-types_v7.x.x.js
│       ├── babel_v7.x.x.js
│       ├── base64-js_v1.x.x.js
│       ├── chrome-launcher_v0.15.x.js
│       ├── chromium-edge-launcher_v0.2.x.js
│       ├── commander_v12.x.x.js
│       ├── connect_v3.x.x.js
│       ├── cross-spawn_v7.x.x.js
│       ├── debug_v4.4.x.js
│       ├── deep-equal_v1.x.x.js
│       ├── electron-packager_v18.x.x.js
│       ├── electron_v36.x.x.js
│       ├── execa_v5.x.x.js
│       ├── fb-dotslash_v0.x.x.js
│       ├── ini_v5.x.x.js
│       ├── jest-diff_v29.x.x.js
│       ├── jest-snapshot_v29.x.x.js
│       ├── jest.js
│       ├── jsonc-parser_v2.2.x.js
│       ├── listr2_v8.x.x.js
│       ├── listr_v14.x.x.js
│       ├── node-fetch_v2.x.x.js
│       ├── open_v7.x.x.js
│       ├── pretty-format_v29.x.x.js
│       ├── promise_v8.x.x.js
│       ├── react-dom_v17.x.x.js
│       ├── react-test-renderer_v16.x.x.js
│       ├── rxjs_v6.x.x.js
│       ├── selfsigned_v2.x.x.js
│       ├── semver_v7.x.x.js
│       ├── serve-static_v1.x.x.js
│       ├── shelljs_v0.x.x.js
│       ├── signedsource_v1.x.x.js
│       ├── stacktrace-parser_v0.1.x.js
│       ├── tinybench_v4.1.x.js
│       ├── tinyglobby_v0.2.x.js
│       ├── typescript_v5.x.x.js
│       ├── undici_v6.x.x.js
│       ├── wait-for-expect_v3.x.x.js
│       ├── ws_v7.x.x.js
│       └── yargs_v17.x.x.js
├── gradle/
│   └── wrapper/
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── jest/
│   └── preprocessor.js
├── jest.config.js
├── package.json
├── packages/
│   ├── assets/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── path-support-test.js
│   │   ├── package.json
│   │   ├── path-support.js
│   │   └── registry.js
│   ├── babel-plugin-codegen/
│   │   ├── README.md
│   │   ├── __test_fixtures__/
│   │   │   ├── failures.js
│   │   │   └── fixtures.js
│   │   ├── __tests__/
│   │   │   ├── __snapshots__/
│   │   │   │   └── index-test.js.snap
│   │   │   └── index-test.js
│   │   ├── index.js
│   │   └── package.json
│   ├── community-cli-plugin/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── commands/
│   │       │   ├── bundle/
│   │       │   │   ├── __mocks__/
│   │       │   │   │   └── sign.js
│   │       │   │   ├── __tests__/
│   │       │   │   │   ├── filterPlatformAssetScales-test.js
│   │       │   │   │   ├── getAssetDestPathAndroid-test.js
│   │       │   │   │   └── getAssetDestPathIOS-test.js
│   │       │   │   ├── assetCatalogIOS.js
│   │       │   │   ├── assetPathUtils.js
│   │       │   │   ├── buildBundle.js
│   │       │   │   ├── createKeepFileAsync.js
│   │       │   │   ├── filterPlatformAssetScales.js
│   │       │   │   ├── getAssetDestPathAndroid.js
│   │       │   │   ├── getAssetDestPathIOS.js
│   │       │   │   ├── index.js
│   │       │   │   └── saveAssets.js
│   │       │   └── start/
│   │       │       ├── OpenDebuggerKeyboardHandler.js
│   │       │       ├── attachKeyHandlers.js
│   │       │       ├── index.js
│   │       │       ├── middleware.js
│   │       │       └── runServer.js
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       └── utils/
│   │           ├── createDevMiddlewareLogger.js
│   │           ├── errors.js
│   │           ├── isDevServerRunning.js
│   │           ├── loadMetroConfig.js
│   │           ├── metroPlatformResolver.js
│   │           ├── parseKeyValueParamArray.js
│   │           └── version.js
│   ├── core-cli-utils/
│   │   ├── .eslintrc.json
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       ├── private/
│   │       │   ├── android.js
│   │       │   ├── app.js
│   │       │   ├── apple.js
│   │       │   ├── clean.js
│   │       │   ├── types.js
│   │       │   └── utils.js
│   │       └── public/
│   │           ├── version.flow.js
│   │           └── version.js
│   ├── debugger-frontend/
│   │   ├── BUILD_INFO
│   │   ├── README.md
│   │   ├── dist/
│   │   │   └── third-party/
│   │   │       ├── LICENSE
│   │   │       └── front_end/
│   │   │           ├── Images/
│   │   │           │   ├── Images.js
│   │   │           │   ├── chromeLeft.avif
│   │   │           │   ├── chromeMiddle.avif
│   │   │           │   ├── chromeRight.avif
│   │   │           │   ├── cssoverview_icons_2x.avif
│   │   │           │   └── nodeIcon.avif
│   │   │           ├── Tests.js
│   │   │           ├── application_tokens.css
│   │   │           ├── core/
│   │   │           │   ├── common/
│   │   │           │   │   └── common.js
│   │   │           │   ├── dom_extension/
│   │   │           │   │   └── dom_extension.js
│   │   │           │   ├── host/
│   │   │           │   │   └── host.js
│   │   │           │   ├── i18n/
│   │   │           │   │   ├── i18n.js
│   │   │           │   │   └── locales/
│   │   │           │   │       ├── en-US.json
│   │   │           │   │       └── zh.json
│   │   │           │   ├── platform/
│   │   │           │   │   └── platform.js
│   │   │           │   ├── protocol_client/
│   │   │           │   │   └── protocol_client.js
│   │   │           │   ├── rn_experiments/
│   │   │           │   │   └── rn_experiments.js
│   │   │           │   ├── root/
│   │   │           │   │   └── root.js
│   │   │           │   └── sdk/
│   │   │           │       ├── sdk-meta.js
│   │   │           │       └── sdk.js
│   │   │           ├── design_system_tokens.css
│   │   │           ├── device_mode_emulation_frame.html
│   │   │           ├── devtools_app.html
│   │   │           ├── devtools_compatibility.js
│   │   │           ├── emulated_devices/
│   │   │           │   └── optimized/
│   │   │           │       ├── MotoG4-landscape.avif
│   │   │           │       ├── MotoG4-portrait.avif
│   │   │           │       ├── Nexus5X-landscape.avif
│   │   │           │       ├── Nexus5X-portrait.avif
│   │   │           │       ├── Nexus6P-landscape.avif
│   │   │           │       ├── Nexus6P-portrait.avif
│   │   │           │       ├── google-nest-hub-horizontal.avif
│   │   │           │       ├── google-nest-hub-max-horizontal.avif
│   │   │           │       ├── google-nexus-5-horizontal-default-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-default-2x.avif
│   │   │           │       ├── google-nexus-5-horizontal-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5-horizontal-navigation-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-navigation-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-default-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-default-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-navigation-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-navigation-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-default-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-default-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-navigation-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-navigation-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-default-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-default-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-navigation-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-navigation-2x.avif
│   │   │           │       ├── iPad-landscape.avif
│   │   │           │       ├── iPad-portrait.avif
│   │   │           │       ├── iPhone5-landscape.avif
│   │   │           │       ├── iPhone5-portrait.avif
│   │   │           │       ├── iPhone6-landscape.avif
│   │   │           │       ├── iPhone6-portrait.avif
│   │   │           │       ├── iPhone6Plus-landscape.avif
│   │   │           │       └── iPhone6Plus-portrait.avif
│   │   │           ├── entrypoints/
│   │   │           │   ├── device_mode_emulation_frame/
│   │   │           │   │   └── device_mode_emulation_frame.js
│   │   │           │   ├── devtools_app/
│   │   │           │   │   └── devtools_app.js
│   │   │           │   ├── formatter_worker/
│   │   │           │   │   ├── FormatterActions.js
│   │   │           │   │   ├── formatter_worker-entrypoint.js
│   │   │           │   │   └── formatter_worker.js
│   │   │           │   ├── heap_snapshot_worker/
│   │   │           │   │   ├── heap_snapshot_worker-entrypoint.js
│   │   │           │   │   └── heap_snapshot_worker.js
│   │   │           │   ├── inspector/
│   │   │           │   │   └── inspector.js
│   │   │           │   ├── inspector_main/
│   │   │           │   │   ├── inspector_main-meta.js
│   │   │           │   │   └── inspector_main.js
│   │   │           │   ├── js_app/
│   │   │           │   │   └── js_app.js
│   │   │           │   ├── lighthouse_worker/
│   │   │           │   │   └── lighthouse_worker.js
│   │   │           │   ├── main/
│   │   │           │   │   ├── main-meta.js
│   │   │           │   │   └── main.js
│   │   │           │   ├── ndb_app/
│   │   │           │   │   └── ndb_app.js
│   │   │           │   ├── node_app/
│   │   │           │   │   └── node_app.js
│   │   │           │   ├── rehydrated_devtools_app/
│   │   │           │   │   └── rehydrated_devtools_app.js
│   │   │           │   ├── rn_fusebox/
│   │   │           │   │   └── rn_fusebox.js
│   │   │           │   ├── shell/
│   │   │           │   │   └── shell.js
│   │   │           │   ├── wasmparser_worker/
│   │   │           │   │   ├── wasmparser_worker-entrypoint.js
│   │   │           │   │   └── wasmparser_worker.js
│   │   │           │   └── worker_app/
│   │   │           │       └── worker_app.js
│   │   │           ├── inspector.html
│   │   │           ├── integration_test_runner.html
│   │   │           ├── js_app.html
│   │   │           ├── legacy_test_runner/
│   │   │           │   ├── legacy_test_runner.js
│   │   │           │   └── test_runner/
│   │   │           │       └── test_runner.js
│   │   │           ├── models/
│   │   │           │   ├── ai_assistance/
│   │   │           │   │   └── ai_assistance.js
│   │   │           │   ├── autofill_manager/
│   │   │           │   │   └── autofill_manager.js
│   │   │           │   ├── bindings/
│   │   │           │   │   └── bindings.js
│   │   │           │   ├── breakpoints/
│   │   │           │   │   └── breakpoints.js
│   │   │           │   ├── cpu_profile/
│   │   │           │   │   └── cpu_profile.js
│   │   │           │   ├── crux-manager/
│   │   │           │   │   └── crux-manager.js
│   │   │           │   ├── emulation/
│   │   │           │   │   └── emulation.js
│   │   │           │   ├── extensions/
│   │   │           │   │   └── extensions.js
│   │   │           │   ├── formatter/
│   │   │           │   │   └── formatter.js
│   │   │           │   ├── har/
│   │   │           │   │   └── har.js
│   │   │           │   ├── heap_snapshot_model/
│   │   │           │   │   └── heap_snapshot_model.js
│   │   │           │   ├── issues_manager/
│   │   │           │   │   ├── descriptions/
│   │   │           │   │   │   ├── CoepCoopSandboxedIframeCannotNavigateToCoopPage.md
│   │   │           │   │   │   ├── CoepCorpNotSameOrigin.md
│   │   │           │   │   │   ├── CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md
│   │   │           │   │   │   ├── CoepCorpNotSameSite.md
│   │   │           │   │   │   ├── CoepFrameResourceNeedsCoepHeader.md
│   │   │           │   │   │   ├── CompatibilityModeQuirks.md
│   │   │           │   │   │   ├── CookieAttributeValueExceedsMaxSize.md
│   │   │           │   │   │   ├── LowTextContrast.md
│   │   │           │   │   │   ├── SameSiteExcludeContextDowngradeRead.md
│   │   │           │   │   │   ├── SameSiteExcludeContextDowngradeSet.md
│   │   │           │   │   │   ├── SameSiteExcludeNavigationContextDowngrade.md
│   │   │           │   │   │   ├── SameSiteInvalidSameParty.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureErrorRead.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureErrorSet.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureWarnRead.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureWarnSet.md
│   │   │           │   │   │   ├── SameSiteUnspecifiedLaxAllowUnsafeRead.md
│   │   │           │   │   │   ├── SameSiteUnspecifiedLaxAllowUnsafeSet.md
│   │   │           │   │   │   ├── SameSiteWarnCrossDowngradeRead.md
│   │   │           │   │   │   ├── SameSiteWarnCrossDowngradeSet.md
│   │   │           │   │   │   ├── SameSiteWarnStrictLaxDowngradeStrict.md
│   │   │           │   │   │   ├── arInsecureContext.md
│   │   │           │   │   │   ├── arInvalidInfoHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterOsSourceHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterOsTriggerHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterSourceHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterTriggerHeader.md
│   │   │           │   │   │   ├── arNavigationRegistrationUniqueScopeAlreadySet.md
│   │   │           │   │   │   ├── arNavigationRegistrationWithoutTransientUserActivation.md
│   │   │           │   │   │   ├── arNoRegisterOsSourceHeader.md
│   │   │           │   │   │   ├── arNoRegisterOsTriggerHeader.md
│   │   │           │   │   │   ├── arNoRegisterSourceHeader.md
│   │   │           │   │   │   ├── arNoRegisterTriggerHeader.md
│   │   │           │   │   │   ├── arNoWebOrOsSupport.md
│   │   │           │   │   │   ├── arOsSourceIgnored.md
│   │   │           │   │   │   ├── arOsTriggerIgnored.md
│   │   │           │   │   │   ├── arPermissionPolicyDisabled.md
│   │   │           │   │   │   ├── arSourceAndTriggerHeaders.md
│   │   │           │   │   │   ├── arSourceIgnored.md
│   │   │           │   │   │   ├── arTriggerIgnored.md
│   │   │           │   │   │   ├── arUntrustworthyReportingOrigin.md
│   │   │           │   │   │   ├── arWebAndOsHeaders.md
│   │   │           │   │   │   ├── bounceTrackingMitigations.md
│   │   │           │   │   │   ├── clientHintMetaTagAllowListInvalidOrigin.md
│   │   │           │   │   │   ├── clientHintMetaTagModifiedHTML.md
│   │   │           │   │   │   ├── cookieCrossSiteRedirectDowngrade.md
│   │   │           │   │   │   ├── cookieExcludeBlockedWithinRelatedWebsiteSet.md
│   │   │           │   │   │   ├── cookieExcludeDomainNonAscii.md
│   │   │           │   │   │   ├── cookieExcludePortMismatch.md
│   │   │           │   │   │   ├── cookieExcludeSchemeMismatch.md
│   │   │           │   │   │   ├── cookieExcludeThirdPartyPhaseoutRead.md
│   │   │           │   │   │   ├── cookieExcludeThirdPartyPhaseoutSet.md
│   │   │           │   │   │   ├── cookieWarnDomainNonAscii.md
│   │   │           │   │   │   ├── cookieWarnMetadataGrantRead.md
│   │   │           │   │   │   ├── cookieWarnMetadataGrantSet.md
│   │   │           │   │   │   ├── cookieWarnThirdPartyPhaseoutRead.md
│   │   │           │   │   │   ├── cookieWarnThirdPartyPhaseoutSet.md
│   │   │           │   │   │   ├── corsAllowCredentialsRequired.md
│   │   │           │   │   │   ├── corsDisabledScheme.md
│   │   │           │   │   │   ├── corsDisallowedByMode.md
│   │   │           │   │   │   ├── corsHeaderDisallowedByPreflightResponse.md
│   │   │           │   │   │   ├── corsInsecurePrivateNetwork.md
│   │   │           │   │   │   ├── corsInvalidHeaderValues.md
│   │   │           │   │   │   ├── corsLocalNetworkAccessPermissionDenied.md
│   │   │           │   │   │   ├── corsMethodDisallowedByPreflightResponse.md
│   │   │           │   │   │   ├── corsNoCorsRedirectModeNotFollow.md
│   │   │           │   │   │   ├── corsOriginMismatch.md
│   │   │           │   │   │   ├── corsPreflightAllowPrivateNetworkError.md
│   │   │           │   │   │   ├── corsPreflightResponseInvalid.md
│   │   │           │   │   │   ├── corsPrivateNetworkPermissionDenied.md
│   │   │           │   │   │   ├── corsRedirectContainsCredentials.md
│   │   │           │   │   │   ├── corsWildcardOriginNotAllowed.md
│   │   │           │   │   │   ├── cspEvalViolation.md
│   │   │           │   │   │   ├── cspInlineViolation.md
│   │   │           │   │   │   ├── cspTrustedTypesPolicyViolation.md
│   │   │           │   │   │   ├── cspTrustedTypesSinkViolation.md
│   │   │           │   │   │   ├── cspURLViolation.md
│   │   │           │   │   │   ├── deprecation.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestApprovalDeclined.md
│   │   │           │   │   │   ├── federatedAuthRequestCanceled.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestErrorFetchingSignin.md
│   │   │           │   │   │   ├── federatedAuthRequestErrorIdToken.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenInvalidRequest.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestInvalidSigninResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestTooManyRequests.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestInvalidAccountsResponse.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoAccountSharingPermission.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoApiPermission.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotIframe.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotSameOrigin.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotSignedInWithIdp.md
│   │   │           │   │   │   ├── fetchingPartitionedBlobURL.md
│   │   │           │   │   │   ├── genericFormAriaLabelledByToNonExistingId.md
│   │   │           │   │   │   ├── genericFormAutocompleteAttributeEmptyError.md
│   │   │           │   │   │   ├── genericFormDuplicateIdForInputError.md
│   │   │           │   │   │   ├── genericFormEmptyIdAndNameAttributesForInputError.md
│   │   │           │   │   │   ├── genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md
│   │   │           │   │   │   ├── genericFormInputHasWrongButWellIntendedAutocompleteValueError.md
│   │   │           │   │   │   ├── genericFormInputWithNoLabelError.md
│   │   │           │   │   │   ├── genericFormLabelForMatchesNonExistingIdError.md
│   │   │           │   │   │   ├── genericFormLabelForNameError.md
│   │   │           │   │   │   ├── genericFormLabelHasNeitherForNorNestedInput.md
│   │   │           │   │   │   ├── genericResponseWasBlockedByORB.md
│   │   │           │   │   │   ├── heavyAd.md
│   │   │           │   │   │   ├── mixedContent.md
│   │   │           │   │   │   ├── navigatingPartitionedBlobURL.md
│   │   │           │   │   │   ├── placeholderDescriptionForInvisibleIssues.md
│   │   │           │   │   │   ├── propertyRuleInvalidNameIssue.md
│   │   │           │   │   │   ├── propertyRuleIssue.md
│   │   │           │   │   │   ├── selectElementAccessibilityDisallowedOptGroupChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityDisallowedSelectChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentLegendChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentOptionChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityNonPhrasingContentOptionChild.md
│   │   │           │   │   │   ├── sharedArrayBuffer.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorCrossOriginNoCorsRequest.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorDictionaryLoadFailure.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorMatchingDictionaryNotUsed.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorCossOriginNoCorsRequest.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorDisallowedBySettings.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorExpiredResponse.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorFeatureDisabled.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInsufficientResources.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInvalidMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInvalidStructuredHeader.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNavigationRequest.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNoMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonListMatchDestField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonSecureContext.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringIdField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringInMatchDestList.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonTokenTypeField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorRequestAborted.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorShuttingDown.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorTooLongIdField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorUnsupportedType.md
│   │   │           │   │   │   ├── sriInvalidSignatureHeader.md
│   │   │           │   │   │   ├── sriInvalidSignatureInputHeader.md
│   │   │           │   │   │   ├── sriMissingSignatureHeader.md
│   │   │           │   │   │   ├── sriMissingSignatureInputHeader.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsIncorrectLength.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsNotByteSequence.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsParameterized.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidComponentName.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidComponentType.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidDerivedComponentParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidHeaderComponentParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderKeyIdLength.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderMissingLabel.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderMissingRequiredParameters.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderValueMissingComponents.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderValueNotInnerList.md
│   │   │           │   │   │   ├── sriValidationFailedIntegrityMismatch.md
│   │   │           │   │   │   ├── sriValidationFailedInvalidLength.md
│   │   │           │   │   │   ├── sriValidationFailedSignatureExpired.md
│   │   │           │   │   │   ├── sriValidationFailedSignatureMismatch.md
│   │   │           │   │   │   ├── stylesheetLateImport.md
│   │   │           │   │   │   └── stylesheetRequestFailed.md
│   │   │           │   │   └── issues_manager.js
│   │   │           │   ├── javascript_metadata/
│   │   │           │   │   └── javascript_metadata.js
│   │   │           │   ├── live-metrics/
│   │   │           │   │   ├── live-metrics.js
│   │   │           │   │   └── web-vitals-injected/
│   │   │           │   │       ├── spec/
│   │   │           │   │       │   └── spec.js
│   │   │           │   │       └── web-vitals-injected.generated.js
│   │   │           │   ├── logs/
│   │   │           │   │   ├── logs-meta.js
│   │   │           │   │   └── logs.js
│   │   │           │   ├── persistence/
│   │   │           │   │   ├── persistence-meta.js
│   │   │           │   │   └── persistence.js
│   │   │           │   ├── project_settings/
│   │   │           │   │   └── project_settings.js
│   │   │           │   ├── react_native/
│   │   │           │   │   └── react_native.js
│   │   │           │   ├── source_map_scopes/
│   │   │           │   │   └── source_map_scopes.js
│   │   │           │   ├── text_utils/
│   │   │           │   │   └── text_utils.js
│   │   │           │   ├── trace/
│   │   │           │   │   ├── extras/
│   │   │           │   │   │   └── extras.js
│   │   │           │   │   ├── handlers/
│   │   │           │   │   │   └── handlers.js
│   │   │           │   │   ├── helpers/
│   │   │           │   │   │   └── helpers.js
│   │   │           │   │   ├── insights/
│   │   │           │   │   │   └── insights.js
│   │   │           │   │   ├── lantern/
│   │   │           │   │   │   ├── core/
│   │   │           │   │   │   │   └── core.js
│   │   │           │   │   │   ├── graph/
│   │   │           │   │   │   │   └── graph.js
│   │   │           │   │   │   ├── lantern.js
│   │   │           │   │   │   ├── metrics/
│   │   │           │   │   │   │   └── metrics.js
│   │   │           │   │   │   ├── simulation/
│   │   │           │   │   │   │   └── simulation.js
│   │   │           │   │   │   └── types/
│   │   │           │   │   │       └── types.js
│   │   │           │   │   ├── trace.js
│   │   │           │   │   └── types/
│   │   │           │   │       └── types.js
│   │   │           │   ├── workspace/
│   │   │           │   │   └── workspace.js
│   │   │           │   └── workspace_diff/
│   │   │           │       └── workspace_diff.js
│   │   │           ├── ndb_app.html
│   │   │           ├── node_app.html
│   │   │           ├── panels/
│   │   │           │   ├── accessibility/
│   │   │           │   │   ├── accessibility-meta.js
│   │   │           │   │   └── accessibility.js
│   │   │           │   ├── ai_assistance/
│   │   │           │   │   ├── ai_assistance-meta.js
│   │   │           │   │   └── ai_assistance.js
│   │   │           │   ├── animation/
│   │   │           │   │   ├── animation-meta.js
│   │   │           │   │   └── animation.js
│   │   │           │   ├── application/
│   │   │           │   │   ├── application-meta.js
│   │   │           │   │   ├── application.js
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   └── preloading/
│   │   │           │   │       ├── components/
│   │   │           │   │       │   └── components.js
│   │   │           │   │       └── helper/
│   │   │           │   │           └── helper.js
│   │   │           │   ├── autofill/
│   │   │           │   │   ├── autofill-meta.js
│   │   │           │   │   └── autofill.js
│   │   │           │   ├── browser_debugger/
│   │   │           │   │   ├── browser_debugger-meta.js
│   │   │           │   │   └── browser_debugger.js
│   │   │           │   ├── changes/
│   │   │           │   │   ├── changes-meta.js
│   │   │           │   │   └── changes.js
│   │   │           │   ├── common/
│   │   │           │   │   └── common.js
│   │   │           │   ├── console/
│   │   │           │   │   ├── console-meta.js
│   │   │           │   │   └── console.js
│   │   │           │   ├── console_counters/
│   │   │           │   │   ├── console_counters-meta.js
│   │   │           │   │   └── console_counters.js
│   │   │           │   ├── coverage/
│   │   │           │   │   ├── coverage-meta.js
│   │   │           │   │   └── coverage.js
│   │   │           │   ├── css_overview/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── css_overview-meta.js
│   │   │           │   │   └── css_overview.js
│   │   │           │   ├── developer_resources/
│   │   │           │   │   ├── developer_resources-meta.js
│   │   │           │   │   └── developer_resources.js
│   │   │           │   ├── elements/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── elements-meta.js
│   │   │           │   │   └── elements.js
│   │   │           │   ├── emulation/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── emulation-meta.js
│   │   │           │   │   └── emulation.js
│   │   │           │   ├── event_listeners/
│   │   │           │   │   └── event_listeners.js
│   │   │           │   ├── explain/
│   │   │           │   │   ├── explain-meta.js
│   │   │           │   │   └── explain.js
│   │   │           │   ├── issues/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── issues-meta.js
│   │   │           │   │   └── issues.js
│   │   │           │   ├── js_timeline/
│   │   │           │   │   ├── js_timeline-meta.js
│   │   │           │   │   └── js_timeline.js
│   │   │           │   ├── layer_viewer/
│   │   │           │   │   ├── layer_viewer-meta.js
│   │   │           │   │   └── layer_viewer.js
│   │   │           │   ├── layers/
│   │   │           │   │   ├── layers-meta.js
│   │   │           │   │   └── layers.js
│   │   │           │   ├── lighthouse/
│   │   │           │   │   ├── lighthouse-meta.js
│   │   │           │   │   └── lighthouse.js
│   │   │           │   ├── linear_memory_inspector/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── linear_memory_inspector-meta.js
│   │   │           │   │   └── linear_memory_inspector.js
│   │   │           │   ├── media/
│   │   │           │   │   ├── media-meta.js
│   │   │           │   │   └── media.js
│   │   │           │   ├── mobile_throttling/
│   │   │           │   │   ├── mobile_throttling-meta.js
│   │   │           │   │   └── mobile_throttling.js
│   │   │           │   ├── network/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── forward/
│   │   │           │   │   │   └── forward.js
│   │   │           │   │   ├── network-meta.js
│   │   │           │   │   └── network.js
│   │   │           │   ├── performance_monitor/
│   │   │           │   │   ├── performance_monitor-meta.js
│   │   │           │   │   └── performance_monitor.js
│   │   │           │   ├── profiler/
│   │   │           │   │   ├── profiler-meta.js
│   │   │           │   │   └── profiler.js
│   │   │           │   ├── protocol_monitor/
│   │   │           │   │   ├── protocol_monitor-meta.js
│   │   │           │   │   └── protocol_monitor.js
│   │   │           │   ├── react_devtools/
│   │   │           │   │   ├── react_devtools.js
│   │   │           │   │   ├── react_devtools_components-meta.js
│   │   │           │   │   └── react_devtools_profiler-meta.js
│   │   │           │   ├── recorder/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── controllers/
│   │   │           │   │   │   └── controllers.js
│   │   │           │   │   ├── converters/
│   │   │           │   │   │   └── converters.js
│   │   │           │   │   ├── extensions/
│   │   │           │   │   │   └── extensions.js
│   │   │           │   │   ├── injected/
│   │   │           │   │   │   ├── injected.generated.js
│   │   │           │   │   │   └── injected.js
│   │   │           │   │   ├── models/
│   │   │           │   │   │   └── models.js
│   │   │           │   │   ├── recorder-actions/
│   │   │           │   │   │   └── recorder-actions.js
│   │   │           │   │   ├── recorder-meta.js
│   │   │           │   │   ├── recorder.js
│   │   │           │   │   └── util/
│   │   │           │   │       └── util.js
│   │   │           │   ├── rn_welcome/
│   │   │           │   │   ├── rn_welcome-meta.js
│   │   │           │   │   └── rn_welcome.js
│   │   │           │   ├── screencast/
│   │   │           │   │   ├── screencast-meta.js
│   │   │           │   │   └── screencast.js
│   │   │           │   ├── search/
│   │   │           │   │   └── search.js
│   │   │           │   ├── security/
│   │   │           │   │   ├── security-meta.js
│   │   │           │   │   └── security.js
│   │   │           │   ├── sensors/
│   │   │           │   │   ├── sensors-meta.js
│   │   │           │   │   └── sensors.js
│   │   │           │   ├── settings/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── emulation/
│   │   │           │   │   │   ├── components/
│   │   │           │   │   │   │   └── components.js
│   │   │           │   │   │   ├── emulation-meta.js
│   │   │           │   │   │   ├── emulation.js
│   │   │           │   │   │   └── utils/
│   │   │           │   │   │       └── utils.js
│   │   │           │   │   ├── settings-meta.js
│   │   │           │   │   └── settings.js
│   │   │           │   ├── snippets/
│   │   │           │   │   └── snippets.js
│   │   │           │   ├── sources/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── sources-meta.js
│   │   │           │   │   └── sources.js
│   │   │           │   ├── timeline/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   ├── components.js
│   │   │           │   │   │   └── insights/
│   │   │           │   │   │       └── insights.js
│   │   │           │   │   ├── extensions/
│   │   │           │   │   │   └── extensions.js
│   │   │           │   │   ├── overlays/
│   │   │           │   │   │   ├── components/
│   │   │           │   │   │   │   └── components.js
│   │   │           │   │   │   └── overlays.js
│   │   │           │   │   ├── timeline-meta.js
│   │   │           │   │   ├── timeline.js
│   │   │           │   │   └── utils/
│   │   │           │   │       └── utils.js
│   │   │           │   ├── utils/
│   │   │           │   │   └── utils.js
│   │   │           │   ├── web_audio/
│   │   │           │   │   ├── graph_visualizer/
│   │   │           │   │   │   └── graph_visualizer.js
│   │   │           │   │   ├── web_audio-meta.js
│   │   │           │   │   └── web_audio.js
│   │   │           │   ├── webauthn/
│   │   │           │   │   ├── webauthn-meta.js
│   │   │           │   │   └── webauthn.js
│   │   │           │   └── whats_new/
│   │   │           │       ├── resources/
│   │   │           │       │   └── WNDT.md
│   │   │           │       ├── whats_new-meta.js
│   │   │           │       └── whats_new.js
│   │   │           ├── rehydrated_devtools_app.html
│   │   │           ├── rn_fusebox.html
│   │   │           ├── services/
│   │   │           │   ├── puppeteer/
│   │   │           │   │   └── puppeteer.js
│   │   │           │   ├── trace_bounds/
│   │   │           │   │   └── trace_bounds.js
│   │   │           │   ├── tracing/
│   │   │           │   │   └── tracing.js
│   │   │           │   └── window_bounds/
│   │   │           │       └── window_bounds.js
│   │   │           ├── third_party/
│   │   │           │   ├── acorn/
│   │   │           │   │   └── acorn.js
│   │   │           │   ├── chromium/
│   │   │           │   │   └── client-variations/
│   │   │           │   │       └── client-variations.js
│   │   │           │   ├── codemirror.next/
│   │   │           │   │   ├── chunk/
│   │   │           │   │   │   ├── angular.js
│   │   │           │   │   │   ├── codemirror.js
│   │   │           │   │   │   ├── cpp.js
│   │   │           │   │   │   ├── java.js
│   │   │           │   │   │   ├── legacy.js
│   │   │           │   │   │   ├── less.js
│   │   │           │   │   │   ├── markdown.js
│   │   │           │   │   │   ├── php.js
│   │   │           │   │   │   ├── python.js
│   │   │           │   │   │   ├── sass.js
│   │   │           │   │   │   ├── svelte.js
│   │   │           │   │   │   ├── vue.js
│   │   │           │   │   │   ├── wast.js
│   │   │           │   │   │   └── xml.js
│   │   │           │   │   └── codemirror.next.js
│   │   │           │   ├── csp_evaluator/
│   │   │           │   │   └── csp_evaluator.js
│   │   │           │   ├── diff/
│   │   │           │   │   └── diff.js
│   │   │           │   ├── i18n/
│   │   │           │   │   └── i18n.js
│   │   │           │   ├── intl-messageformat/
│   │   │           │   │   └── intl-messageformat.js
│   │   │           │   ├── json5/
│   │   │           │   │   └── json5.js
│   │   │           │   ├── legacy-javascript/
│   │   │           │   │   └── legacy-javascript.js
│   │   │           │   ├── lighthouse/
│   │   │           │   │   ├── lighthouse-dt-bundle.js
│   │   │           │   │   └── report/
│   │   │           │   │       └── report.js
│   │   │           │   ├── lit/
│   │   │           │   │   └── lit.js
│   │   │           │   ├── marked/
│   │   │           │   │   └── marked.js
│   │   │           │   ├── puppeteer/
│   │   │           │   │   └── puppeteer.js
│   │   │           │   ├── puppeteer-replay/
│   │   │           │   │   └── puppeteer-replay.js
│   │   │           │   ├── react-devtools/
│   │   │           │   │   └── react-devtools.js
│   │   │           │   ├── third-party-web/
│   │   │           │   │   └── third-party-web.js
│   │   │           │   ├── wasmparser/
│   │   │           │   │   └── wasmparser.js
│   │   │           │   └── web-vitals/
│   │   │           │       └── web-vitals.js
│   │   │           ├── ui/
│   │   │           │   ├── components/
│   │   │           │   │   ├── adorners/
│   │   │           │   │   │   └── adorners.js
│   │   │           │   │   ├── buttons/
│   │   │           │   │   │   └── buttons.js
│   │   │           │   │   ├── cards/
│   │   │           │   │   │   └── cards.js
│   │   │           │   │   ├── chrome_link/
│   │   │           │   │   │   └── chrome_link.js
│   │   │           │   │   ├── code_highlighter/
│   │   │           │   │   │   └── code_highlighter.js
│   │   │           │   │   ├── dialogs/
│   │   │           │   │   │   └── dialogs.js
│   │   │           │   │   ├── diff_view/
│   │   │           │   │   │   └── diff_view.js
│   │   │           │   │   ├── expandable_list/
│   │   │           │   │   │   └── expandable_list.js
│   │   │           │   │   ├── floating_button/
│   │   │           │   │   │   └── floating_button.js
│   │   │           │   │   ├── helpers/
│   │   │           │   │   │   └── helpers.js
│   │   │           │   │   ├── highlighting/
│   │   │           │   │   │   └── highlighting.js
│   │   │           │   │   ├── icon_button/
│   │   │           │   │   │   └── icon_button.js
│   │   │           │   │   ├── input/
│   │   │           │   │   │   └── input.js
│   │   │           │   │   ├── issue_counter/
│   │   │           │   │   │   └── issue_counter.js
│   │   │           │   │   ├── legacy_wrapper/
│   │   │           │   │   │   └── legacy_wrapper.js
│   │   │           │   │   ├── linkifier/
│   │   │           │   │   │   └── linkifier.js
│   │   │           │   │   ├── markdown_view/
│   │   │           │   │   │   └── markdown_view.js
│   │   │           │   │   ├── menus/
│   │   │           │   │   │   └── menus.js
│   │   │           │   │   ├── node_text/
│   │   │           │   │   │   └── node_text.js
│   │   │           │   │   ├── panel_feedback/
│   │   │           │   │   │   └── panel_feedback.js
│   │   │           │   │   ├── panel_introduction_steps/
│   │   │           │   │   │   └── panel_introduction_steps.js
│   │   │           │   │   ├── render_coordinator/
│   │   │           │   │   │   └── render_coordinator.js
│   │   │           │   │   ├── report_view/
│   │   │           │   │   │   └── report_view.js
│   │   │           │   │   ├── request_link_icon/
│   │   │           │   │   │   └── request_link_icon.js
│   │   │           │   │   ├── settings/
│   │   │           │   │   │   └── settings.js
│   │   │           │   │   ├── spinners/
│   │   │           │   │   │   └── spinners.js
│   │   │           │   │   ├── srgb_overlay/
│   │   │           │   │   │   └── srgb_overlay.js
│   │   │           │   │   ├── suggestion_input/
│   │   │           │   │   │   └── suggestion_input.js
│   │   │           │   │   ├── survey_link/
│   │   │           │   │   │   └── survey_link.js
│   │   │           │   │   ├── switch/
│   │   │           │   │   │   └── switch.js
│   │   │           │   │   ├── text_editor/
│   │   │           │   │   │   └── text_editor.js
│   │   │           │   │   ├── text_prompt/
│   │   │           │   │   │   └── text_prompt.js
│   │   │           │   │   ├── tooltips/
│   │   │           │   │   │   └── tooltips.js
│   │   │           │   │   └── tree_outline/
│   │   │           │   │       └── tree_outline.js
│   │   │           │   ├── legacy/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   ├── color_picker/
│   │   │           │   │   │   │   └── color_picker.js
│   │   │           │   │   │   ├── cookie_table/
│   │   │           │   │   │   │   └── cookie_table.js
│   │   │           │   │   │   ├── data_grid/
│   │   │           │   │   │   │   └── data_grid.js
│   │   │           │   │   │   ├── inline_editor/
│   │   │           │   │   │   │   └── inline_editor.js
│   │   │           │   │   │   ├── object_ui/
│   │   │           │   │   │   │   ├── object_ui-meta.js
│   │   │           │   │   │   │   └── object_ui.js
│   │   │           │   │   │   ├── perf_ui/
│   │   │           │   │   │   │   ├── perf_ui-meta.js
│   │   │           │   │   │   │   └── perf_ui.js
│   │   │           │   │   │   ├── quick_open/
│   │   │           │   │   │   │   ├── quick_open-meta.js
│   │   │           │   │   │   │   └── quick_open.js
│   │   │           │   │   │   ├── source_frame/
│   │   │           │   │   │   │   ├── source_frame-meta.js
│   │   │           │   │   │   │   └── source_frame.js
│   │   │           │   │   │   └── utils/
│   │   │           │   │   │       └── utils.js
│   │   │           │   │   ├── legacy.js
│   │   │           │   │   └── theme_support/
│   │   │           │   │       └── theme_support.js
│   │   │           │   ├── lit/
│   │   │           │   │   └── lit.js
│   │   │           │   └── visual_logging/
│   │   │           │       └── visual_logging.js
│   │   │           └── worker_app.html
│   │   ├── index.js
│   │   └── package.json
│   ├── debugger-shell/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── __snapshots__/
│   │   │   │   └── dotslash-test.js.snap
│   │   │   ├── dotslash-file-simulating-data-corruption.jsonc
│   │   │   ├── dotslash-file-simulating-network-error.jsonc
│   │   │   ├── dotslash-file-with-missing-platforms.jsonc
│   │   │   ├── dotslash-test.js
│   │   │   └── electron-dependency-test.js
│   │   ├── bin/
│   │   │   └── react-native-devtools
│   │   ├── package.json
│   │   └── src/
│   │       ├── electron/
│   │       │   ├── BuildInfo.js
│   │       │   ├── BuildInfo.js.tpl
│   │       │   ├── MainInstanceEntryPoint.js
│   │       │   ├── SettingsStore.js
│   │       │   ├── index.flow.js
│   │       │   ├── index.js
│   │       │   ├── preload.js
│   │       │   └── resources/
│   │       │       └── icon.icns
│   │       ├── index.js
│   │       └── node/
│   │           ├── __tests__/
│   │           │   └── debugger-shell-test.js
│   │           ├── index.flow.js
│   │           ├── index.js
│   │           └── private/
│   │               └── LaunchUtils.js
│   ├── dev-middleware/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── __tests__/
│   │       │   ├── FetchUtils.js
│   │       │   ├── InspectorDebuggerUtils.js
│   │       │   ├── InspectorDeviceUtils.js
│   │       │   ├── InspectorProtocolUtils.js
│   │       │   ├── InspectorProxyCdpRewritingHacks-test.js
│   │       │   ├── InspectorProxyCdpTransport-test.js
│   │       │   ├── InspectorProxyConcurrentSessions-test.js
│   │       │   ├── InspectorProxyCustomMessageHandler-test.js
│   │       │   ├── InspectorProxyDeviceHandoff-test.js
│   │       │   ├── InspectorProxyHttpApi-test.js
│   │       │   ├── InspectorProxyReactNativeReloads-test.js
│   │       │   ├── ResourceUtils.js
│   │       │   ├── ServerUtils.js
│   │       │   ├── StandaloneFuseboxShell-test.js
│   │       │   ├── __snapshots__/
│   │       │   │   └── InspectorProxyHttpApi-test.js.snap
│   │       │   ├── embedderScriptStub-test.js
│   │       │   ├── getBaseUrlFromRequest-test.js
│   │       │   └── getDevToolsFrontendUrl-test.js
│   │       ├── createDevMiddleware.js
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       ├── inspector-proxy/
│   │       │   ├── CdpDebugLogging.js
│   │       │   ├── CustomMessageHandler.js
│   │       │   ├── Device.js
│   │       │   ├── DeviceEventReporter.js
│   │       │   ├── EventLoopPerfTracker.js
│   │       │   ├── InspectorProxy.js
│   │       │   ├── InspectorProxyHeartbeat.js
│   │       │   ├── __docs__/
│   │       │   │   └── README.md
│   │       │   ├── cdp-types/
│   │       │   │   ├── messages.js
│   │       │   │   └── protocol.js
│   │       │   └── types.js
│   │       ├── middleware/
│   │       │   └── openDebuggerMiddleware.js
│   │       ├── types/
│   │       │   ├── DevToolLauncher.js
│   │       │   ├── EventReporter.js
│   │       │   ├── Experiments.js
│   │       │   ├── Logger.js
│   │       │   └── ReadonlyURL.js
│   │       └── utils/
│   │           ├── DefaultToolLauncher.js
│   │           ├── __mocks__/
│   │           │   └── DefaultToolLauncher.js
│   │           ├── getBaseUrlFromRequest.js
│   │           └── getDevToolsFrontendUrl.js
│   ├── eslint-config-react-native/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── prettier-config-test.js
│   │   ├── flat.js
│   │   ├── index.js
│   │   ├── package.json
│   │   └── shared.js
│   ├── eslint-plugin-react-native/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── eslint-tester.js
│   │   │   ├── no-deep-imports-test.js
│   │   │   └── platform-colors-test.js
│   │   ├── index.js
│   │   ├── no-deep-imports.js
│   │   ├── package.json
│   │   ├── platform-colors.js
│   │   └── utils.js
│   ├── eslint-plugin-specs/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── eslint-tester.js
│   │   │   └── react-native-modules-test.js
│   │   ├── index.js
│   │   ├── package.json
│   │   ├── postpack.js
│   │   ├── prepack.js
│   │   ├── react-native-modules.js
│   │   └── with-babel-register/
│   │       ├── disk-cache.js
│   │       └── index.js
│   ├── gradle-plugin/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── build.gradle.kts
│   │   ├── gradle/
│   │   │   ├── libs.versions.toml
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── package.json
│   │   ├── react-native-gradle-plugin/
│   │   │   ├── README.md
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── ReactExtension.kt
│   │   │       │                   ├── ReactPlugin.kt
│   │   │       │                   ├── ReactRootProjectPlugin.kt
│   │   │       │                   ├── TaskConfiguration.kt
│   │   │       │                   ├── internal/
│   │   │       │                   │   └── PrivateReactExtension.kt
│   │   │       │                   ├── tasks/
│   │   │       │                   │   ├── BundleHermesCTask.kt
│   │   │       │                   │   ├── GenerateAutolinkingNewArchitecturesFileTask.kt
│   │   │       │                   │   ├── GenerateCodegenArtifactsTask.kt
│   │   │       │                   │   ├── GenerateCodegenSchemaTask.kt
│   │   │       │                   │   ├── GenerateEntryPointTask.kt
│   │   │       │                   │   ├── GeneratePackageListTask.kt
│   │   │       │                   │   └── internal/
│   │   │       │                   │       ├── BuildCodegenCLITask.kt
│   │   │       │                   │       ├── CustomExecTask.kt
│   │   │       │                   │       ├── PrepareBoostTask.kt
│   │   │       │                   │       ├── PrepareGflagsTask.kt
│   │   │       │                   │       ├── PrepareGlogTask.kt
│   │   │       │                   │       ├── PreparePrefabHeadersTask.kt
│   │   │       │                   │       └── utils/
│   │   │       │                   │           └── PrefabPreprocessingEntry.kt
│   │   │       │                   └── utils/
│   │   │       │                       ├── AgpConfiguratorUtils.kt
│   │   │       │                       ├── BackwardCompatUtils.kt
│   │   │       │                       ├── DependencyUtils.kt
│   │   │       │                       ├── FileUtils.kt
│   │   │       │                       ├── JdkConfiguratorUtils.kt
│   │   │       │                       ├── NdkConfiguratorUtils.kt
│   │   │       │                       ├── PathUtils.kt
│   │   │       │                       ├── ProjectUtils.kt
│   │   │       │                       └── PropertyUtils.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           ├── ReactExtensionTest.kt
│   │   │                           ├── TestReactExtension.kt
│   │   │                           ├── model/
│   │   │                           │   └── ModelAutolinkingDependenciesJsonTest.kt
│   │   │                           ├── tasks/
│   │   │                           │   ├── BundleHermesCTaskTest.kt
│   │   │                           │   ├── GenerateAutolinkingNewArchitecturesFileTaskTest.kt
│   │   │                           │   ├── GenerateCodegenArtifactsTaskTest.kt
│   │   │                           │   ├── GenerateCodegenSchemaTaskTest.kt
│   │   │                           │   ├── GenerateEntryPointTaskTest.kt
│   │   │                           │   ├── GeneratePackageListTaskTest.kt
│   │   │                           │   └── internal/
│   │   │                           │       ├── BuildCodegenCLITaskTest.kt
│   │   │                           │       ├── CustomExecTaskTest.kt
│   │   │                           │       ├── PrepareBoostTaskTest.kt
│   │   │                           │       ├── PrepareGflagsTaskTest.kt
│   │   │                           │       ├── PrepareGlogTaskTest.kt
│   │   │                           │       ├── PreparePrefabHeadersTaskTest.kt
│   │   │                           │       └── utils/
│   │   │                           │           └── PrefabPreprocessingEntryTest.kt
│   │   │                           ├── tests/
│   │   │                           │   └── TaskTestUtils.kt
│   │   │                           └── utils/
│   │   │                               ├── AgpConfiguratorUtilsTest.kt
│   │   │                               ├── BackwardCompatUtilsTest.kt
│   │   │                               ├── DependencyUtilsTest.kt
│   │   │                               ├── FileUtilsTest.kt
│   │   │                               ├── NdkConfiguratorUtilsTest.kt
│   │   │                               ├── PathUtilsTest.kt
│   │   │                               └── ProjectUtilsTest.kt
│   │   ├── settings-plugin/
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── ReactSettingsExtension.kt
│   │   │       │                   └── ReactSettingsPlugin.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           └── ReactSettingsExtensionTest.kt
│   │   ├── settings.gradle.kts
│   │   ├── shared/
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── model/
│   │   │       │                   │   ├── ModelAutolinkingAndroidProjectJson.kt
│   │   │       │                   │   ├── ModelAutolinkingConfigJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesPlatformAndroidJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesPlatformJson.kt
│   │   │       │                   │   ├── ModelAutolinkingProjectJson.kt
│   │   │       │                   │   ├── ModelCodegenConfig.kt
│   │   │       │                   │   ├── ModelCodegenConfigAndroid.kt
│   │   │       │                   │   └── ModelPackageJson.kt
│   │   │       │                   └── utils/
│   │   │       │                       ├── JsonUtils.kt
│   │   │       │                       ├── KotlinStdlibCompatUtils.kt
│   │   │       │                       ├── Os.kt
│   │   │       │                       └── TaskUtils.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           └── utils/
│   │   │                               ├── JsonUtilsTest.kt
│   │   │                               ├── KotlinStdlibCompatUtilsTest.kt
│   │   │                               ├── OsTest.kt
│   │   │                               └── TaskUtilsTest.kt
│   │   └── shared-testutil/
│   │       ├── build.gradle.kts
│   │       └── src/
│   │           └── main/
│   │               └── kotlin/
│   │                   └── com/
│   │                       └── facebook/
│   │                           └── react/
│   │                               └── tests/
│   │                                   ├── OsRule.kt
│   │                                   └── WithOs.kt
│   ├── jest-preset/
│   │   ├── README.md
│   │   ├── jest/
│   │   │   ├── MockNativeMethods.js
│   │   │   ├── RefreshControlMock.js
│   │   │   ├── __tests__/
│   │   │   │   └── setup-test.js
│   │   │   ├── assetFileTransformer.js
│   │   │   ├── local-setup.js
│   │   │   ├── mock.js
│   │   │   ├── mockComponent.js
│   │   │   ├── mockNativeComponent.js
│   │   │   ├── mocks/
│   │   │   │   ├── AccessibilityInfo.js
│   │   │   │   ├── ActivityIndicator.js
│   │   │   │   ├── AppState.js
│   │   │   │   ├── Clipboard.js
│   │   │   │   ├── Image.js
│   │   │   │   ├── InitializeCore.js
│   │   │   │   ├── Linking.js
│   │   │   │   ├── Modal.js
│   │   │   │   ├── NativeComponentRegistry.js
│   │   │   │   ├── NativeModules.js
│   │   │   │   ├── RefreshControl.js
│   │   │   │   ├── RendererProxy.js
│   │   │   │   ├── ScrollView.js
│   │   │   │   ├── Text.js
│   │   │   │   ├── TextInput.js
│   │   │   │   ├── UIManager.js
│   │   │   │   ├── Vibration.js
│   │   │   │   ├── View.js
│   │   │   │   ├── ViewNativeComponent.js
│   │   │   │   ├── requireNativeComponent.js
│   │   │   │   └── useColorScheme.js
│   │   │   ├── react-native-env.js
│   │   │   ├── renderer.js
│   │   │   ├── resolver.js
│   │   │   └── setup.js
│   │   ├── jest-preset.js
│   │   └── package.json
│   ├── metro-config/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── index.flow.js
│   │       └── index.js
│   ├── new-app-screen/
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── Links.js
│   │       ├── NewAppScreen.js
│   │       ├── Theme.js
│   │       ├── index.d.ts
│   │       └── index.js
│   ├── normalize-color/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── normalizeColor-test.js
│   │   ├── index.js
│   │   ├── index.js.flow
│   │   └── package.json
│   ├── polyfills/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── consoleTable-itest.js
│   │   │   └── consoleTimeStamp-itest.js
│   │   ├── console.js
│   │   ├── error-guard.js
│   │   ├── index.js
│   │   └── package.json
│   ├── react-native/
│   │   ├── .doxygen.config.template
│   │   ├── LICENSE
│   │   ├── Libraries/
│   │   │   ├── ActionSheetIOS/
│   │   │   │   ├── ActionSheetIOS.d.ts
│   │   │   │   ├── ActionSheetIOS.js
│   │   │   │   ├── NativeActionSheetManager.js
│   │   │   │   └── React-RCTActionSheet.podspec
│   │   │   ├── Alert/
│   │   │   │   ├── Alert.d.ts
│   │   │   │   ├── Alert.js
│   │   │   │   ├── NativeAlertManager.js
│   │   │   │   ├── RCTAlertManager.android.js
│   │   │   │   ├── RCTAlertManager.ios.js
│   │   │   │   ├── RCTAlertManager.js
│   │   │   │   └── RCTAlertManager.js.flow
│   │   │   ├── Animated/
│   │   │   │   ├── Animated.d.ts
│   │   │   │   ├── Animated.js
│   │   │   │   ├── Animated.js.flow
│   │   │   │   ├── AnimatedEvent.js
│   │   │   │   ├── AnimatedExports.js
│   │   │   │   ├── AnimatedExports.js.flow
│   │   │   │   ├── AnimatedImplementation.js
│   │   │   │   ├── AnimatedMock.js
│   │   │   │   ├── AnimatedPlatformConfig.js
│   │   │   │   ├── Easing.d.ts
│   │   │   │   ├── Easing.js
│   │   │   │   ├── NativeAnimatedAllowlist.js
│   │   │   │   ├── NativeAnimatedModule.js
│   │   │   │   ├── NativeAnimatedTurboModule.js
│   │   │   │   ├── SpringConfig.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── Animated-benchmark-itest.js
│   │   │   │   │   ├── Animated-itest.js
│   │   │   │   │   ├── Animated-test.js
│   │   │   │   │   ├── Animated-web-test.js
│   │   │   │   │   ├── AnimatedBackend-benchmark-itest.js
│   │   │   │   │   ├── AnimatedBackend-itest.js
│   │   │   │   │   ├── AnimatedBackendSuspense-itest.js
│   │   │   │   │   ├── AnimatedMock-test.js
│   │   │   │   │   ├── AnimatedObject-test.js
│   │   │   │   │   ├── AnimatedProps-test.js
│   │   │   │   │   ├── AnimatedValue-test.js
│   │   │   │   │   ├── Easing-test.js
│   │   │   │   │   ├── Interpolation-test.js
│   │   │   │   │   ├── NativeAnimatedAllowlist-test.js
│   │   │   │   │   ├── TimingAnimation-test.js
│   │   │   │   │   └── bezier-test.js
│   │   │   │   ├── animations/
│   │   │   │   │   ├── Animation.js
│   │   │   │   │   ├── DecayAnimation.js
│   │   │   │   │   ├── SpringAnimation.js
│   │   │   │   │   └── TimingAnimation.js
│   │   │   │   ├── bezier.js
│   │   │   │   ├── components/
│   │   │   │   │   ├── AnimatedFlatList.js
│   │   │   │   │   ├── AnimatedImage.js
│   │   │   │   │   ├── AnimatedScrollView.js
│   │   │   │   │   ├── AnimatedSectionList.js
│   │   │   │   │   ├── AnimatedText.js
│   │   │   │   │   └── AnimatedView.js
│   │   │   │   ├── createAnimatedComponent.js
│   │   │   │   ├── nodes/
│   │   │   │   │   ├── AnimatedAddition.js
│   │   │   │   │   ├── AnimatedColor.js
│   │   │   │   │   ├── AnimatedDiffClamp.js
│   │   │   │   │   ├── AnimatedDivision.js
│   │   │   │   │   ├── AnimatedInterpolation.js
│   │   │   │   │   ├── AnimatedModulo.js
│   │   │   │   │   ├── AnimatedMultiplication.js
│   │   │   │   │   ├── AnimatedNode.js
│   │   │   │   │   ├── AnimatedObject.js
│   │   │   │   │   ├── AnimatedProps.js
│   │   │   │   │   ├── AnimatedStyle.js
│   │   │   │   │   ├── AnimatedSubtraction.js
│   │   │   │   │   ├── AnimatedTracking.js
│   │   │   │   │   ├── AnimatedTransform.js
│   │   │   │   │   ├── AnimatedValue.js
│   │   │   │   │   ├── AnimatedValueXY.js
│   │   │   │   │   └── AnimatedWithChildren.js
│   │   │   │   ├── shouldUseTurboAnimatedModule.js
│   │   │   │   ├── useAnimatedColor.d.ts
│   │   │   │   ├── useAnimatedColor.js
│   │   │   │   ├── useAnimatedProps.js
│   │   │   │   ├── useAnimatedValue.d.ts
│   │   │   │   ├── useAnimatedValue.js
│   │   │   │   ├── useAnimatedValueXY.d.ts
│   │   │   │   └── useAnimatedValueXY.js
│   │   │   ├── AppDelegate/
│   │   │   │   ├── RCTAppDelegate.h
│   │   │   │   ├── RCTAppDelegate.mm
│   │   │   │   ├── RCTAppSetupUtils.h
│   │   │   │   ├── RCTAppSetupUtils.mm
│   │   │   │   ├── RCTArchConfiguratorProtocol.h
│   │   │   │   ├── RCTDefaultReactNativeFactoryDelegate.h
│   │   │   │   ├── RCTDefaultReactNativeFactoryDelegate.mm
│   │   │   │   ├── RCTDependencyProvider.h
│   │   │   │   ├── RCTJSRuntimeConfiguratorProtocol.h
│   │   │   │   ├── RCTReactNativeFactory.h
│   │   │   │   ├── RCTReactNativeFactory.mm
│   │   │   │   ├── RCTRootViewFactory.h
│   │   │   │   ├── RCTRootViewFactory.mm
│   │   │   │   ├── RCTUIConfiguratorProtocol.h
│   │   │   │   └── React-RCTAppDelegate.podspec
│   │   │   ├── AppState/
│   │   │   │   ├── AppState.d.ts
│   │   │   │   ├── AppState.js
│   │   │   │   └── NativeAppState.js
│   │   │   ├── BatchedBridge/
│   │   │   │   ├── BatchedBridge.js
│   │   │   │   ├── MessageQueue.js
│   │   │   │   ├── NativeModules.d.ts
│   │   │   │   ├── NativeModules.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── MessageQueueTestConfig.js
│   │   │   │   │   └── MessageQueueTestModule.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── MessageQueue-test.js
│   │   │   │       └── NativeModules-test.js
│   │   │   ├── Blob/
│   │   │   │   ├── Blob.js
│   │   │   │   ├── BlobManager.js
│   │   │   │   ├── BlobRegistry.js
│   │   │   │   ├── BlobTypes.js
│   │   │   │   ├── File.js
│   │   │   │   ├── FileReader.js
│   │   │   │   ├── NativeBlobModule.js
│   │   │   │   ├── NativeFileReaderModule.js
│   │   │   │   ├── RCTBlobCollector.h
│   │   │   │   ├── RCTBlobCollector.mm
│   │   │   │   ├── RCTBlobManager.h
│   │   │   │   ├── RCTBlobManager.mm
│   │   │   │   ├── RCTBlobPlugins.h
│   │   │   │   ├── RCTBlobPlugins.mm
│   │   │   │   ├── RCTFileReaderModule.h
│   │   │   │   ├── RCTFileReaderModule.mm
│   │   │   │   ├── React-RCTBlob.podspec
│   │   │   │   ├── URL.js
│   │   │   │   ├── URLSearchParams.js
│   │   │   │   ├── URLSearchParams.js.flow
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── BlobModule.js
│   │   │   │   │   └── FileReaderModule.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Blob-test.js
│   │   │   │       ├── BlobManager-test.js
│   │   │   │       ├── BlobRegistry-test.js
│   │   │   │       ├── File-test.js
│   │   │   │       ├── FileReader-test.js
│   │   │   │       └── URL-test.js
│   │   │   ├── Components/
│   │   │   │   ├── AccessibilityInfo/
│   │   │   │   │   ├── AccessibilityInfo.d.ts
│   │   │   │   │   ├── AccessibilityInfo.js
│   │   │   │   │   ├── NativeAccessibilityInfo.js
│   │   │   │   │   ├── NativeAccessibilityManager.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── AccessibilityInfo-test.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.android.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.ios.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.js
│   │   │   │   │   └── legacySendAccessibilityEvent.js.flow
│   │   │   │   ├── ActivityIndicator/
│   │   │   │   │   ├── ActivityIndicator.d.ts
│   │   │   │   │   ├── ActivityIndicator.js
│   │   │   │   │   ├── ActivityIndicatorViewNativeComponent.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── ActivityIndicator-itest.js
│   │   │   │   │       ├── ActivityIndicator-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── ActivityIndicator-test.js.snap
│   │   │   │   ├── Button.d.ts
│   │   │   │   ├── Button.js
│   │   │   │   ├── Clipboard/
│   │   │   │   │   ├── Clipboard.d.ts
│   │   │   │   │   ├── Clipboard.js
│   │   │   │   │   └── NativeClipboard.js
│   │   │   │   ├── DrawerAndroid/
│   │   │   │   │   ├── AndroidDrawerLayoutNativeComponent.js
│   │   │   │   │   ├── DrawerLayoutAndroid.android.js
│   │   │   │   │   ├── DrawerLayoutAndroid.d.ts
│   │   │   │   │   ├── DrawerLayoutAndroid.ios.js
│   │   │   │   │   ├── DrawerLayoutAndroid.js
│   │   │   │   │   ├── DrawerLayoutAndroid.js.flow
│   │   │   │   │   ├── DrawerLayoutAndroidFallback.js
│   │   │   │   │   ├── DrawerLayoutAndroidTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── DrawerAndroid-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── DrawerAndroid-test.js.snap
│   │   │   │   ├── Keyboard/
│   │   │   │   │   ├── Keyboard.d.ts
│   │   │   │   │   ├── Keyboard.js
│   │   │   │   │   ├── KeyboardAvoidingView.d.ts
│   │   │   │   │   ├── KeyboardAvoidingView.js
│   │   │   │   │   ├── NativeKeyboardObserver.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── Keyboard-test.js
│   │   │   │   ├── LayoutConformance/
│   │   │   │   │   ├── LayoutConformance.d.ts
│   │   │   │   │   ├── LayoutConformance.js
│   │   │   │   │   └── LayoutConformanceNativeComponent.js
│   │   │   │   ├── Pressable/
│   │   │   │   │   ├── Pressable.d.ts
│   │   │   │   │   ├── Pressable.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── Pressable-itest.js
│   │   │   │   │   │   ├── Pressable-test.js
│   │   │   │   │   │   └── __snapshots__/
│   │   │   │   │   │       └── Pressable-test.js.snap
│   │   │   │   │   └── useAndroidRippleForView.js
│   │   │   │   ├── ProgressBarAndroid/
│   │   │   │   │   ├── ProgressBarAndroid.android.js
│   │   │   │   │   ├── ProgressBarAndroid.d.ts
│   │   │   │   │   ├── ProgressBarAndroid.js
│   │   │   │   │   ├── ProgressBarAndroidNativeComponent.js
│   │   │   │   │   ├── ProgressBarAndroidTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── ProgressBarAndroid-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── ProgressBarAndroid-test.js.snap
│   │   │   │   ├── RefreshControl/
│   │   │   │   │   ├── AndroidSwipeRefreshLayoutNativeComponent.js
│   │   │   │   │   ├── PullToRefreshViewNativeComponent.js
│   │   │   │   │   ├── RefreshControl.d.ts
│   │   │   │   │   └── RefreshControl.js
│   │   │   │   ├── SafeAreaView/
│   │   │   │   │   ├── RCTSafeAreaViewNativeComponent.js
│   │   │   │   │   ├── SafeAreaView.d.ts
│   │   │   │   │   ├── SafeAreaView.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── SafeAreaView-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── SafeAreaView-test.js.snap
│   │   │   │   ├── ScrollView/
│   │   │   │   │   ├── AndroidHorizontalScrollContentViewNativeComponent.js
│   │   │   │   │   ├── AndroidHorizontalScrollViewNativeComponent.js
│   │   │   │   │   ├── ScrollContentViewNativeComponent.js
│   │   │   │   │   ├── ScrollView.d.ts
│   │   │   │   │   ├── ScrollView.js
│   │   │   │   │   ├── ScrollViewCommands.js
│   │   │   │   │   ├── ScrollViewContext.js
│   │   │   │   │   ├── ScrollViewNativeComponent.js
│   │   │   │   │   ├── ScrollViewNativeComponentType.js
│   │   │   │   │   ├── ScrollViewStickyHeader.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── ScrollView-itest.js
│   │   │   │   │   │   ├── ScrollView-test.js
│   │   │   │   │   │   ├── ScrollView-viewCulling-itest.js
│   │   │   │   │   │   └── __snapshots__/
│   │   │   │   │   │       └── ScrollView-test.js.snap
│   │   │   │   │   └── processDecelerationRate.js
│   │   │   │   ├── Sound/
│   │   │   │   │   ├── NativeSoundManager.js
│   │   │   │   │   └── SoundManager.js
│   │   │   │   ├── StaticRenderer.js
│   │   │   │   ├── StatusBar/
│   │   │   │   │   ├── NativeStatusBarManagerAndroid.js
│   │   │   │   │   ├── NativeStatusBarManagerIOS.js
│   │   │   │   │   ├── StatusBar.d.ts
│   │   │   │   │   ├── StatusBar.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── StatusBar-test.js
│   │   │   │   ├── Switch/
│   │   │   │   │   ├── AndroidSwitchNativeComponent.js
│   │   │   │   │   ├── Switch.d.ts
│   │   │   │   │   ├── Switch.js
│   │   │   │   │   ├── SwitchNativeComponent.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── Switch-itest.js
│   │   │   │   ├── TextInput/
│   │   │   │   │   ├── AndroidTextInputNativeComponent.js
│   │   │   │   │   ├── InputAccessoryView.d.ts
│   │   │   │   │   ├── InputAccessoryView.js
│   │   │   │   │   ├── RCTInputAccessoryViewNativeComponent.js
│   │   │   │   │   ├── RCTMultilineTextInputNativeComponent.js
│   │   │   │   │   ├── RCTSingelineTextInputNativeComponent.js
│   │   │   │   │   ├── RCTTextInputViewConfig.js
│   │   │   │   │   ├── TextInput.d.ts
│   │   │   │   │   ├── TextInput.flow.js
│   │   │   │   │   ├── TextInput.js
│   │   │   │   │   ├── TextInputNativeCommands.js
│   │   │   │   │   ├── TextInputState.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── InputAccessoryView-test.js
│   │   │   │   │       ├── TextInput-itest.js
│   │   │   │   │       ├── TextInput-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── InputAccessoryView-test.js.snap
│   │   │   │   │           └── TextInput-test.js.snap
│   │   │   │   ├── ToastAndroid/
│   │   │   │   │   ├── NativeToastAndroid.js
│   │   │   │   │   ├── ToastAndroid.android.js
│   │   │   │   │   ├── ToastAndroid.d.ts
│   │   │   │   │   ├── ToastAndroid.ios.js
│   │   │   │   │   ├── ToastAndroid.js
│   │   │   │   │   ├── ToastAndroid.js.flow
│   │   │   │   │   └── ToastAndroidFallback.js
│   │   │   │   ├── Touchable/
│   │   │   │   │   ├── BoundingDimensions.js
│   │   │   │   │   ├── PooledClass.js
│   │   │   │   │   ├── Position.js
│   │   │   │   │   ├── Touchable.d.ts
│   │   │   │   │   ├── Touchable.js
│   │   │   │   │   ├── TouchableBounce.js
│   │   │   │   │   ├── TouchableHighlight.d.ts
│   │   │   │   │   ├── TouchableHighlight.js
│   │   │   │   │   ├── TouchableNativeFeedback.d.ts
│   │   │   │   │   ├── TouchableNativeFeedback.js
│   │   │   │   │   ├── TouchableOpacity.d.ts
│   │   │   │   │   ├── TouchableOpacity.js
│   │   │   │   │   ├── TouchableWithoutFeedback.d.ts
│   │   │   │   │   ├── TouchableWithoutFeedback.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── TouchableHighlight-itest.js
│   │   │   │   │       ├── TouchableNativeFeedback-test.js
│   │   │   │   │       ├── TouchableOpacity-itest.js
│   │   │   │   │       ├── TouchableOpacity-test.js
│   │   │   │   │       ├── TouchableWithoutFeedback-itest.js
│   │   │   │   │       ├── TouchableWithoutFeedback-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── TouchableNativeFeedback-test.js.snap
│   │   │   │   │           ├── TouchableOpacity-test.js.snap
│   │   │   │   │           └── TouchableWithoutFeedback-test.js.snap
│   │   │   │   ├── UnimplementedViews/
│   │   │   │   │   ├── UnimplementedNativeViewNativeComponent.js
│   │   │   │   │   └── UnimplementedView.js
│   │   │   │   ├── View/
│   │   │   │   │   ├── ReactNativeStyleAttributes.js
│   │   │   │   │   ├── View.d.ts
│   │   │   │   │   ├── View.js
│   │   │   │   │   ├── ViewAccessibility.d.ts
│   │   │   │   │   ├── ViewAccessibility.js
│   │   │   │   │   ├── ViewNativeComponent.js
│   │   │   │   │   ├── ViewPropTypes.d.ts
│   │   │   │   │   ├── ViewPropTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── FantomEventHandlers-itest.js
│   │   │   │   │       ├── View-benchmark-itest.js
│   │   │   │   │       ├── View-itest.js
│   │   │   │   │       ├── View-test.js
│   │   │   │   │       └── View-vs-ViewNativeComponent-benchmark-itest.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Button-itest.js
│   │   │   │       ├── Button-test.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── Button-test.js.snap
│   │   │   ├── Core/
│   │   │   │   ├── Devtools/
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── loadBundleFromServer-test.js
│   │   │   │   │   │   ├── parseErrorStack-test.js
│   │   │   │   │   │   └── parseHermesStack-test.js
│   │   │   │   │   ├── getDevServer.js
│   │   │   │   │   ├── loadBundleFromServer.js
│   │   │   │   │   ├── openFileInEditor.js
│   │   │   │   │   ├── openURLInBrowser.js
│   │   │   │   │   ├── parseErrorStack.js
│   │   │   │   │   ├── parseHermesStack.js
│   │   │   │   │   └── symbolicateStackTrace.js
│   │   │   │   ├── ExceptionsManager.js
│   │   │   │   ├── ExtendedError.js
│   │   │   │   ├── InitializeCore.js
│   │   │   │   ├── NativeExceptionsManager.js
│   │   │   │   ├── RawEventEmitter.js
│   │   │   │   ├── ReactFiberErrorDialog.js
│   │   │   │   ├── ReactNativeVersion.js
│   │   │   │   ├── ReactNativeVersionCheck.js
│   │   │   │   ├── SegmentFetcher/
│   │   │   │   │   └── NativeSegmentFetcher.js
│   │   │   │   ├── Timers/
│   │   │   │   │   ├── JSTimers.js
│   │   │   │   │   ├── NativeTiming.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── JSTimers-test.js
│   │   │   │   │   ├── immediateShim.js
│   │   │   │   │   └── queueMicrotask.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   └── NativeExceptionsManager.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── ExceptionsManager-test.js
│   │   │   │   │   └── ReactNativeVersionCheck-test.js
│   │   │   │   ├── checkNativeVersion.js
│   │   │   │   ├── polyfillPromise.js
│   │   │   │   ├── registerCallableModule.d.ts
│   │   │   │   ├── registerCallableModule.js
│   │   │   │   ├── setUpAlert.js
│   │   │   │   ├── setUpBatchedBridge.js
│   │   │   │   ├── setUpDeveloperTools.js
│   │   │   │   ├── setUpErrorHandling.js
│   │   │   │   ├── setUpGlobals.js
│   │   │   │   ├── setUpNavigator.js
│   │   │   │   ├── setUpPerformance.js
│   │   │   │   ├── setUpReactDevTools.js
│   │   │   │   ├── setUpReactRefresh.js
│   │   │   │   ├── setUpRegeneratorRuntime.js
│   │   │   │   ├── setUpSegmentFetcher.js
│   │   │   │   ├── setUpTimers.js
│   │   │   │   └── setUpXHR.js
│   │   │   ├── Debugging/
│   │   │   │   ├── DebuggingOverlay.js
│   │   │   │   ├── DebuggingOverlayNativeComponent.js
│   │   │   │   ├── DebuggingOverlayRegistry.js
│   │   │   │   └── useSubscribeToDebuggingOverlayRegistry.js
│   │   │   ├── EventEmitter/
│   │   │   │   ├── NativeEventEmitter.d.ts
│   │   │   │   ├── NativeEventEmitter.js
│   │   │   │   ├── RCTDeviceEventEmitter.d.ts
│   │   │   │   ├── RCTDeviceEventEmitter.js
│   │   │   │   ├── RCTEventEmitter.js
│   │   │   │   ├── RCTNativeAppEventEmitter.d.ts
│   │   │   │   ├── RCTNativeAppEventEmitter.js
│   │   │   │   └── __mocks__/
│   │   │   │       └── NativeEventEmitter.js
│   │   │   ├── FBLazyVector/
│   │   │   │   ├── FBLazyVector/
│   │   │   │   │   ├── FBLazyIterator.h
│   │   │   │   │   └── FBLazyVector.h
│   │   │   │   └── FBLazyVector.podspec
│   │   │   ├── Image/
│   │   │   │   ├── AssetRegistry.js
│   │   │   │   ├── AssetSourceResolver.js
│   │   │   │   ├── AssetUtils.js
│   │   │   │   ├── Image.android.js
│   │   │   │   ├── Image.d.ts
│   │   │   │   ├── Image.ios.js
│   │   │   │   ├── Image.js
│   │   │   │   ├── Image.js.flow
│   │   │   │   ├── ImageAnalyticsTagContext.js
│   │   │   │   ├── ImageBackground.js
│   │   │   │   ├── ImageInjection.js
│   │   │   │   ├── ImageProps.js
│   │   │   │   ├── ImageResizeMode.d.ts
│   │   │   │   ├── ImageResizeMode.js
│   │   │   │   ├── ImageSource.d.ts
│   │   │   │   ├── ImageSource.js
│   │   │   │   ├── ImageSourceUtils.js
│   │   │   │   ├── ImageTypes.flow.js
│   │   │   │   ├── ImageUtils.js
│   │   │   │   ├── ImageViewNativeComponent.js
│   │   │   │   ├── NativeImageEditor.js
│   │   │   │   ├── NativeImageLoaderAndroid.js
│   │   │   │   ├── NativeImageLoaderIOS.js
│   │   │   │   ├── NativeImageStoreAndroid.js
│   │   │   │   ├── NativeImageStoreIOS.js
│   │   │   │   ├── RCTAnimatedImage.h
│   │   │   │   ├── RCTAnimatedImage.mm
│   │   │   │   ├── RCTBundleAssetImageLoader.h
│   │   │   │   ├── RCTBundleAssetImageLoader.mm
│   │   │   │   ├── RCTDisplayWeakRefreshable.h
│   │   │   │   ├── RCTDisplayWeakRefreshable.mm
│   │   │   │   ├── RCTGIFImageDecoder.h
│   │   │   │   ├── RCTGIFImageDecoder.mm
│   │   │   │   ├── RCTImageBlurUtils.h
│   │   │   │   ├── RCTImageBlurUtils.mm
│   │   │   │   ├── RCTImageCache.h
│   │   │   │   ├── RCTImageCache.mm
│   │   │   │   ├── RCTImageDataDecoder.h
│   │   │   │   ├── RCTImageEditingManager.h
│   │   │   │   ├── RCTImageEditingManager.mm
│   │   │   │   ├── RCTImageLoader.h
│   │   │   │   ├── RCTImageLoader.mm
│   │   │   │   ├── RCTImageLoaderLoggable.h
│   │   │   │   ├── RCTImageLoaderProtocol.h
│   │   │   │   ├── RCTImageLoaderWithAttributionProtocol.h
│   │   │   │   ├── RCTImagePlugins.h
│   │   │   │   ├── RCTImagePlugins.mm
│   │   │   │   ├── RCTImageShadowView.h
│   │   │   │   ├── RCTImageShadowView.mm
│   │   │   │   ├── RCTImageStoreManager.h
│   │   │   │   ├── RCTImageStoreManager.mm
│   │   │   │   ├── RCTImageURLLoader.h
│   │   │   │   ├── RCTImageURLLoaderWithAttribution.h
│   │   │   │   ├── RCTImageURLLoaderWithAttribution.mm
│   │   │   │   ├── RCTImageUtils.h
│   │   │   │   ├── RCTImageUtils.mm
│   │   │   │   ├── RCTImageView.h
│   │   │   │   ├── RCTImageView.mm
│   │   │   │   ├── RCTImageViewManager.h
│   │   │   │   ├── RCTImageViewManager.mm
│   │   │   │   ├── RCTLocalAssetImageLoader.h
│   │   │   │   ├── RCTLocalAssetImageLoader.mm
│   │   │   │   ├── RCTResizeMode.h
│   │   │   │   ├── RCTResizeMode.mm
│   │   │   │   ├── RCTUIImageViewAnimated.h
│   │   │   │   ├── RCTUIImageViewAnimated.mm
│   │   │   │   ├── React-RCTImage.podspec
│   │   │   │   ├── RelativeImageStub.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── AssetUtils-test.js
│   │   │   │   │   ├── Image-benchmark-itest.js
│   │   │   │   │   ├── Image-itest.js
│   │   │   │   │   ├── Image-test.js
│   │   │   │   │   ├── ImageBackground-itest.js
│   │   │   │   │   ├── ImageBackground-test.js
│   │   │   │   │   ├── ImageSourceUtils-test.js
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   ├── Image-test.js.snap
│   │   │   │   │   │   ├── ImageBackground-test.js.snap
│   │   │   │   │   │   └── assetRelativePathInSnapshot-test.js.snap
│   │   │   │   │   ├── assetRelativePathInSnapshot-test.js
│   │   │   │   │   └── resolveAssetSource-test.js
│   │   │   │   ├── nativeImageSource.js
│   │   │   │   └── resolveAssetSource.js
│   │   │   ├── Interaction/
│   │   │   │   ├── FrameRateLogger.js
│   │   │   │   ├── InteractionManager.d.ts
│   │   │   │   ├── InteractionManager.js
│   │   │   │   ├── NativeFrameRateLogger.js
│   │   │   │   ├── PanResponder.d.ts
│   │   │   │   ├── PanResponder.js
│   │   │   │   └── TouchHistoryMath.js
│   │   │   ├── LayoutAnimation/
│   │   │   │   ├── LayoutAnimation.d.ts
│   │   │   │   └── LayoutAnimation.js
│   │   │   ├── Linking/
│   │   │   │   ├── Linking.d.ts
│   │   │   │   ├── Linking.js
│   │   │   │   ├── NativeIntentAndroid.js
│   │   │   │   └── NativeLinkingManager.js
│   │   │   ├── LinkingIOS/
│   │   │   │   ├── RCTLinkingManager.h
│   │   │   │   ├── RCTLinkingManager.mm
│   │   │   │   ├── RCTLinkingPlugins.h
│   │   │   │   ├── RCTLinkingPlugins.mm
│   │   │   │   └── React-RCTLinking.podspec
│   │   │   ├── Lists/
│   │   │   │   ├── FillRateHelper.js
│   │   │   │   ├── FlatList.d.ts
│   │   │   │   ├── FlatList.js
│   │   │   │   ├── SectionList.d.ts
│   │   │   │   ├── SectionList.js
│   │   │   │   ├── SectionListModern.js
│   │   │   │   ├── ViewabilityHelper.js
│   │   │   │   ├── VirtualizeUtils.js
│   │   │   │   ├── VirtualizedList.js
│   │   │   │   ├── VirtualizedListContext.js
│   │   │   │   ├── VirtualizedSectionList.js
│   │   │   │   ├── __flowtests__/
│   │   │   │   │   ├── FlatList-flowtest.js
│   │   │   │   │   └── SectionList-flowtest.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── FlatList-itest.js
│   │   │   │       ├── FlatList-test.js
│   │   │   │       ├── SectionList-itest.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── FlatList-test.js.snap
│   │   │   ├── LogBox/
│   │   │   │   ├── Data/
│   │   │   │   │   ├── LogBoxData.js
│   │   │   │   │   ├── LogBoxLog.js
│   │   │   │   │   ├── LogBoxSymbolication.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── LogBoxData-test.js
│   │   │   │   │   │   ├── LogBoxLog-test.js
│   │   │   │   │   │   ├── LogBoxSymbolication-test.js
│   │   │   │   │   │   └── parseLogBoxLog-test.js
│   │   │   │   │   └── parseLogBoxLog.js
│   │   │   │   ├── LogBox.d.ts
│   │   │   │   ├── LogBox.js
│   │   │   │   ├── LogBoxInspectorContainer.js
│   │   │   │   ├── LogBoxNotificationContainer.js
│   │   │   │   ├── UI/
│   │   │   │   │   ├── AnsiHighlight.js
│   │   │   │   │   ├── LogBoxButton.js
│   │   │   │   │   ├── LogBoxInspector.js
│   │   │   │   │   ├── LogBoxInspectorBody.js
│   │   │   │   │   ├── LogBoxInspectorCodeFrame.js
│   │   │   │   │   ├── LogBoxInspectorFooter.js
│   │   │   │   │   ├── LogBoxInspectorFooterButton.js
│   │   │   │   │   ├── LogBoxInspectorHeader.js
│   │   │   │   │   ├── LogBoxInspectorHeaderButton.js
│   │   │   │   │   ├── LogBoxInspectorMessageHeader.js
│   │   │   │   │   ├── LogBoxInspectorReactFrames.js
│   │   │   │   │   ├── LogBoxInspectorSection.js
│   │   │   │   │   ├── LogBoxInspectorSourceMapStatus.js
│   │   │   │   │   ├── LogBoxInspectorStackFrame.js
│   │   │   │   │   ├── LogBoxInspectorStackFrames.js
│   │   │   │   │   ├── LogBoxMessage.js
│   │   │   │   │   ├── LogBoxNotification.js
│   │   │   │   │   ├── LogBoxNotificationCountBadge.js
│   │   │   │   │   ├── LogBoxNotificationDismissButton.js
│   │   │   │   │   ├── LogBoxNotificationMessage.js
│   │   │   │   │   ├── LogBoxStyle.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── LogBoxButton-test.js
│   │   │   │   │       ├── LogBoxInspector-test.js
│   │   │   │   │       ├── LogBoxInspectorCodeFrame-test.js
│   │   │   │   │       ├── LogBoxInspectorFooter-test.js
│   │   │   │   │       ├── LogBoxInspectorHeader-test.js
│   │   │   │   │       ├── LogBoxInspectorMessageHeader-test.js
│   │   │   │   │       ├── LogBoxInspectorReactFrames-test.js
│   │   │   │   │       ├── LogBoxInspectorSection-test.js
│   │   │   │   │       ├── LogBoxInspectorSourceMapStatus-test.js
│   │   │   │   │       ├── LogBoxInspectorStackFrame-test.js
│   │   │   │   │       ├── LogBoxInspectorStackFrames-test.js
│   │   │   │   │       ├── LogBoxMessage-test.js
│   │   │   │   │       ├── LogBoxNotification-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── LogBoxButton-test.js.snap
│   │   │   │   │           ├── LogBoxInspector-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorCodeFrame-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorFooter-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorHeader-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorMessageHeader-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorReactFrames-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorSection-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorSourceMapStatus-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorStackFrame-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorStackFrames-test.js.snap
│   │   │   │   │           ├── LogBoxMessage-test.js.snap
│   │   │   │   │           └── LogBoxNotification-test.js.snap
│   │   │   │   └── __tests__/
│   │   │   │       ├── LogBox-test.js
│   │   │   │       ├── LogBoxInspectorContainer-test.js
│   │   │   │       ├── LogBoxNotificationContainer-test.js
│   │   │   │       ├── __snapshots__/
│   │   │   │       │   ├── LogBoxInspectorContainer-test.js.snap
│   │   │   │       │   └── LogBoxNotificationContainer-test.js.snap
│   │   │   │       └── fantomHelpers.js
│   │   │   ├── Modal/
│   │   │   │   ├── Modal.d.ts
│   │   │   │   ├── Modal.js
│   │   │   │   ├── NativeModalManager.js
│   │   │   │   ├── RCTModalHostViewNativeComponent.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Modal-itest.js
│   │   │   │       ├── Modal-test.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── Modal-test.js.snap
│   │   │   ├── NativeAnimation/
│   │   │   │   ├── Drivers/
│   │   │   │   │   ├── RCTAnimationDriver.h
│   │   │   │   │   ├── RCTDecayAnimation.h
│   │   │   │   │   ├── RCTDecayAnimation.mm
│   │   │   │   │   ├── RCTEventAnimation.h
│   │   │   │   │   ├── RCTEventAnimation.mm
│   │   │   │   │   ├── RCTFrameAnimation.h
│   │   │   │   │   ├── RCTFrameAnimation.mm
│   │   │   │   │   ├── RCTSpringAnimation.h
│   │   │   │   │   └── RCTSpringAnimation.mm
│   │   │   │   ├── Nodes/
│   │   │   │   │   ├── RCTAdditionAnimatedNode.h
│   │   │   │   │   ├── RCTAdditionAnimatedNode.mm
│   │   │   │   │   ├── RCTAnimatedNode.h
│   │   │   │   │   ├── RCTAnimatedNode.mm
│   │   │   │   │   ├── RCTColorAnimatedNode.h
│   │   │   │   │   ├── RCTColorAnimatedNode.mm
│   │   │   │   │   ├── RCTDiffClampAnimatedNode.h
│   │   │   │   │   ├── RCTDiffClampAnimatedNode.mm
│   │   │   │   │   ├── RCTDivisionAnimatedNode.h
│   │   │   │   │   ├── RCTDivisionAnimatedNode.mm
│   │   │   │   │   ├── RCTInterpolationAnimatedNode.h
│   │   │   │   │   ├── RCTInterpolationAnimatedNode.mm
│   │   │   │   │   ├── RCTModuloAnimatedNode.h
│   │   │   │   │   ├── RCTModuloAnimatedNode.mm
│   │   │   │   │   ├── RCTMultiplicationAnimatedNode.h
│   │   │   │   │   ├── RCTMultiplicationAnimatedNode.mm
│   │   │   │   │   ├── RCTObjectAnimatedNode.h
│   │   │   │   │   ├── RCTObjectAnimatedNode.mm
│   │   │   │   │   ├── RCTPropsAnimatedNode.h
│   │   │   │   │   ├── RCTPropsAnimatedNode.mm
│   │   │   │   │   ├── RCTStyleAnimatedNode.h
│   │   │   │   │   ├── RCTStyleAnimatedNode.mm
│   │   │   │   │   ├── RCTSubtractionAnimatedNode.h
│   │   │   │   │   ├── RCTSubtractionAnimatedNode.mm
│   │   │   │   │   ├── RCTTrackingAnimatedNode.h
│   │   │   │   │   ├── RCTTrackingAnimatedNode.mm
│   │   │   │   │   ├── RCTTransformAnimatedNode.h
│   │   │   │   │   ├── RCTTransformAnimatedNode.mm
│   │   │   │   │   ├── RCTValueAnimatedNode.h
│   │   │   │   │   └── RCTValueAnimatedNode.mm
│   │   │   │   ├── RCTAnimationPlugins.h
│   │   │   │   ├── RCTAnimationPlugins.mm
│   │   │   │   ├── RCTAnimationUtils.h
│   │   │   │   ├── RCTAnimationUtils.mm
│   │   │   │   ├── RCTNativeAnimatedModule.h
│   │   │   │   ├── RCTNativeAnimatedModule.mm
│   │   │   │   ├── RCTNativeAnimatedNodesManager.h
│   │   │   │   ├── RCTNativeAnimatedNodesManager.mm
│   │   │   │   ├── RCTNativeAnimatedTurboModule.h
│   │   │   │   ├── RCTNativeAnimatedTurboModule.mm
│   │   │   │   └── React-RCTAnimation.podspec
│   │   │   ├── NativeComponent/
│   │   │   │   ├── BaseViewConfig.android.js
│   │   │   │   ├── BaseViewConfig.ios.js
│   │   │   │   ├── BaseViewConfig.js
│   │   │   │   ├── BaseViewConfig.js.flow
│   │   │   │   ├── NativeComponentRegistry.d.ts
│   │   │   │   ├── NativeComponentRegistry.js
│   │   │   │   ├── NativeComponentRegistryUnstable.js
│   │   │   │   ├── PlatformBaseViewConfig.js
│   │   │   │   ├── StaticViewConfigValidator.js
│   │   │   │   ├── ViewConfig.js
│   │   │   │   ├── ViewConfigIgnore.js
│   │   │   │   └── __tests__/
│   │   │   │       └── StaticViewConfigValidator-test.js
│   │   │   ├── NativeModules/
│   │   │   │   └── specs/
│   │   │   │       ├── NativeDevMenu.js
│   │   │   │       ├── NativeDevSettings.js
│   │   │   │       ├── NativeDeviceEventManager.js
│   │   │   │       ├── NativeDialogManagerAndroid.js
│   │   │   │       ├── NativeLogBox.js
│   │   │   │       ├── NativeRedBox.js
│   │   │   │       └── NativeSourceCode.js
│   │   │   ├── Network/
│   │   │   │   ├── FormData.js
│   │   │   │   ├── NativeNetworkingAndroid.js
│   │   │   │   ├── NativeNetworkingIOS.js
│   │   │   │   ├── RCTDataRequestHandler.h
│   │   │   │   ├── RCTDataRequestHandler.mm
│   │   │   │   ├── RCTFileRequestHandler.h
│   │   │   │   ├── RCTFileRequestHandler.mm
│   │   │   │   ├── RCTHTTPRequestHandler.h
│   │   │   │   ├── RCTHTTPRequestHandler.mm
│   │   │   │   ├── RCTInspectorNetworkReporter.h
│   │   │   │   ├── RCTInspectorNetworkReporter.mm
│   │   │   │   ├── RCTNetworkConversions.h
│   │   │   │   ├── RCTNetworkPlugins.h
│   │   │   │   ├── RCTNetworkPlugins.mm
│   │   │   │   ├── RCTNetworkTask.h
│   │   │   │   ├── RCTNetworkTask.mm
│   │   │   │   ├── RCTNetworking+Internal.h
│   │   │   │   ├── RCTNetworking.android.js
│   │   │   │   ├── RCTNetworking.h
│   │   │   │   ├── RCTNetworking.ios.js
│   │   │   │   ├── RCTNetworking.js
│   │   │   │   ├── RCTNetworking.js.flow
│   │   │   │   ├── RCTNetworking.mm
│   │   │   │   ├── RCTNetworkingEventDefinitions.flow.js
│   │   │   │   ├── React-RCTNetwork.podspec
│   │   │   │   ├── XMLHttpRequest.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── FormData-test.js
│   │   │   │   │   └── XMLHttpRequest-test.js
│   │   │   │   ├── convertRequestBody.js
│   │   │   │   └── fetch.js
│   │   │   ├── Performance/
│   │   │   │   ├── Systrace.d.ts
│   │   │   │   └── Systrace.js
│   │   │   ├── PermissionsAndroid/
│   │   │   │   ├── NativePermissionsAndroid.js
│   │   │   │   ├── PermissionsAndroid.d.ts
│   │   │   │   └── PermissionsAndroid.js
│   │   │   ├── Pressability/
│   │   │   │   ├── HoverState.js
│   │   │   │   ├── Pressability.js
│   │   │   │   ├── PressabilityDebug.js
│   │   │   │   ├── PressabilityPerformanceEventEmitter.js
│   │   │   │   ├── PressabilityTypes.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── Pressability-itest.js
│   │   │   │   │   └── Pressability-test.js
│   │   │   │   └── usePressability.js
│   │   │   ├── Promise.js
│   │   │   ├── PushNotificationIOS/
│   │   │   │   ├── NativePushNotificationManagerIOS.js
│   │   │   │   ├── PushNotificationIOS.d.ts
│   │   │   │   ├── PushNotificationIOS.js
│   │   │   │   ├── RCTPushNotificationManager.h
│   │   │   │   ├── RCTPushNotificationManager.mm
│   │   │   │   ├── RCTPushNotificationPlugins.h
│   │   │   │   ├── RCTPushNotificationPlugins.mm
│   │   │   │   └── React-RCTPushNotification.podspec
│   │   │   ├── ReactNative/
│   │   │   │   ├── AppContainer-dev.js
│   │   │   │   ├── AppContainer-prod.js
│   │   │   │   ├── AppContainer.js
│   │   │   │   ├── AppRegistry.d.ts
│   │   │   │   ├── AppRegistry.flow.js
│   │   │   │   ├── AppRegistry.js
│   │   │   │   ├── AppRegistry.js.flow
│   │   │   │   ├── AppRegistryImpl.js
│   │   │   │   ├── BridgelessUIManager.js
│   │   │   │   ├── DisplayMode.js
│   │   │   │   ├── FabricUIManager.js
│   │   │   │   ├── HeadlessJsTaskError.js
│   │   │   │   ├── I18nManager.d.ts
│   │   │   │   ├── I18nManager.js
│   │   │   │   ├── NativeHeadlessJsTaskSupport.js
│   │   │   │   ├── NativeI18nManager.js
│   │   │   │   ├── NativeUIManager.js
│   │   │   │   ├── PaperUIManager.js
│   │   │   │   ├── ReactFabricPublicInstance/
│   │   │   │   │   ├── ReactFabricPublicInstance.js
│   │   │   │   │   ├── ReactFabricPublicInstanceUtils.js
│   │   │   │   │   ├── ReactNativeAttributePayload.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── ReactNativeAttributePayload-test.js
│   │   │   │   │   └── warnForStyleProps.js
│   │   │   │   ├── ReactNativeRuntimeDiagnostics.js
│   │   │   │   ├── RendererImplementation.js
│   │   │   │   ├── RendererProxy.d.ts
│   │   │   │   ├── RendererProxy.js
│   │   │   │   ├── RootTag.d.ts
│   │   │   │   ├── RootTag.js
│   │   │   │   ├── UIManager.d.ts
│   │   │   │   ├── UIManager.js
│   │   │   │   ├── UIManagerProperties.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── FabricUIManager-test.js
│   │   │   │   │   ├── StaleEventHandlersFromInterruptedRender-itest.js
│   │   │   │   │   ├── State-ForcedCloneCommitHook-itest.js
│   │   │   │   │   └── SyncOnCommit-itest.js
│   │   │   │   ├── getCachedComponentWithDebugName.js
│   │   │   │   ├── getNativeComponentAttributes.js
│   │   │   │   ├── renderApplication.js
│   │   │   │   ├── requireNativeComponent.d.ts
│   │   │   │   └── requireNativeComponent.js
│   │   │   ├── ReactNativeDependencies/
│   │   │   │   └── Package.swift
│   │   │   ├── ReactPrivate/
│   │   │   │   ├── README
│   │   │   │   ├── ReactNativePrivateInitializeCore.js
│   │   │   │   ├── ReactNativePrivateInterface.js
│   │   │   │   └── ReactNativePrivateInterface.js.flow
│   │   │   ├── Renderer/
│   │   │   │   ├── README.md
│   │   │   │   ├── implementations/
│   │   │   │   │   ├── ReactFabric-dev.js
│   │   │   │   │   ├── ReactFabric-prod.js
│   │   │   │   │   ├── ReactFabric-profiling.js
│   │   │   │   │   ├── ReactNativeRenderer-dev.js
│   │   │   │   │   ├── ReactNativeRenderer-prod.js
│   │   │   │   │   └── ReactNativeRenderer-profiling.js
│   │   │   │   └── shims/
│   │   │   │       ├── ReactFabric.js
│   │   │   │       ├── ReactFeatureFlags.js
│   │   │   │       ├── ReactNative.js
│   │   │   │       ├── ReactNativeTypes.js
│   │   │   │       ├── ReactNativeViewConfigRegistry.js
│   │   │   │       └── createReactNativeComponentClass.js
│   │   │   ├── Required/
│   │   │   │   ├── RCTRequired.h
│   │   │   │   └── RCTRequired.podspec
│   │   │   ├── Settings/
│   │   │   │   ├── NativeSettingsManager.js
│   │   │   │   ├── RCTSettingsManager.h
│   │   │   │   ├── RCTSettingsManager.mm
│   │   │   │   ├── RCTSettingsPlugins.h
│   │   │   │   ├── RCTSettingsPlugins.mm
│   │   │   │   ├── React-RCTSettings.podspec
│   │   │   │   ├── Settings.d.ts
│   │   │   │   ├── Settings.ios.js
│   │   │   │   ├── Settings.js
│   │   │   │   └── SettingsFallback.js
│   │   │   ├── Share/
│   │   │   │   ├── NativeShareModule.js
│   │   │   │   ├── Share.d.ts
│   │   │   │   └── Share.js
│   │   │   ├── StyleSheet/
│   │   │   │   ├── EdgeInsetsPropType.js
│   │   │   │   ├── PlatformColorValueTypes.android.js
│   │   │   │   ├── PlatformColorValueTypes.d.ts
│   │   │   │   ├── PlatformColorValueTypes.ios.js
│   │   │   │   ├── PlatformColorValueTypes.js
│   │   │   │   ├── PlatformColorValueTypes.js.flow
│   │   │   │   ├── PlatformColorValueTypesIOS.d.ts
│   │   │   │   ├── PlatformColorValueTypesIOS.ios.js
│   │   │   │   ├── PlatformColorValueTypesIOS.js
│   │   │   │   ├── PointPropType.js
│   │   │   │   ├── Rect.js
│   │   │   │   ├── StyleSheet.d.ts
│   │   │   │   ├── StyleSheet.js
│   │   │   │   ├── StyleSheet.js.flow
│   │   │   │   ├── StyleSheetExports.js
│   │   │   │   ├── StyleSheetExports.js.flow
│   │   │   │   ├── StyleSheetTypes.d.ts
│   │   │   │   ├── StyleSheetTypes.js
│   │   │   │   ├── __flowtests__/
│   │   │   │   │   └── StyleSheet-flowtest.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── StyleSheet-test.js
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   ├── processAspectRatio-test.js.snap
│   │   │   │   │   │   ├── processTransform-test.js.snap
│   │   │   │   │   │   └── processTransformOrigin-test.js.snap
│   │   │   │   │   ├── flattenStyle-test.js
│   │   │   │   │   ├── normalizeColor-test.js
│   │   │   │   │   ├── processAspectRatio-test.js
│   │   │   │   │   ├── processBackgroundImage-test.js
│   │   │   │   │   ├── processBackgroundPosition-test.js
│   │   │   │   │   ├── processBackgroundRepeat-test.js
│   │   │   │   │   ├── processBackgroundSize-test.js
│   │   │   │   │   ├── processBoxShadow-itest.js
│   │   │   │   │   ├── processColor-test.js
│   │   │   │   │   ├── processColorArray-test.js
│   │   │   │   │   ├── processFilter-test.js
│   │   │   │   │   ├── processFontVariant-test.js
│   │   │   │   │   ├── processTransform-test.js
│   │   │   │   │   ├── processTransformOrigin-test.js
│   │   │   │   │   ├── setNormalizedColorAlpha-test.js
│   │   │   │   │   └── splitLayoutProps-test.js
│   │   │   │   ├── flattenStyle.js
│   │   │   │   ├── normalizeColor.js
│   │   │   │   ├── private/
│   │   │   │   │   ├── _StyleSheetTypesOverrides.js
│   │   │   │   │   └── _TransformStyle.js
│   │   │   │   ├── processAspectRatio.js
│   │   │   │   ├── processBackgroundImage.js
│   │   │   │   ├── processBackgroundPosition.js
│   │   │   │   ├── processBackgroundRepeat.js
│   │   │   │   ├── processBackgroundSize.js
│   │   │   │   ├── processBoxShadow.js
│   │   │   │   ├── processColor.d.ts
│   │   │   │   ├── processColor.js
│   │   │   │   ├── processColorArray.js
│   │   │   │   ├── processFilter.js
│   │   │   │   ├── processFontVariant.js
│   │   │   │   ├── processTransform.js
│   │   │   │   ├── processTransformOrigin.js
│   │   │   │   ├── setNormalizedColorAlpha.js
│   │   │   │   └── splitLayoutProps.js
│   │   │   ├── Text/
│   │   │   │   ├── BaseText/
│   │   │   │   │   ├── RCTBaseTextShadowView.h
│   │   │   │   │   ├── RCTBaseTextShadowView.mm
│   │   │   │   │   ├── RCTBaseTextViewManager.h
│   │   │   │   │   └── RCTBaseTextViewManager.mm
│   │   │   │   ├── RCTConvert+Text.h
│   │   │   │   ├── RCTConvert+Text.mm
│   │   │   │   ├── RCTTextAttributes.h
│   │   │   │   ├── RCTTextAttributes.mm
│   │   │   │   ├── RCTTextTransform.h
│   │   │   │   ├── RawText/
│   │   │   │   │   ├── RCTRawTextShadowView.h
│   │   │   │   │   ├── RCTRawTextShadowView.mm
│   │   │   │   │   ├── RCTRawTextViewManager.h
│   │   │   │   │   └── RCTRawTextViewManager.mm
│   │   │   │   ├── React-RCTText.podspec
│   │   │   │   ├── Text/
│   │   │   │   │   ├── NSTextStorage+FontScaling.h
│   │   │   │   │   ├── NSTextStorage+FontScaling.m
│   │   │   │   │   ├── RCTDynamicTypeRamp.h
│   │   │   │   │   ├── RCTDynamicTypeRamp.mm
│   │   │   │   │   ├── RCTTextShadowView.h
│   │   │   │   │   ├── RCTTextShadowView.mm
│   │   │   │   │   ├── RCTTextView.h
│   │   │   │   │   ├── RCTTextView.mm
│   │   │   │   │   ├── RCTTextViewManager.h
│   │   │   │   │   └── RCTTextViewManager.mm
│   │   │   │   ├── Text.d.ts
│   │   │   │   ├── Text.js
│   │   │   │   ├── TextAncestor.js
│   │   │   │   ├── TextAncestorContext.js
│   │   │   │   ├── TextInput/
│   │   │   │   │   ├── Multiline/
│   │   │   │   │   │   ├── RCTMultilineTextInputView.h
│   │   │   │   │   │   ├── RCTMultilineTextInputView.mm
│   │   │   │   │   │   ├── RCTMultilineTextInputViewManager.h
│   │   │   │   │   │   ├── RCTMultilineTextInputViewManager.mm
│   │   │   │   │   │   ├── RCTUITextView.h
│   │   │   │   │   │   └── RCTUITextView.mm
│   │   │   │   │   ├── RCTBackedTextInputDelegate.h
│   │   │   │   │   ├── RCTBackedTextInputDelegateAdapter.h
│   │   │   │   │   ├── RCTBackedTextInputDelegateAdapter.mm
│   │   │   │   │   ├── RCTBackedTextInputViewProtocol.h
│   │   │   │   │   ├── RCTBaseTextInputShadowView.h
│   │   │   │   │   ├── RCTBaseTextInputShadowView.mm
│   │   │   │   │   ├── RCTBaseTextInputView.h
│   │   │   │   │   ├── RCTBaseTextInputView.mm
│   │   │   │   │   ├── RCTBaseTextInputViewManager.h
│   │   │   │   │   ├── RCTBaseTextInputViewManager.mm
│   │   │   │   │   ├── RCTInputAccessoryShadowView.h
│   │   │   │   │   ├── RCTInputAccessoryShadowView.mm
│   │   │   │   │   ├── RCTInputAccessoryView.h
│   │   │   │   │   ├── RCTInputAccessoryView.mm
│   │   │   │   │   ├── RCTInputAccessoryViewContent.h
│   │   │   │   │   ├── RCTInputAccessoryViewContent.mm
│   │   │   │   │   ├── RCTInputAccessoryViewManager.h
│   │   │   │   │   ├── RCTInputAccessoryViewManager.mm
│   │   │   │   │   ├── RCTTextSelection.h
│   │   │   │   │   ├── RCTTextSelection.mm
│   │   │   │   │   └── Singleline/
│   │   │   │   │       ├── RCTSinglelineTextInputView.h
│   │   │   │   │       ├── RCTSinglelineTextInputView.mm
│   │   │   │   │       ├── RCTSinglelineTextInputViewManager.h
│   │   │   │   │       ├── RCTSinglelineTextInputViewManager.mm
│   │   │   │   │       ├── RCTUITextField.h
│   │   │   │   │       └── RCTUITextField.mm
│   │   │   │   ├── TextNativeComponent.js
│   │   │   │   ├── TextProps.js
│   │   │   │   ├── VirtualText/
│   │   │   │   │   ├── RCTVirtualTextShadowView.h
│   │   │   │   │   ├── RCTVirtualTextShadowView.mm
│   │   │   │   │   ├── RCTVirtualTextView.h
│   │   │   │   │   ├── RCTVirtualTextView.mm
│   │   │   │   │   ├── RCTVirtualTextViewManager.h
│   │   │   │   │   └── RCTVirtualTextViewManager.mm
│   │   │   │   └── __tests__/
│   │   │   │       ├── Text-benchmark-itest.js
│   │   │   │       ├── Text-itest.js
│   │   │   │       └── Text-test.js
│   │   │   ├── TurboModule/
│   │   │   │   ├── RCTExport.d.ts
│   │   │   │   ├── RCTExport.js
│   │   │   │   ├── TurboModuleRegistry.d.ts
│   │   │   │   ├── TurboModuleRegistry.js
│   │   │   │   └── samples/
│   │   │   │       └── NativeSampleTurboModule.js
│   │   │   ├── TypeSafety/
│   │   │   │   ├── RCTConvertHelpers.h
│   │   │   │   ├── RCTConvertHelpers.mm
│   │   │   │   ├── RCTTypeSafety.podspec
│   │   │   │   ├── RCTTypedModuleConstants.h
│   │   │   │   └── RCTTypedModuleConstants.mm
│   │   │   ├── Types/
│   │   │   │   ├── CodegenTypes.js
│   │   │   │   ├── CodegenTypesNamespace.d.ts
│   │   │   │   ├── CodegenTypesNamespace.js
│   │   │   │   ├── CoreEventTypes.d.ts
│   │   │   │   ├── CoreEventTypes.js
│   │   │   │   ├── ReactDevToolsTypes.js
│   │   │   │   ├── RootTagTypes.js
│   │   │   │   └── UIManagerJSInterface.js
│   │   │   ├── UTFSequence.js
│   │   │   ├── Utilities/
│   │   │   │   ├── Appearance.d.ts
│   │   │   │   ├── Appearance.js
│   │   │   │   ├── BackHandler.android.js
│   │   │   │   ├── BackHandler.d.ts
│   │   │   │   ├── BackHandler.ios.js
│   │   │   │   ├── BackHandler.js
│   │   │   │   ├── BackHandler.js.flow
│   │   │   │   ├── DevLoadingView.js
│   │   │   │   ├── DevSettings.d.ts
│   │   │   │   ├── DevSettings.js
│   │   │   │   ├── DeviceInfo.js
│   │   │   │   ├── Dimensions.d.ts
│   │   │   │   ├── Dimensions.js
│   │   │   │   ├── FeatureDetection.js
│   │   │   │   ├── GlobalPerformanceLogger.js
│   │   │   │   ├── HMRClient.js
│   │   │   │   ├── HMRClientProdShim.js
│   │   │   │   ├── HardwareBackPressEvent.js
│   │   │   │   ├── IPerformanceLogger.d.ts
│   │   │   │   ├── IPerformanceLogger.js
│   │   │   │   ├── NativeAppearance.js
│   │   │   │   ├── NativeDevLoadingView.js
│   │   │   │   ├── NativeDeviceInfo.js
│   │   │   │   ├── NativePlatformConstantsAndroid.js
│   │   │   │   ├── NativePlatformConstantsIOS.js
│   │   │   │   ├── PerformanceLoggerContext.js
│   │   │   │   ├── PixelRatio.d.ts
│   │   │   │   ├── PixelRatio.js
│   │   │   │   ├── Platform.android.js
│   │   │   │   ├── Platform.d.ts
│   │   │   │   ├── Platform.ios.js
│   │   │   │   ├── Platform.js
│   │   │   │   ├── Platform.js.flow
│   │   │   │   ├── PlatformTypes.js
│   │   │   │   ├── PolyfillFunctions.js
│   │   │   │   ├── RCTLog.js
│   │   │   │   ├── ReactNativeTestTools.js
│   │   │   │   ├── SceneTracker.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── BackHandler.js
│   │   │   │   │   ├── GlobalPerformanceLogger.js
│   │   │   │   │   └── PixelRatio.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── BackHandler-itest.js
│   │   │   │   │   ├── DeviceInfo-test.js
│   │   │   │   │   ├── Dimensions-test.js
│   │   │   │   │   ├── HardwareBackPressEvent-itest.js
│   │   │   │   │   ├── PerformanceLogger-test.js
│   │   │   │   │   ├── PixelRatio-test.js
│   │   │   │   │   ├── Platform-test.js
│   │   │   │   │   ├── ReactNativeTestTools-test.js
│   │   │   │   │   ├── SceneTracker-test.js
│   │   │   │   │   ├── binaryToBase64-test.js
│   │   │   │   │   ├── codegenNativeComponent-test.js
│   │   │   │   │   ├── deepFreezeAndThrowOnMutationInDev-test.js
│   │   │   │   │   ├── logError-test.js
│   │   │   │   │   ├── mapWithSeparator-test.js
│   │   │   │   │   ├── stringifySafe-test.js
│   │   │   │   │   ├── useColorScheme-test.js
│   │   │   │   │   ├── useMergeRefs-test.js
│   │   │   │   │   ├── useRefEffect-test.js
│   │   │   │   │   └── warnOnce-test.js
│   │   │   │   ├── binaryToBase64.js
│   │   │   │   ├── codegenNativeCommands.d.ts
│   │   │   │   ├── codegenNativeCommands.js
│   │   │   │   ├── codegenNativeComponent.d.ts
│   │   │   │   ├── codegenNativeComponent.js
│   │   │   │   ├── createPerformanceLogger.js
│   │   │   │   ├── deepFreezeAndThrowOnMutationInDev.js
│   │   │   │   ├── defineLazyObjectProperty.js
│   │   │   │   ├── differ/
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── deepDiffer-test.js
│   │   │   │   │   │   └── matricesDiffer-test.js
│   │   │   │   │   ├── deepDiffer.js
│   │   │   │   │   ├── insetsDiffer.js
│   │   │   │   │   ├── matricesDiffer.js
│   │   │   │   │   ├── pointsDiffer.js
│   │   │   │   │   └── sizesDiffer.js
│   │   │   │   ├── dismissKeyboard.js
│   │   │   │   ├── logError.js
│   │   │   │   ├── mapWithSeparator.js
│   │   │   │   ├── stringifySafe.js
│   │   │   │   ├── stringifyViewConfig.js
│   │   │   │   ├── useColorScheme.js
│   │   │   │   ├── useMergeRefs.js
│   │   │   │   ├── useRefEffect.js
│   │   │   │   ├── useWindowDimensions.js
│   │   │   │   └── warnOnce.js
│   │   │   ├── Vibration/
│   │   │   │   ├── NativeVibration.js
│   │   │   │   ├── RCTVibration.h
│   │   │   │   ├── RCTVibration.mm
│   │   │   │   ├── RCTVibrationPlugins.h
│   │   │   │   ├── RCTVibrationPlugins.mm
│   │   │   │   ├── React-RCTVibration.podspec
│   │   │   │   ├── Vibration.d.ts
│   │   │   │   └── Vibration.js
│   │   │   ├── WebSocket/
│   │   │   │   ├── NativeWebSocketModule.js
│   │   │   │   ├── RCTReconnectingWebSocket.h
│   │   │   │   ├── RCTReconnectingWebSocket.m
│   │   │   │   ├── WebSocket.js
│   │   │   │   ├── WebSocketInterceptor.js
│   │   │   │   └── __tests__/
│   │   │   │       └── WebSocket-test.js
│   │   │   ├── Wrapper/
│   │   │   │   ├── Example/
│   │   │   │   │   ├── RCTWrapperExampleView.h
│   │   │   │   │   ├── RCTWrapperExampleView.m
│   │   │   │   │   ├── RCTWrapperExampleViewController.h
│   │   │   │   │   ├── RCTWrapperExampleViewController.m
│   │   │   │   │   ├── RCTWrapperReactRootViewController.h
│   │   │   │   │   ├── RCTWrapperReactRootViewController.m
│   │   │   │   │   ├── RCTWrapperReactRootViewManager.h
│   │   │   │   │   └── RCTWrapperReactRootViewManager.m
│   │   │   │   ├── RCTWrapper.h
│   │   │   │   ├── RCTWrapperShadowView.h
│   │   │   │   ├── RCTWrapperShadowView.m
│   │   │   │   ├── RCTWrapperView.h
│   │   │   │   ├── RCTWrapperView.m
│   │   │   │   ├── RCTWrapperViewControllerHostingView.h
│   │   │   │   ├── RCTWrapperViewControllerHostingView.m
│   │   │   │   ├── RCTWrapperViewManager.h
│   │   │   │   └── RCTWrapperViewManager.m
│   │   │   ├── __flowtests__/
│   │   │   │   └── ReactNativeTypes-flowtest.js
│   │   │   └── promiseRejectionTrackingOptions.js
│   │   ├── Package.swift
│   │   ├── README.md
│   │   ├── React/
│   │   │   ├── Base/
│   │   │   │   ├── RCTAssert.h
│   │   │   │   ├── RCTAssert.m
│   │   │   │   ├── RCTBridge+Inspector.h
│   │   │   │   ├── RCTBridge+Private.h
│   │   │   │   ├── RCTBridge.h
│   │   │   │   ├── RCTBridge.mm
│   │   │   │   ├── RCTBridgeConstants.h
│   │   │   │   ├── RCTBridgeConstants.m
│   │   │   │   ├── RCTBridgeDelegate.h
│   │   │   │   ├── RCTBridgeMethod.h
│   │   │   │   ├── RCTBridgeModule.h
│   │   │   │   ├── RCTBridgeModuleDecorator.h
│   │   │   │   ├── RCTBridgeModuleDecorator.m
│   │   │   │   ├── RCTBridgeProxy+Cxx.h
│   │   │   │   ├── RCTBridgeProxy.h
│   │   │   │   ├── RCTBridgeProxy.mm
│   │   │   │   ├── RCTBundleManager.h
│   │   │   │   ├── RCTBundleManager.m
│   │   │   │   ├── RCTBundleURLProvider.h
│   │   │   │   ├── RCTBundleURLProvider.mm
│   │   │   │   ├── RCTCallInvoker.h
│   │   │   │   ├── RCTCallInvoker.mm
│   │   │   │   ├── RCTCallInvokerModule.h
│   │   │   │   ├── RCTCallableJSModules.m
│   │   │   │   ├── RCTComponentEvent.h
│   │   │   │   ├── RCTComponentEvent.m
│   │   │   │   ├── RCTConstants.h
│   │   │   │   ├── RCTConstants.m
│   │   │   │   ├── RCTConvert.h
│   │   │   │   ├── RCTConvert.mm
│   │   │   │   ├── RCTCxxConvert.h
│   │   │   │   ├── RCTCxxConvert.m
│   │   │   │   ├── RCTDefines.h
│   │   │   │   ├── RCTDevSupportHttpHeaders.h
│   │   │   │   ├── RCTDevSupportHttpHeaders.m
│   │   │   │   ├── RCTDisplayLink.h
│   │   │   │   ├── RCTDisplayLink.m
│   │   │   │   ├── RCTErrorCustomizer.h
│   │   │   │   ├── RCTErrorInfo.h
│   │   │   │   ├── RCTErrorInfo.m
│   │   │   │   ├── RCTEventDispatcher.m
│   │   │   │   ├── RCTEventDispatcherProtocol.h
│   │   │   │   ├── RCTFrameUpdate.h
│   │   │   │   ├── RCTFrameUpdate.m
│   │   │   │   ├── RCTImageSource.h
│   │   │   │   ├── RCTImageSource.m
│   │   │   │   ├── RCTInitializing.h
│   │   │   │   ├── RCTInvalidating.h
│   │   │   │   ├── RCTJSStackFrame.h
│   │   │   │   ├── RCTJSStackFrame.m
│   │   │   │   ├── RCTJSThread.h
│   │   │   │   ├── RCTJSThread.m
│   │   │   │   ├── RCTJavaScriptExecutor.h
│   │   │   │   ├── RCTJavaScriptLoader.h
│   │   │   │   ├── RCTJavaScriptLoader.mm
│   │   │   │   ├── RCTKeyCommands.h
│   │   │   │   ├── RCTKeyCommands.m
│   │   │   │   ├── RCTLog.h
│   │   │   │   ├── RCTLog.mm
│   │   │   │   ├── RCTManagedPointer.h
│   │   │   │   ├── RCTManagedPointer.mm
│   │   │   │   ├── RCTMockDef.h
│   │   │   │   ├── RCTModuleData.h
│   │   │   │   ├── RCTModuleData.mm
│   │   │   │   ├── RCTModuleMethod.h
│   │   │   │   ├── RCTModuleMethod.mm
│   │   │   │   ├── RCTModuleRegistry.m
│   │   │   │   ├── RCTMultipartDataTask.h
│   │   │   │   ├── RCTMultipartDataTask.m
│   │   │   │   ├── RCTMultipartStreamReader.h
│   │   │   │   ├── RCTMultipartStreamReader.m
│   │   │   │   ├── RCTNullability.h
│   │   │   │   ├── RCTPLTag.h
│   │   │   │   ├── RCTParserUtils.h
│   │   │   │   ├── RCTParserUtils.m
│   │   │   │   ├── RCTPerformanceLogger.h
│   │   │   │   ├── RCTPerformanceLogger.mm
│   │   │   │   ├── RCTPerformanceLoggerLabels.h
│   │   │   │   ├── RCTPerformanceLoggerLabels.m
│   │   │   │   ├── RCTRedBoxSetEnabled.h
│   │   │   │   ├── RCTRedBoxSetEnabled.m
│   │   │   │   ├── RCTReloadCommand.h
│   │   │   │   ├── RCTReloadCommand.m
│   │   │   │   ├── RCTRootContentView.h
│   │   │   │   ├── RCTRootContentView.m
│   │   │   │   ├── RCTRootView.h
│   │   │   │   ├── RCTRootView.m
│   │   │   │   ├── RCTRootViewDelegate.h
│   │   │   │   ├── RCTRootViewInternal.h
│   │   │   │   ├── RCTTouchEvent.h
│   │   │   │   ├── RCTTouchEvent.m
│   │   │   │   ├── RCTTouchHandler.h
│   │   │   │   ├── RCTTouchHandler.m
│   │   │   │   ├── RCTTurboModuleRegistry.h
│   │   │   │   ├── RCTURLRequestDelegate.h
│   │   │   │   ├── RCTURLRequestHandler.h
│   │   │   │   ├── RCTUtils.h
│   │   │   │   ├── RCTUtils.mm
│   │   │   │   ├── RCTUtilsUIOverride.h
│   │   │   │   ├── RCTUtilsUIOverride.m
│   │   │   │   ├── RCTVersion.h
│   │   │   │   ├── RCTVersion.m
│   │   │   │   ├── RCTViewRegistry.m
│   │   │   │   └── Surface/
│   │   │   │       ├── RCTSurface.h
│   │   │   │       ├── RCTSurface.mm
│   │   │   │       ├── RCTSurfaceDelegate.h
│   │   │   │       ├── RCTSurfaceProtocol.h
│   │   │   │       ├── RCTSurfaceRootShadowView.h
│   │   │   │       ├── RCTSurfaceRootShadowView.m
│   │   │   │       ├── RCTSurfaceRootShadowViewDelegate.h
│   │   │   │       ├── RCTSurfaceRootView.h
│   │   │   │       ├── RCTSurfaceRootView.mm
│   │   │   │       ├── RCTSurfaceStage.h
│   │   │   │       ├── RCTSurfaceStage.m
│   │   │   │       ├── RCTSurfaceView+Internal.h
│   │   │   │       ├── RCTSurfaceView.h
│   │   │   │       ├── RCTSurfaceView.mm
│   │   │   │       └── SurfaceHostingView/
│   │   │   │           ├── RCTSurfaceHostingProxyRootView.h
│   │   │   │           ├── RCTSurfaceHostingProxyRootView.mm
│   │   │   │           ├── RCTSurfaceHostingView.h
│   │   │   │           ├── RCTSurfaceHostingView.mm
│   │   │   │           ├── RCTSurfaceSizeMeasureMode.h
│   │   │   │           └── RCTSurfaceSizeMeasureMode.mm
│   │   │   ├── CoreModules/
│   │   │   │   ├── CoreModulesPlugins.h
│   │   │   │   ├── CoreModulesPlugins.mm
│   │   │   │   ├── PlatformStubs/
│   │   │   │   │   └── RCTStatusBarManager.mm
│   │   │   │   ├── RCTAccessibilityManager+Internal.h
│   │   │   │   ├── RCTAccessibilityManager.h
│   │   │   │   ├── RCTAccessibilityManager.mm
│   │   │   │   ├── RCTActionSheetManager.h
│   │   │   │   ├── RCTActionSheetManager.mm
│   │   │   │   ├── RCTAlertController.h
│   │   │   │   ├── RCTAlertController.mm
│   │   │   │   ├── RCTAlertManager.h
│   │   │   │   ├── RCTAlertManager.mm
│   │   │   │   ├── RCTAppState.h
│   │   │   │   ├── RCTAppState.mm
│   │   │   │   ├── RCTAppearance.h
│   │   │   │   ├── RCTAppearance.mm
│   │   │   │   ├── RCTClipboard.h
│   │   │   │   ├── RCTClipboard.mm
│   │   │   │   ├── RCTDevLoadingView.h
│   │   │   │   ├── RCTDevLoadingView.mm
│   │   │   │   ├── RCTDevMenu.h
│   │   │   │   ├── RCTDevMenu.mm
│   │   │   │   ├── RCTDevMenuConfigurationDecorator.h
│   │   │   │   ├── RCTDevMenuConfigurationDecorator.mm
│   │   │   │   ├── RCTDevSettings.h
│   │   │   │   ├── RCTDevSettings.mm
│   │   │   │   ├── RCTDevToolsRuntimeSettingsModule.h
│   │   │   │   ├── RCTDevToolsRuntimeSettingsModule.mm
│   │   │   │   ├── RCTDeviceInfo.h
│   │   │   │   ├── RCTDeviceInfo.mm
│   │   │   │   ├── RCTEventDispatcher.h
│   │   │   │   ├── RCTEventDispatcher.mm
│   │   │   │   ├── RCTExceptionsManager.h
│   │   │   │   ├── RCTExceptionsManager.mm
│   │   │   │   ├── RCTFPSGraph.h
│   │   │   │   ├── RCTFPSGraph.mm
│   │   │   │   ├── RCTI18nManager.h
│   │   │   │   ├── RCTI18nManager.mm
│   │   │   │   ├── RCTKeyboardObserver.h
│   │   │   │   ├── RCTKeyboardObserver.mm
│   │   │   │   ├── RCTLogBox.h
│   │   │   │   ├── RCTLogBox.mm
│   │   │   │   ├── RCTLogBoxView.h
│   │   │   │   ├── RCTLogBoxView.mm
│   │   │   │   ├── RCTPerfMonitor.mm
│   │   │   │   ├── RCTPlatform.h
│   │   │   │   ├── RCTPlatform.mm
│   │   │   │   ├── RCTRedBox.h
│   │   │   │   ├── RCTRedBox.mm
│   │   │   │   ├── RCTSourceCode.h
│   │   │   │   ├── RCTSourceCode.mm
│   │   │   │   ├── RCTStatusBarManager.h
│   │   │   │   ├── RCTStatusBarManager.mm
│   │   │   │   ├── RCTTiming.h
│   │   │   │   ├── RCTTiming.mm
│   │   │   │   ├── RCTWebSocketModule.h
│   │   │   │   ├── RCTWebSocketModule.mm
│   │   │   │   └── React-CoreModules.podspec
│   │   │   ├── CxxBridge/
│   │   │   │   ├── NSDataBigString.h
│   │   │   │   ├── NSDataBigString.mm
│   │   │   │   ├── RCTCxxBridge.mm
│   │   │   │   ├── RCTCxxBridgeDelegate.h
│   │   │   │   ├── RCTJSIExecutorRuntimeInstaller.h
│   │   │   │   ├── RCTJSIExecutorRuntimeInstaller.mm
│   │   │   │   ├── RCTMessageThread.h
│   │   │   │   ├── RCTMessageThread.mm
│   │   │   │   ├── RCTObjcExecutor.h
│   │   │   │   └── RCTObjcExecutor.mm
│   │   │   ├── CxxLogUtils/
│   │   │   │   ├── RCTDefaultCxxLogFunction.h
│   │   │   │   └── RCTDefaultCxxLogFunction.mm
│   │   │   ├── CxxModule/
│   │   │   │   ├── DispatchMessageQueueThread.h
│   │   │   │   ├── RCTCxxMethod.h
│   │   │   │   ├── RCTCxxMethod.mm
│   │   │   │   ├── RCTCxxUtils.h
│   │   │   │   ├── RCTCxxUtils.mm
│   │   │   │   ├── RCTNativeModule.h
│   │   │   │   └── RCTNativeModule.mm
│   │   │   ├── CxxUtils/
│   │   │   │   └── RCTFollyConvert.h
│   │   │   ├── DevSupport/
│   │   │   │   ├── RCTDevLoadingViewProtocol.h
│   │   │   │   ├── RCTDevLoadingViewSetEnabled.h
│   │   │   │   ├── RCTDevLoadingViewSetEnabled.m
│   │   │   │   ├── RCTFrameTimingsObserver.h
│   │   │   │   ├── RCTFrameTimingsObserver.mm
│   │   │   │   ├── RCTInspectorDevServerHelper.h
│   │   │   │   ├── RCTInspectorDevServerHelper.mm
│   │   │   │   ├── RCTInspectorNetworkHelper.h
│   │   │   │   ├── RCTInspectorNetworkHelper.mm
│   │   │   │   ├── RCTInspectorUtils.h
│   │   │   │   ├── RCTInspectorUtils.mm
│   │   │   │   ├── RCTPackagerClient.h
│   │   │   │   ├── RCTPackagerClient.m
│   │   │   │   ├── RCTPackagerConnection.h
│   │   │   │   ├── RCTPackagerConnection.mm
│   │   │   │   ├── RCTPausedInDebuggerOverlayController.h
│   │   │   │   └── RCTPausedInDebuggerOverlayController.mm
│   │   │   ├── Fabric/
│   │   │   │   ├── AppleEventBeat.cpp
│   │   │   │   ├── AppleEventBeat.h
│   │   │   │   ├── Mounting/
│   │   │   │   │   ├── ComponentViews/
│   │   │   │   │   │   ├── ActivityIndicator/
│   │   │   │   │   │   │   ├── RCTActivityIndicatorViewComponentView.h
│   │   │   │   │   │   │   └── RCTActivityIndicatorViewComponentView.mm
│   │   │   │   │   │   ├── DebuggingOverlay/
│   │   │   │   │   │   │   ├── RCTDebuggingOverlayComponentView.h
│   │   │   │   │   │   │   └── RCTDebuggingOverlayComponentView.mm
│   │   │   │   │   │   ├── Image/
│   │   │   │   │   │   │   ├── RCTImageComponentView.h
│   │   │   │   │   │   │   └── RCTImageComponentView.mm
│   │   │   │   │   │   ├── InputAccessory/
│   │   │   │   │   │   │   ├── RCTInputAccessoryComponentView.h
│   │   │   │   │   │   │   ├── RCTInputAccessoryComponentView.mm
│   │   │   │   │   │   │   ├── RCTInputAccessoryContentView.h
│   │   │   │   │   │   │   └── RCTInputAccessoryContentView.mm
│   │   │   │   │   │   ├── LegacyViewManagerInterop/
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropComponentView.h
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropComponentView.mm
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropCoordinatorAdapter.h
│   │   │   │   │   │   │   └── RCTLegacyViewManagerInteropCoordinatorAdapter.mm
│   │   │   │   │   │   ├── Modal/
│   │   │   │   │   │   │   ├── RCTFabricModalHostViewController.h
│   │   │   │   │   │   │   ├── RCTFabricModalHostViewController.mm
│   │   │   │   │   │   │   ├── RCTModalHostViewComponentView.h
│   │   │   │   │   │   │   └── RCTModalHostViewComponentView.mm
│   │   │   │   │   │   ├── RCTFabricComponentsPlugins.h
│   │   │   │   │   │   ├── RCTFabricComponentsPlugins.mm
│   │   │   │   │   │   ├── Root/
│   │   │   │   │   │   │   ├── RCTRootComponentView.h
│   │   │   │   │   │   │   └── RCTRootComponentView.mm
│   │   │   │   │   │   ├── SafeAreaView/
│   │   │   │   │   │   │   ├── RCTSafeAreaViewComponentView.h
│   │   │   │   │   │   │   └── RCTSafeAreaViewComponentView.mm
│   │   │   │   │   │   ├── ScrollView/
│   │   │   │   │   │   │   ├── RCTCustomPullToRefreshViewProtocol.h
│   │   │   │   │   │   │   ├── RCTEnhancedScrollView.h
│   │   │   │   │   │   │   ├── RCTEnhancedScrollView.mm
│   │   │   │   │   │   │   ├── RCTPullToRefreshViewComponentView.h
│   │   │   │   │   │   │   ├── RCTPullToRefreshViewComponentView.mm
│   │   │   │   │   │   │   ├── RCTScrollViewComponentView.h
│   │   │   │   │   │   │   ├── RCTScrollViewComponentView.mm
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerProtocol.h
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerState.h
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerState.mm
│   │   │   │   │   │   │   └── RCTVirtualViewProtocol.h
│   │   │   │   │   │   ├── Switch/
│   │   │   │   │   │   │   ├── RCTSwitchComponentView.h
│   │   │   │   │   │   │   └── RCTSwitchComponentView.mm
│   │   │   │   │   │   ├── Text/
│   │   │   │   │   │   │   ├── RCTAccessibilityElement.h
│   │   │   │   │   │   │   ├── RCTAccessibilityElement.mm
│   │   │   │   │   │   │   ├── RCTParagraphComponentAccessibilityProvider.h
│   │   │   │   │   │   │   ├── RCTParagraphComponentAccessibilityProvider.mm
│   │   │   │   │   │   │   ├── RCTParagraphComponentView.h
│   │   │   │   │   │   │   └── RCTParagraphComponentView.mm
│   │   │   │   │   │   ├── TextInput/
│   │   │   │   │   │   │   ├── RCTTextInputComponentView.h
│   │   │   │   │   │   │   ├── RCTTextInputComponentView.mm
│   │   │   │   │   │   │   ├── RCTTextInputNativeCommands.h
│   │   │   │   │   │   │   ├── RCTTextInputUtils.h
│   │   │   │   │   │   │   └── RCTTextInputUtils.mm
│   │   │   │   │   │   ├── UnimplementedComponent/
│   │   │   │   │   │   │   ├── RCTUnimplementedNativeComponentView.h
│   │   │   │   │   │   │   └── RCTUnimplementedNativeComponentView.mm
│   │   │   │   │   │   ├── UnimplementedView/
│   │   │   │   │   │   │   ├── RCTUnimplementedViewComponentView.h
│   │   │   │   │   │   │   └── RCTUnimplementedViewComponentView.mm
│   │   │   │   │   │   ├── View/
│   │   │   │   │   │   │   ├── RCTViewComponentView.h
│   │   │   │   │   │   │   └── RCTViewComponentView.mm
│   │   │   │   │   │   └── VirtualView/
│   │   │   │   │   │       ├── RCTVirtualViewComponentView.h
│   │   │   │   │   │       ├── RCTVirtualViewComponentView.mm
│   │   │   │   │   │       ├── RCTVirtualViewMode.h
│   │   │   │   │   │       └── RCTVirtualViewRenderState.h
│   │   │   │   │   ├── RCTComponentViewClassDescriptor.h
│   │   │   │   │   ├── RCTComponentViewDescriptor.h
│   │   │   │   │   ├── RCTComponentViewFactory.h
│   │   │   │   │   ├── RCTComponentViewFactory.mm
│   │   │   │   │   ├── RCTComponentViewProtocol.h
│   │   │   │   │   ├── RCTComponentViewRegistry.h
│   │   │   │   │   ├── RCTComponentViewRegistry.mm
│   │   │   │   │   ├── RCTMountingManager.h
│   │   │   │   │   ├── RCTMountingManager.mm
│   │   │   │   │   ├── RCTMountingManagerDelegate.h
│   │   │   │   │   ├── RCTMountingTransactionObserverCoordinator.h
│   │   │   │   │   ├── RCTMountingTransactionObserverCoordinator.mm
│   │   │   │   │   ├── RCTMountingTransactionObserving.h
│   │   │   │   │   ├── UIView+ComponentViewProtocol.h
│   │   │   │   │   └── UIView+ComponentViewProtocol.mm
│   │   │   │   ├── RCTConversions.h
│   │   │   │   ├── RCTImageResponseDelegate.h
│   │   │   │   ├── RCTImageResponseObserverProxy.h
│   │   │   │   ├── RCTImageResponseObserverProxy.mm
│   │   │   │   ├── RCTLocalizationProvider.h
│   │   │   │   ├── RCTLocalizationProvider.mm
│   │   │   │   ├── RCTPrimitives.h
│   │   │   │   ├── RCTScheduler.h
│   │   │   │   ├── RCTScheduler.mm
│   │   │   │   ├── RCTSurfacePointerHandler.h
│   │   │   │   ├── RCTSurfacePointerHandler.mm
│   │   │   │   ├── RCTSurfacePresenter.h
│   │   │   │   ├── RCTSurfacePresenter.mm
│   │   │   │   ├── RCTSurfacePresenterBridgeAdapter.h
│   │   │   │   ├── RCTSurfacePresenterBridgeAdapter.mm
│   │   │   │   ├── RCTSurfaceRegistry.h
│   │   │   │   ├── RCTSurfaceRegistry.mm
│   │   │   │   ├── RCTSurfaceTouchHandler.h
│   │   │   │   ├── RCTSurfaceTouchHandler.mm
│   │   │   │   ├── RCTTouchableComponentViewProtocol.h
│   │   │   │   ├── Surface/
│   │   │   │   │   ├── RCTFabricSurface.h
│   │   │   │   │   └── RCTFabricSurface.mm
│   │   │   │   └── Utils/
│   │   │   │       ├── PlatformRunLoopObserver.h
│   │   │   │       ├── PlatformRunLoopObserver.mm
│   │   │   │       ├── RCTBackgroundImageUtils.h
│   │   │   │       ├── RCTBackgroundImageUtils.mm
│   │   │   │       ├── RCTBoxShadow.h
│   │   │   │       ├── RCTBoxShadow.mm
│   │   │   │       ├── RCTColorSpaceUtils.h
│   │   │   │       ├── RCTColorSpaceUtils.mm
│   │   │   │       ├── RCTGenericDelegateSplitter.h
│   │   │   │       ├── RCTGenericDelegateSplitter.mm
│   │   │   │       ├── RCTGradientUtils.h
│   │   │   │       ├── RCTGradientUtils.mm
│   │   │   │       ├── RCTIdentifierPool.h
│   │   │   │       ├── RCTLinearGradient.h
│   │   │   │       ├── RCTLinearGradient.mm
│   │   │   │       ├── RCTRadialGradient.h
│   │   │   │       ├── RCTRadialGradient.mm
│   │   │   │       ├── RCTReactTaggedView.h
│   │   │   │       └── RCTReactTaggedView.mm
│   │   │   ├── I18n/
│   │   │   │   ├── .clang-format-ignore
│   │   │   │   ├── FBXXHashUtils.h
│   │   │   │   ├── RCTLocalizedString.h
│   │   │   │   ├── RCTLocalizedString.mm
│   │   │   │   └── strings/
│   │   │   │       ├── ar.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── cs.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── da.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── de.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── el.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── en-GB.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── en.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── es-ES.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── es.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── fi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── fr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── he.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hu.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── id.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── it.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ja.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ko.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ms.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── nb.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── nl.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pl.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pt-PT.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pt.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ro.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ru.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── sk.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── sv.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── th.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── tr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── uk.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── vi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hans.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hant-HK.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hant.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       └── zu.lproj/
│   │   │   │           └── Localizable.strings
│   │   │   ├── Inspector/
│   │   │   │   ├── RCTCxxInspectorPackagerConnection.h
│   │   │   │   ├── RCTCxxInspectorPackagerConnection.mm
│   │   │   │   ├── RCTCxxInspectorPackagerConnectionDelegate.h
│   │   │   │   ├── RCTCxxInspectorPackagerConnectionDelegate.mm
│   │   │   │   ├── RCTCxxInspectorWebSocketAdapter.h
│   │   │   │   ├── RCTCxxInspectorWebSocketAdapter.mm
│   │   │   │   ├── RCTInspector.h
│   │   │   │   ├── RCTInspector.mm
│   │   │   │   └── RCTInspectorPackagerConnection.h
│   │   │   ├── Modules/
│   │   │   │   ├── RCTEventEmitter.h
│   │   │   │   ├── RCTEventEmitter.m
│   │   │   │   ├── RCTI18nUtil.h
│   │   │   │   ├── RCTI18nUtil.m
│   │   │   │   ├── RCTLayoutAnimation.h
│   │   │   │   ├── RCTLayoutAnimation.m
│   │   │   │   ├── RCTLayoutAnimationGroup.h
│   │   │   │   ├── RCTLayoutAnimationGroup.m
│   │   │   │   ├── RCTRedBoxExtraDataViewController.h
│   │   │   │   ├── RCTRedBoxExtraDataViewController.m
│   │   │   │   ├── RCTSurfacePresenterStub.h
│   │   │   │   ├── RCTSurfacePresenterStub.m
│   │   │   │   ├── RCTUIManager.h
│   │   │   │   ├── RCTUIManager.mm
│   │   │   │   ├── RCTUIManagerObserverCoordinator.h
│   │   │   │   ├── RCTUIManagerObserverCoordinator.mm
│   │   │   │   ├── RCTUIManagerUtils.h
│   │   │   │   └── RCTUIManagerUtils.m
│   │   │   ├── Profiler/
│   │   │   │   ├── RCTMacros.h
│   │   │   │   ├── RCTProfile.h
│   │   │   │   ├── RCTProfile.m
│   │   │   │   ├── RCTProfileTrampoline-arm.S
│   │   │   │   ├── RCTProfileTrampoline-arm64.S
│   │   │   │   ├── RCTProfileTrampoline-i386.S
│   │   │   │   └── RCTProfileTrampoline-x86_64.S
│   │   │   ├── React-RCTFBReactNativeSpec.podspec
│   │   │   ├── React-RCTFabric.podspec
│   │   │   ├── Resources/
│   │   │   │   └── PrivacyInfo.xcprivacy
│   │   │   ├── Runtime/
│   │   │   │   ├── RCTHermesInstanceFactory.h
│   │   │   │   ├── RCTHermesInstanceFactory.mm
│   │   │   │   └── React-RCTRuntime.podspec
│   │   │   ├── Tests/
│   │   │   │   ├── Mounting/
│   │   │   │   │   ├── RCTComponentViewRegistryTests.mm
│   │   │   │   │   └── RCTViewComponentViewTests.mm
│   │   │   │   └── Text/
│   │   │   │       ├── RCTAttributedTextUtilsTest.mm
│   │   │   │       ├── RCTParagraphComponentViewTests.mm
│   │   │   │       └── RCTTextAttributesTest.mm
│   │   │   ├── Views/
│   │   │   │   ├── RCTActivityIndicatorView.h
│   │   │   │   ├── RCTActivityIndicatorView.m
│   │   │   │   ├── RCTActivityIndicatorViewManager.h
│   │   │   │   ├── RCTActivityIndicatorViewManager.m
│   │   │   │   ├── RCTAnimationType.h
│   │   │   │   ├── RCTAutoInsetsProtocol.h
│   │   │   │   ├── RCTBorderCurve.h
│   │   │   │   ├── RCTBorderDrawing.h
│   │   │   │   ├── RCTBorderDrawing.m
│   │   │   │   ├── RCTBorderStyle.h
│   │   │   │   ├── RCTComponent.h
│   │   │   │   ├── RCTComponentData.h
│   │   │   │   ├── RCTComponentData.mm
│   │   │   │   ├── RCTConvert+CoreLocation.h
│   │   │   │   ├── RCTConvert+CoreLocation.m
│   │   │   │   ├── RCTConvert+Transform.h
│   │   │   │   ├── RCTConvert+Transform.m
│   │   │   │   ├── RCTCursor.h
│   │   │   │   ├── RCTDebuggingOverlay.h
│   │   │   │   ├── RCTDebuggingOverlay.m
│   │   │   │   ├── RCTDebuggingOverlayManager.h
│   │   │   │   ├── RCTDebuggingOverlayManager.m
│   │   │   │   ├── RCTFont+Private.h
│   │   │   │   ├── RCTFont.h
│   │   │   │   ├── RCTFont.mm
│   │   │   │   ├── RCTLayout.h
│   │   │   │   ├── RCTLayout.m
│   │   │   │   ├── RCTModalHostView.h
│   │   │   │   ├── RCTModalHostView.m
│   │   │   │   ├── RCTModalHostViewController.h
│   │   │   │   ├── RCTModalHostViewController.m
│   │   │   │   ├── RCTModalHostViewManager.h
│   │   │   │   ├── RCTModalHostViewManager.m
│   │   │   │   ├── RCTModalManager.h
│   │   │   │   ├── RCTModalManager.m
│   │   │   │   ├── RCTPointerEvents.h
│   │   │   │   ├── RCTRootShadowView.h
│   │   │   │   ├── RCTRootShadowView.m
│   │   │   │   ├── RCTShadowView+Internal.h
│   │   │   │   ├── RCTShadowView+Internal.m
│   │   │   │   ├── RCTShadowView+Layout.h
│   │   │   │   ├── RCTShadowView+Layout.m
│   │   │   │   ├── RCTShadowView.h
│   │   │   │   ├── RCTShadowView.m
│   │   │   │   ├── RCTSwitch.h
│   │   │   │   ├── RCTSwitch.m
│   │   │   │   ├── RCTSwitchManager.h
│   │   │   │   ├── RCTSwitchManager.m
│   │   │   │   ├── RCTTextDecorationLineType.h
│   │   │   │   ├── RCTView.h
│   │   │   │   ├── RCTView.m
│   │   │   │   ├── RCTViewManager.h
│   │   │   │   ├── RCTViewManager.m
│   │   │   │   ├── RCTViewUtils.h
│   │   │   │   ├── RCTViewUtils.m
│   │   │   │   ├── RCTWrapperViewController.h
│   │   │   │   ├── RCTWrapperViewController.m
│   │   │   │   ├── RefreshControl/
│   │   │   │   │   ├── RCTRefreshControl.h
│   │   │   │   │   ├── RCTRefreshControl.m
│   │   │   │   │   ├── RCTRefreshControlManager.h
│   │   │   │   │   ├── RCTRefreshControlManager.m
│   │   │   │   │   └── RCTRefreshableProtocol.h
│   │   │   │   ├── SafeAreaView/
│   │   │   │   │   ├── RCTSafeAreaShadowView.h
│   │   │   │   │   ├── RCTSafeAreaShadowView.m
│   │   │   │   │   ├── RCTSafeAreaView.h
│   │   │   │   │   ├── RCTSafeAreaView.m
│   │   │   │   │   ├── RCTSafeAreaViewLocalData.h
│   │   │   │   │   ├── RCTSafeAreaViewLocalData.m
│   │   │   │   │   ├── RCTSafeAreaViewManager.h
│   │   │   │   │   └── RCTSafeAreaViewManager.m
│   │   │   │   ├── ScrollView/
│   │   │   │   │   ├── RCTScrollContentShadowView.h
│   │   │   │   │   ├── RCTScrollContentShadowView.m
│   │   │   │   │   ├── RCTScrollContentView.h
│   │   │   │   │   ├── RCTScrollContentView.m
│   │   │   │   │   ├── RCTScrollContentViewManager.h
│   │   │   │   │   ├── RCTScrollContentViewManager.m
│   │   │   │   │   ├── RCTScrollEvent.h
│   │   │   │   │   ├── RCTScrollEvent.m
│   │   │   │   │   ├── RCTScrollView.h
│   │   │   │   │   ├── RCTScrollView.m
│   │   │   │   │   ├── RCTScrollViewManager.h
│   │   │   │   │   ├── RCTScrollViewManager.m
│   │   │   │   │   └── RCTScrollableProtocol.h
│   │   │   │   ├── UIView+Private.h
│   │   │   │   ├── UIView+React.h
│   │   │   │   └── UIView+React.m
│   │   │   └── third-party.xcconfig
│   │   ├── React-Core-prebuilt.podspec
│   │   ├── React-Core.podspec
│   │   ├── React.podspec
│   │   ├── ReactAndroid/
│   │   │   ├── README.md
│   │   │   ├── api/
│   │   │   │   └── ReactAndroid.api
│   │   │   ├── build.gradle.kts
│   │   │   ├── cmake-utils/
│   │   │   │   ├── ReactNative-application.cmake
│   │   │   │   ├── default-app-setup/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   └── OnLoad.cpp
│   │   │   │   └── folly-flags.cmake
│   │   │   ├── external-artifacts/
│   │   │   │   └── build.gradle.kts
│   │   │   ├── gradle.properties
│   │   │   ├── hermes-engine/
│   │   │   │   ├── build.gradle.kts
│   │   │   │   └── gradle.properties
│   │   │   ├── proguard-rules.pro
│   │   │   ├── publish.gradle
│   │   │   └── src/
│   │   │       ├── debug/
│   │   │       │   └── AndroidManifest.xml
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── facebook/
│   │   │       │   │           ├── debug/
│   │   │       │   │           │   ├── debugoverlay/
│   │   │       │   │           │   │   └── model/
│   │   │       │   │           │   │       └── DebugOverlayTag.kt
│   │   │       │   │           │   ├── holder/
│   │   │       │   │           │   │   ├── NoopPrinter.kt
│   │   │       │   │           │   │   ├── Printer.kt
│   │   │       │   │           │   │   └── PrinterHolder.kt
│   │   │       │   │           │   └── tags/
│   │   │       │   │           │       └── ReactDebugOverlayTags.kt
│   │   │       │   │           ├── hermes/
│   │   │       │   │           │   ├── instrumentation/
│   │   │       │   │           │   │   ├── HermesMemoryDumper.kt
│   │   │       │   │           │   │   └── HermesSamplingProfiler.kt
│   │   │       │   │           │   └── reactexecutor/
│   │   │       │   │           │       ├── HermesExecutor.kt
│   │   │       │   │           │       ├── HermesExecutorFactory.kt
│   │   │       │   │           │       └── fbjni.pro
│   │   │       │   │           ├── react/
│   │   │       │   │           │   ├── BaseReactPackage.kt
│   │   │       │   │           │   ├── DebugCorePackage.kt
│   │   │       │   │           │   ├── HeadlessJsTaskService.kt
│   │   │       │   │           │   ├── MemoryPressureRouter.kt
│   │   │       │   │           │   ├── NativeModuleRegistryBuilder.kt
│   │   │       │   │           │   ├── ReactActivity.java
│   │   │       │   │           │   ├── ReactActivityDelegate.java
│   │   │       │   │           │   ├── ReactAndroidHWInputDeviceHelper.kt
│   │   │       │   │           │   ├── ReactApplication.kt
│   │   │       │   │           │   ├── ReactDelegate.kt
│   │   │       │   │           │   ├── ReactFragment.kt
│   │   │       │   │           │   ├── ReactHost.kt
│   │   │       │   │           │   ├── ReactInstanceEventListener.kt
│   │   │       │   │           │   ├── ReactInstanceManager.java
│   │   │       │   │           │   ├── ReactInstanceManagerBuilder.kt
│   │   │       │   │           │   ├── ReactNativeHost.java
│   │   │       │   │           │   ├── ReactPackage.kt
│   │   │       │   │           │   ├── ReactPackageHelper.kt
│   │   │       │   │           │   ├── ReactPackageTurboModuleManagerDelegate.kt
│   │   │       │   │           │   ├── ReactRootView.java
│   │   │       │   │           │   ├── TurboReactPackage.kt
│   │   │       │   │           │   ├── ViewManagerOnDemandReactPackage.kt
│   │   │       │   │           │   ├── animated/
│   │   │       │   │           │   │   ├── AdditionAnimatedNode.kt
│   │   │       │   │           │   │   ├── AnimatedNode.kt
│   │   │       │   │           │   │   ├── AnimatedNodeValueListener.kt
│   │   │       │   │           │   │   ├── AnimatedNodeWithUpdateableConfig.kt
│   │   │       │   │           │   │   ├── AnimationDriver.kt
│   │   │       │   │           │   │   ├── ColorAnimatedNode.kt
│   │   │       │   │           │   │   ├── DecayAnimation.kt
│   │   │       │   │           │   │   ├── DiffClampAnimatedNode.kt
│   │   │       │   │           │   │   ├── DivisionAnimatedNode.kt
│   │   │       │   │           │   │   ├── EventAnimationDriver.kt
│   │   │       │   │           │   │   ├── FrameBasedAnimationDriver.kt
│   │   │       │   │           │   │   ├── InterpolationAnimatedNode.kt
│   │   │       │   │           │   │   ├── ModulusAnimatedNode.kt
│   │   │       │   │           │   │   ├── MultiplicationAnimatedNode.kt
│   │   │       │   │           │   │   ├── NativeAnimatedModule.kt
│   │   │       │   │           │   │   ├── NativeAnimatedNodesManager.kt
│   │   │       │   │           │   │   ├── ObjectAnimatedNode.kt
│   │   │       │   │           │   │   ├── PropsAnimatedNode.kt
│   │   │       │   │           │   │   ├── SpringAnimation.kt
│   │   │       │   │           │   │   ├── StyleAnimatedNode.kt
│   │   │       │   │           │   │   ├── SubtractionAnimatedNode.kt
│   │   │       │   │           │   │   ├── TrackingAnimatedNode.kt
│   │   │       │   │           │   │   ├── TransformAnimatedNode.kt
│   │   │       │   │           │   │   └── ValueAnimatedNode.kt
│   │   │       │   │           │   ├── bridge/
│   │   │       │   │           │   │   ├── ActivityEventListener.kt
│   │   │       │   │           │   │   ├── Arguments.kt
│   │   │       │   │           │   │   ├── AssertionException.kt
│   │   │       │   │           │   │   ├── BaseActivityEventListener.kt
│   │   │       │   │           │   │   ├── BaseJavaModule.java
│   │   │       │   │           │   │   ├── BridgeReactContext.java
│   │   │       │   │           │   │   ├── Callback.kt
│   │   │       │   │           │   │   ├── CatalystInstance.kt
│   │   │       │   │           │   │   ├── ColorPropConverter.kt
│   │   │       │   │           │   │   ├── CxxCallbackImpl.kt
│   │   │       │   │           │   │   ├── DefaultJSExceptionHandler.kt
│   │   │       │   │           │   │   ├── DimensionPropConverter.kt
│   │   │       │   │           │   │   ├── Dynamic.kt
│   │   │       │   │           │   │   ├── DynamicFromArray.kt
│   │   │       │   │           │   │   ├── DynamicFromMap.kt
│   │   │       │   │           │   │   ├── DynamicFromObject.kt
│   │   │       │   │           │   │   ├── DynamicNative.kt
│   │   │       │   │           │   │   ├── GuardedAsyncTask.kt
│   │   │       │   │           │   │   ├── GuardedRunnable.kt
│   │   │       │   │           │   │   ├── JSApplicationCausedNativeException.kt
│   │   │       │   │           │   │   ├── JSApplicationIllegalArgumentException.kt
│   │   │       │   │           │   │   ├── JSBundleLoader.kt
│   │   │       │   │           │   │   ├── JSBundleLoaderDelegate.kt
│   │   │       │   │           │   │   ├── JSExceptionHandler.kt
│   │   │       │   │           │   │   ├── JSInstance.kt
│   │   │       │   │           │   │   ├── JavaMethodWrapper.kt
│   │   │       │   │           │   │   ├── JavaModuleWrapper.kt
│   │   │       │   │           │   │   ├── JavaOnlyArray.kt
│   │   │       │   │           │   │   ├── JavaOnlyMap.kt
│   │   │       │   │           │   │   ├── JavaScriptContextHolder.kt
│   │   │       │   │           │   │   ├── JavaScriptExecutor.kt
│   │   │       │   │           │   │   ├── JavaScriptExecutorFactory.kt
│   │   │       │   │           │   │   ├── JavaScriptModule.kt
│   │   │       │   │           │   │   ├── JavaScriptModuleRegistry.kt
│   │   │       │   │           │   │   ├── JsonWriterHelper.kt
│   │   │       │   │           │   │   ├── LifecycleEventListener.kt
│   │   │       │   │           │   │   ├── MemoryPressureListener.kt
│   │   │       │   │           │   │   ├── ModuleHolder.kt
│   │   │       │   │           │   │   ├── ModuleSpec.kt
│   │   │       │   │           │   │   ├── NativeArray.kt
│   │   │       │   │           │   │   ├── NativeArrayInterface.kt
│   │   │       │   │           │   │   ├── NativeMap.kt
│   │   │       │   │           │   │   ├── NativeModule.java
│   │   │       │   │           │   │   ├── NativeModuleRegistry.kt
│   │   │       │   │           │   │   ├── NoSuchKeyException.kt
│   │   │       │   │           │   │   ├── ObjectAlreadyConsumedException.kt
│   │   │       │   │           │   │   ├── PerformanceCounter.kt
│   │   │       │   │           │   │   ├── Promise.kt
│   │   │       │   │           │   │   ├── PromiseImpl.kt
│   │   │       │   │           │   │   ├── ReactApplicationContext.kt
│   │   │       │   │           │   │   ├── ReactContext.java
│   │   │       │   │           │   │   ├── ReactContextBaseJavaModule.kt
│   │   │       │   │           │   │   ├── ReactIgnorableMountingException.kt
│   │   │       │   │           │   │   ├── ReactMarker.kt
│   │   │       │   │           │   │   ├── ReactMarkerConstants.kt
│   │   │       │   │           │   │   ├── ReactMethod.kt
│   │   │       │   │           │   │   ├── ReactModuleWithSpec.kt
│   │   │       │   │           │   │   ├── ReactNativeJNISoLoader.kt
│   │   │       │   │           │   │   ├── ReactNativeJniCommonSoLoader.kt
│   │   │       │   │           │   │   ├── ReactNoCrashSoftException.kt
│   │   │       │   │           │   │   ├── ReactSoftExceptionLogger.kt
│   │   │       │   │           │   │   ├── ReadableArray.kt
│   │   │       │   │           │   │   ├── ReadableArrayBuilder.kt
│   │   │       │   │           │   │   ├── ReadableMap.kt
│   │   │       │   │           │   │   ├── ReadableMapBuilder.kt
│   │   │       │   │           │   │   ├── ReadableMapKeySetIterator.kt
│   │   │       │   │           │   │   ├── ReadableNativeArray.kt
│   │   │       │   │           │   │   ├── ReadableNativeMap.kt
│   │   │       │   │           │   │   ├── ReadableType.kt
│   │   │       │   │           │   │   ├── RetryableMountingLayerException.kt
│   │   │       │   │           │   │   ├── RuntimeExecutor.kt
│   │   │       │   │           │   │   ├── RuntimeScheduler.kt
│   │   │       │   │           │   │   ├── ScrollEndedListener.kt
│   │   │       │   │           │   │   ├── SoftAssertions.kt
│   │   │       │   │           │   │   ├── Systrace.kt
│   │   │       │   │           │   │   ├── UIManager.kt
│   │   │       │   │           │   │   ├── UIManagerListener.kt
│   │   │       │   │           │   │   ├── UIManagerProvider.kt
│   │   │       │   │           │   │   ├── UiThreadUtil.kt
│   │   │       │   │           │   │   ├── UnexpectedNativeTypeException.kt
│   │   │       │   │           │   │   ├── WindowFocusChangeListener.kt
│   │   │       │   │           │   │   ├── WritableArray.kt
│   │   │       │   │           │   │   ├── WritableMap.kt
│   │   │       │   │           │   │   ├── WritableNativeArray.kt
│   │   │       │   │           │   │   ├── WritableNativeMap.kt
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   └── InteropModuleRegistry.kt
│   │   │       │   │           │   │   ├── queue/
│   │   │       │   │           │   │   │   ├── MessageQueueThread.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadHandler.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadImpl.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadPerfStats.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadSpec.kt
│   │   │       │   │           │   │   │   ├── QueueThreadExceptionHandler.kt
│   │   │       │   │           │   │   │   ├── ReactQueueConfiguration.kt
│   │   │       │   │           │   │   │   ├── ReactQueueConfigurationImpl.kt
│   │   │       │   │           │   │   │   └── ReactQueueConfigurationSpec.kt
│   │   │       │   │           │   │   └── reactnative.pro
│   │   │       │   │           │   ├── common/
│   │   │       │   │           │   │   ├── ClassFinder.kt
│   │   │       │   │           │   │   ├── ClearableSynchronizedPool.kt
│   │   │       │   │           │   │   ├── DebugServerException.kt
│   │   │       │   │           │   │   ├── JavascriptException.kt
│   │   │       │   │           │   │   ├── LifecycleState.kt
│   │   │       │   │           │   │   ├── MapBuilder.kt
│   │   │       │   │           │   │   ├── ReactConstants.kt
│   │   │       │   │           │   │   ├── ReleaseLevel.kt
│   │   │       │   │           │   │   ├── ShakeDetector.kt
│   │   │       │   │           │   │   ├── SurfaceDelegate.kt
│   │   │       │   │           │   │   ├── SurfaceDelegateFactory.kt
│   │   │       │   │           │   │   ├── SystemClock.kt
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── FrameworkAPI.kt
│   │   │       │   │           │   │   │   ├── LegacyArchitectureShadowNodeWithCxxImpl.kt
│   │   │       │   │           │   │   │   ├── StableReactNativeAPI.kt
│   │   │       │   │           │   │   │   ├── UnstableReactNativeAPI.kt
│   │   │       │   │           │   │   │   ├── VisibleForTesting.kt
│   │   │       │   │           │   │   │   └── internal/
│   │   │       │   │           │   │   │       ├── InteropLegacyArchitecture.kt
│   │   │       │   │           │   │   │       ├── LegacyArchitecture.kt
│   │   │       │   │           │   │   │       ├── LegacyArchitectureLogLevel.kt
│   │   │       │   │           │   │   │       └── LegacyArchitectureLogger.kt
│   │   │       │   │           │   │   ├── assets/
│   │   │       │   │           │   │   │   └── ReactFontManager.kt
│   │   │       │   │           │   │   ├── build/
│   │   │       │   │           │   │   │   └── ReactBuildConfig.kt
│   │   │       │   │           │   │   ├── futures/
│   │   │       │   │           │   │   │   └── SimpleSettableFuture.kt
│   │   │       │   │           │   │   ├── mapbuffer/
│   │   │       │   │           │   │   │   ├── MapBuffer.kt
│   │   │       │   │           │   │   │   ├── ReadableMapBuffer.kt
│   │   │       │   │           │   │   │   └── WritableMapBuffer.kt
│   │   │       │   │           │   │   └── network/
│   │   │       │   │           │   │       └── OkHttpCallUtil.kt
│   │   │       │   │           │   ├── config/
│   │   │       │   │           │   │   └── ReactFeatureFlags.kt
│   │   │       │   │           │   ├── defaults/
│   │   │       │   │           │   │   ├── DefaultComponentsRegistry.kt
│   │   │       │   │           │   │   ├── DefaultNewArchitectureEntryPoint.kt
│   │   │       │   │           │   │   ├── DefaultReactActivityDelegate.kt
│   │   │       │   │           │   │   ├── DefaultReactHost.kt
│   │   │       │   │           │   │   ├── DefaultReactHostDelegate.kt
│   │   │       │   │           │   │   ├── DefaultReactNativeHost.kt
│   │   │       │   │           │   │   ├── DefaultSoLoader.kt
│   │   │       │   │           │   │   └── DefaultTurboModuleManagerDelegate.kt
│   │   │       │   │           │   ├── devsupport/
│   │   │       │   │           │   │   ├── BridgelessDevSupportManager.kt
│   │   │       │   │           │   │   ├── BundleDownloader.kt
│   │   │       │   │           │   │   ├── ChangeBundleLocationDialog.kt
│   │   │       │   │           │   │   ├── CxxInspectorPackagerConnection.kt
│   │   │       │   │           │   │   ├── DebugOverlayController.kt
│   │   │       │   │           │   │   ├── DefaultDevLoadingViewImplementation.kt
│   │   │       │   │           │   │   ├── DefaultDevSupportManagerFactory.kt
│   │   │       │   │           │   │   ├── DevInternalSettings.kt
│   │   │       │   │           │   │   ├── DevMenuConfiguration.kt
│   │   │       │   │           │   │   ├── DevServerHelper.kt
│   │   │       │   │           │   │   ├── DevSettingsActivity.kt
│   │   │       │   │           │   │   ├── DevSupportManagerBase.kt
│   │   │       │   │           │   │   ├── DevSupportManagerFactory.kt
│   │   │       │   │           │   │   ├── DoubleTapReloadRecognizer.kt
│   │   │       │   │           │   │   ├── FpsView.kt
│   │   │       │   │           │   │   ├── HMRClient.kt
│   │   │       │   │           │   │   ├── IInspectorPackagerConnection.kt
│   │   │       │   │           │   │   ├── InspectorFlags.kt
│   │   │       │   │           │   │   ├── LogBoxDialog.kt
│   │   │       │   │           │   │   ├── LogBoxDialogSurfaceDelegate.kt
│   │   │       │   │           │   │   ├── LogBoxModule.kt
│   │   │       │   │           │   │   ├── MultipartStreamReader.kt
│   │   │       │   │           │   │   ├── PackagerStatusCheck.kt
│   │   │       │   │           │   │   ├── PausedInDebuggerOverlayDialogManager.kt
│   │   │       │   │           │   │   ├── PerftestDevSupportManager.kt
│   │   │       │   │           │   │   ├── ReactInstanceDevHelper.kt
│   │   │       │   │           │   │   ├── RedBoxContentView.kt
│   │   │       │   │           │   │   ├── RedBoxDialogSurfaceDelegate.kt
│   │   │       │   │           │   │   ├── ReleaseDevSupportManager.kt
│   │   │       │   │           │   │   ├── StackTraceHelper.kt
│   │   │       │   │           │   │   ├── WindowOverlayCompat.kt
│   │   │       │   │           │   │   ├── inspector/
│   │   │       │   │           │   │   │   ├── DevSupportHttpClient.kt
│   │   │       │   │           │   │   │   ├── FrameTimingSequence.kt
│   │   │       │   │           │   │   │   ├── FrameTimingsObserver.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkHelper.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkRequestListener.kt
│   │   │       │   │           │   │   │   ├── TracingState.kt
│   │   │       │   │           │   │   │   ├── TracingStateListener.kt
│   │   │       │   │           │   │   │   └── TracingStateProvider.kt
│   │   │       │   │           │   │   ├── interfaces/
│   │   │       │   │           │   │   │   ├── BundleLoadCallback.kt
│   │   │       │   │           │   │   │   ├── DebuggerFrontendPanelName.kt
│   │   │       │   │           │   │   │   ├── DevBundleDownloadListener.kt
│   │   │       │   │           │   │   │   ├── DevLoadingViewManager.kt
│   │   │       │   │           │   │   │   ├── DevOptionHandler.kt
│   │   │       │   │           │   │   │   ├── DevSupportManager.kt
│   │   │       │   │           │   │   │   ├── ErrorCustomizer.kt
│   │   │       │   │           │   │   │   ├── ErrorType.kt
│   │   │       │   │           │   │   │   ├── PackagerStatusCallback.kt
│   │   │       │   │           │   │   │   ├── PausedInDebuggerOverlayManager.kt
│   │   │       │   │           │   │   │   ├── RedBoxHandler.kt
│   │   │       │   │           │   │   │   └── StackFrame.kt
│   │   │       │   │           │   │   └── perfmonitor/
│   │   │       │   │           │   │       ├── PerfMonitorDevHelper.kt
│   │   │       │   │           │   │       ├── PerfMonitorEventDispatcher.kt
│   │   │       │   │           │   │       ├── PerfMonitorInspectorTarget.kt
│   │   │       │   │           │   │       ├── PerfMonitorInspectorTargetBinding.kt
│   │   │       │   │           │   │       ├── PerfMonitorOverlayManager.kt
│   │   │       │   │           │   │       ├── PerfMonitorOverlayView.kt
│   │   │       │   │           │   │       └── PerfMonitorUpdateListener.kt
│   │   │       │   │           │   ├── fabric/
│   │   │       │   │           │   │   ├── AnimationBackendChoreographer.kt
│   │   │       │   │           │   │   ├── ComponentFactory.kt
│   │   │       │   │           │   │   ├── DevToolsReactPerfLogger.kt
│   │   │       │   │           │   │   ├── FabricSoLoader.kt
│   │   │       │   │           │   │   ├── FabricUIManager.java
│   │   │       │   │           │   │   ├── FabricUIManagerBinding.kt
│   │   │       │   │           │   │   ├── FabricUIManagerProviderImpl.kt
│   │   │       │   │           │   │   ├── LongStreamingStats.kt
│   │   │       │   │           │   │   ├── StateWrapperImpl.kt
│   │   │       │   │           │   │   ├── SurfaceHandlerBinding.kt
│   │   │       │   │           │   │   ├── SynchronousEvent.kt
│   │   │       │   │           │   │   ├── events/
│   │   │       │   │           │   │   │   ├── EventBeatManager.kt
│   │   │       │   │           │   │   │   ├── EventEmitterWrapper.kt
│   │   │       │   │           │   │   │   ├── FabricEventEmitter.kt
│   │   │       │   │           │   │   │   └── __docs__/
│   │   │       │   │           │   │   │       └── README.md
│   │   │       │   │           │   │   ├── internal/
│   │   │       │   │           │   │   │   └── interop/
│   │   │       │   │           │   │   │       └── InteropUIBlockListener.kt
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   ├── UIBlock.kt
│   │   │       │   │           │   │   │   └── UIBlockViewResolver.kt
│   │   │       │   │           │   │   └── mounting/
│   │   │       │   │           │   │       ├── LayoutMetricsConversions.kt
│   │   │       │   │           │   │       ├── MountItemDispatcher.kt
│   │   │       │   │           │   │       ├── MountingManager.kt
│   │   │       │   │           │   │       ├── SurfaceMountingManager.kt
│   │   │       │   │           │   │       └── mountitems/
│   │   │       │   │           │   │           ├── BatchMountItem.kt
│   │   │       │   │           │   │           ├── DestroyUnmountedViewMountItem.kt
│   │   │       │   │           │   │           ├── DispatchCommandMountItem.kt
│   │   │       │   │           │   │           ├── DispatchIntCommandMountItem.kt
│   │   │       │   │           │   │           ├── DispatchStringCommandMountItem.kt
│   │   │       │   │           │   │           ├── FabricNameComponentMapping.kt
│   │   │       │   │           │   │           ├── IntBufferBatchMountItem.kt
│   │   │       │   │           │   │           ├── MountItem.kt
│   │   │       │   │           │   │           ├── MountItemFactory.kt
│   │   │       │   │           │   │           ├── PreAllocateViewMountItem.kt
│   │   │       │   │           │   │           ├── PrefetchResourcesMountItem.kt
│   │   │       │   │           │   │           ├── SendAccessibilityEventMountItem.kt
│   │   │       │   │           │   │           └── SynchronousMountItem.kt
│   │   │       │   │           │   ├── interfaces/
│   │   │       │   │           │   │   ├── TaskInterface.kt
│   │   │       │   │           │   │   ├── exceptionmanager/
│   │   │       │   │           │   │   │   └── ReactJsExceptionHandler.kt
│   │   │       │   │           │   │   └── fabric/
│   │   │       │   │           │   │       └── ReactSurface.kt
│   │   │       │   │           │   ├── internal/
│   │   │       │   │           │   │   ├── AndroidChoreographerProvider.kt
│   │   │       │   │           │   │   ├── ChoreographerProvider.kt
│   │   │       │   │           │   │   ├── SystraceSection.kt
│   │   │       │   │           │   │   ├── featureflags/
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlags.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsCxxAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsCxxInterop.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsDefaults.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsForTests.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsLocalAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsProvider.kt
│   │   │       │   │           │   │   │   ├── ReactNativeNewArchitectureFeatureFlags.kt
│   │   │       │   │           │   │   │   ├── ReactNativeNewArchitectureFeatureFlagsDefaults.kt
│   │   │       │   │           │   │   │   └── __docs__/
│   │   │       │   │           │   │   │       └── README.md
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   ├── InteropEvent.kt
│   │   │       │   │           │   │   │   └── InteropEventEmitter.kt
│   │   │       │   │           │   │   ├── tracing/
│   │   │       │   │           │   │   │   └── PerformanceTracer.kt
│   │   │       │   │           │   │   └── turbomodule/
│   │   │       │   │           │   │       └── core/
│   │   │       │   │           │   │           ├── TurboModuleInteropUtils.kt
│   │   │       │   │           │   │           ├── TurboModuleManager.kt
│   │   │       │   │           │   │           ├── TurboModuleManagerDelegate.kt
│   │   │       │   │           │   │           ├── TurboModulePerfLogger.kt
│   │   │       │   │           │   │           └── interfaces/
│   │   │       │   │           │   │               └── TurboModuleRegistry.kt
│   │   │       │   │           │   ├── jstasks/
│   │   │       │   │           │   │   ├── HeadlessJsTaskConfig.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskContext.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskEventListener.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskRetryPolicy.kt
│   │   │       │   │           │   │   ├── LinearCountingRetryPolicy.kt
│   │   │       │   │           │   │   └── NoRetryPolicy.kt
│   │   │       │   │           │   ├── module/
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── ReactModule.kt
│   │   │       │   │           │   │   │   └── ReactModuleList.kt
│   │   │       │   │           │   │   └── model/
│   │   │       │   │           │   │       ├── ReactModuleInfo.kt
│   │   │       │   │           │   │       └── ReactModuleInfoProvider.kt
│   │   │       │   │           │   ├── modules/
│   │   │       │   │           │   │   ├── accessibilityinfo/
│   │   │       │   │           │   │   │   └── AccessibilityInfoModule.kt
│   │   │       │   │           │   │   ├── appearance/
│   │   │       │   │           │   │   │   └── AppearanceModule.kt
│   │   │       │   │           │   │   ├── appregistry/
│   │   │       │   │           │   │   │   └── AppRegistry.kt
│   │   │       │   │           │   │   ├── appstate/
│   │   │       │   │           │   │   │   └── AppStateModule.kt
│   │   │       │   │           │   │   ├── blob/
│   │   │       │   │           │   │   │   ├── BlobCollector.kt
│   │   │       │   │           │   │   │   ├── BlobModule.kt
│   │   │       │   │           │   │   │   ├── BlobProvider.kt
│   │   │       │   │           │   │   │   └── FileReaderModule.kt
│   │   │       │   │           │   │   ├── camera/
│   │   │       │   │           │   │   │   └── ImageStoreManager.kt
│   │   │       │   │           │   │   ├── clipboard/
│   │   │       │   │           │   │   │   └── ClipboardModule.kt
│   │   │       │   │           │   │   ├── common/
│   │   │       │   │           │   │   │   └── ModuleDataCleaner.kt
│   │   │       │   │           │   │   ├── core/
│   │   │       │   │           │   │   │   ├── DefaultHardwareBackBtnHandler.kt
│   │   │       │   │           │   │   │   ├── DeviceEventManagerModule.kt
│   │   │       │   │           │   │   │   ├── ExceptionsManagerModule.kt
│   │   │       │   │           │   │   │   ├── HeadlessJsTaskSupportModule.kt
│   │   │       │   │           │   │   │   ├── JSTimers.kt
│   │   │       │   │           │   │   │   ├── JavaScriptTimerExecutor.kt
│   │   │       │   │           │   │   │   ├── JavaTimerManager.kt
│   │   │       │   │           │   │   │   ├── PermissionAwareActivity.kt
│   │   │       │   │           │   │   │   ├── PermissionListener.kt
│   │   │       │   │           │   │   │   ├── RCTNativeAppEventEmitter.kt
│   │   │       │   │           │   │   │   ├── ReactChoreographer.kt
│   │   │       │   │           │   │   │   └── TimingModule.kt
│   │   │       │   │           │   │   ├── debug/
│   │   │       │   │           │   │   │   ├── DevMenuModule.kt
│   │   │       │   │           │   │   │   ├── DevSettingsModule.kt
│   │   │       │   │           │   │   │   ├── FpsDebugFrameCallback.kt
│   │   │       │   │           │   │   │   ├── SourceCodeModule.kt
│   │   │       │   │           │   │   │   └── interfaces/
│   │   │       │   │           │   │   │       └── DeveloperSettings.kt
│   │   │       │   │           │   │   ├── deviceinfo/
│   │   │       │   │           │   │   │   └── DeviceInfoModule.kt
│   │   │       │   │           │   │   ├── devloading/
│   │   │       │   │           │   │   │   └── DevLoadingModule.kt
│   │   │       │   │           │   │   ├── devtoolsruntimesettings/
│   │   │       │   │           │   │   │   └── ReactDevToolsRuntimeSettingsModule.kt
│   │   │       │   │           │   │   ├── dialog/
│   │   │       │   │           │   │   │   ├── AlertFragment.kt
│   │   │       │   │           │   │   │   ├── DialogModule.kt
│   │   │       │   │           │   │   │   └── DialogTitle.kt
│   │   │       │   │           │   │   ├── fresco/
│   │   │       │   │           │   │   │   ├── FrescoModule.kt
│   │   │       │   │           │   │   │   ├── ImageCacheControl.kt
│   │   │       │   │           │   │   │   ├── ReactNetworkImageRequest.kt
│   │   │       │   │           │   │   │   ├── ReactOkHttpNetworkFetcher.kt
│   │   │       │   │           │   │   │   └── SystraceRequestListener.kt
│   │   │       │   │           │   │   ├── i18nmanager/
│   │   │       │   │           │   │   │   ├── I18nManagerModule.kt
│   │   │       │   │           │   │   │   └── I18nUtil.kt
│   │   │       │   │           │   │   ├── image/
│   │   │       │   │           │   │   │   └── ImageLoaderModule.kt
│   │   │       │   │           │   │   ├── intent/
│   │   │       │   │           │   │   │   └── IntentModule.kt
│   │   │       │   │           │   │   ├── network/
│   │   │       │   │           │   │   │   ├── CookieJarContainer.kt
│   │   │       │   │           │   │   │   ├── CustomClientBuilder.kt
│   │   │       │   │           │   │   │   ├── ForwardingCookieHandler.kt
│   │   │       │   │           │   │   │   ├── HeaderUtil.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkReporter.kt
│   │   │       │   │           │   │   │   ├── NetworkEventUtil.kt
│   │   │       │   │           │   │   │   ├── NetworkInterceptorCreator.kt
│   │   │       │   │           │   │   │   ├── NetworkingModule.kt
│   │   │       │   │           │   │   │   ├── OkHttpClientFactory.kt
│   │   │       │   │           │   │   │   ├── OkHttpClientProvider.kt
│   │   │       │   │           │   │   │   ├── ProgressListener.kt
│   │   │       │   │           │   │   │   ├── ProgressRequestBody.kt
│   │   │       │   │           │   │   │   ├── ProgressResponseBody.kt
│   │   │       │   │           │   │   │   ├── ProgressiveStringDecoder.kt
│   │   │       │   │           │   │   │   ├── ReactCookieJarContainer.kt
│   │   │       │   │           │   │   │   └── RequestBodyUtil.kt
│   │   │       │   │           │   │   ├── permissions/
│   │   │       │   │           │   │   │   └── PermissionsModule.kt
│   │   │       │   │           │   │   ├── reactdevtoolssettings/
│   │   │       │   │           │   │   │   └── ReactDevToolsSettingsManagerModule.kt
│   │   │       │   │           │   │   ├── share/
│   │   │       │   │           │   │   │   └── ShareModule.kt
│   │   │       │   │           │   │   ├── sound/
│   │   │       │   │           │   │   │   └── SoundManagerModule.kt
│   │   │       │   │           │   │   ├── statusbar/
│   │   │       │   │           │   │   │   └── StatusBarModule.kt
│   │   │       │   │           │   │   ├── systeminfo/
│   │   │       │   │           │   │   │   ├── AndroidInfoHelpers.kt
│   │   │       │   │           │   │   │   ├── AndroidInfoModule.kt
│   │   │       │   │           │   │   │   └── ReactNativeVersion.kt
│   │   │       │   │           │   │   ├── toast/
│   │   │       │   │           │   │   │   └── ToastModule.kt
│   │   │       │   │           │   │   ├── vibration/
│   │   │       │   │           │   │   │   └── VibrationModule.kt
│   │   │       │   │           │   │   └── websocket/
│   │   │       │   │           │   │       └── WebSocketModule.kt
│   │   │       │   │           │   ├── packagerconnection/
│   │   │       │   │           │   │   ├── FileIoHandler.kt
│   │   │       │   │           │   │   ├── JSPackagerClient.kt
│   │   │       │   │           │   │   ├── NotificationOnlyHandler.kt
│   │   │       │   │           │   │   ├── PackagerConnectionSettings.kt
│   │   │       │   │           │   │   ├── ReconnectingWebSocket.kt
│   │   │       │   │           │   │   ├── RequestHandler.kt
│   │   │       │   │           │   │   ├── RequestOnlyHandler.kt
│   │   │       │   │           │   │   └── Responder.kt
│   │   │       │   │           │   ├── reactperflogger/
│   │   │       │   │           │   │   └── NativeModulePerfLogger.kt
│   │   │       │   │           │   ├── runtime/
│   │   │       │   │           │   │   ├── BindingsInstaller.kt
│   │   │       │   │           │   │   ├── BridgelessAtomicRef.kt
│   │   │       │   │           │   │   ├── BridgelessCatalystInstance.kt
│   │   │       │   │           │   │   ├── BridgelessReactContext.kt
│   │   │       │   │           │   │   ├── CoreReactPackage.kt
│   │   │       │   │           │   │   ├── JSRuntimeFactory.kt
│   │   │       │   │           │   │   ├── JSTimerExecutor.kt
│   │   │       │   │           │   │   ├── README.md
│   │   │       │   │           │   │   ├── ReactHostDelegate.kt
│   │   │       │   │           │   │   ├── ReactHostImpl.kt
│   │   │       │   │           │   │   ├── ReactHostImplDevHelper.kt
│   │   │       │   │           │   │   ├── ReactHostInspectorTarget.kt
│   │   │       │   │           │   │   ├── ReactHostStateTracker.kt
│   │   │       │   │           │   │   ├── ReactInstance.kt
│   │   │       │   │           │   │   ├── ReactLifecycleStateManager.kt
│   │   │       │   │           │   │   ├── ReactSurfaceImpl.kt
│   │   │       │   │           │   │   ├── ReactSurfaceView.kt
│   │   │       │   │           │   │   ├── cxxreactpackage/
│   │   │       │   │           │   │   │   └── CxxReactPackage.kt
│   │   │       │   │           │   │   ├── hermes/
│   │   │       │   │           │   │   │   └── HermesInstance.kt
│   │   │       │   │           │   │   └── internal/
│   │   │       │   │           │   │       └── bolts/
│   │   │       │   │           │   │           ├── Continuation.kt
│   │   │       │   │           │   │           ├── ExecutorException.kt
│   │   │       │   │           │   │           ├── Executors.kt
│   │   │       │   │           │   │           ├── Task.kt
│   │   │       │   │           │   │           └── TaskCompletionSource.kt
│   │   │       │   │           │   ├── shell/
│   │   │       │   │           │   │   ├── MainPackageConfig.kt
│   │   │       │   │           │   │   └── MainReactPackage.kt
│   │   │       │   │           │   ├── soloader/
│   │   │       │   │           │   │   └── OpenSourceMergedSoMapping.kt
│   │   │       │   │           │   ├── touch/
│   │   │       │   │           │   │   ├── JSResponderHandler.kt
│   │   │       │   │           │   │   ├── OnInterceptTouchEventListener.kt
│   │   │       │   │           │   │   ├── ReactHitSlopView.kt
│   │   │       │   │           │   │   └── ReactInterceptingViewGroup.kt
│   │   │       │   │           │   ├── turbomodule/
│   │   │       │   │           │   │   └── core/
│   │   │       │   │           │   │       ├── CallInvokerHolderImpl.kt
│   │   │       │   │           │   │       ├── NativeMethodCallInvokerHolderImpl.kt
│   │   │       │   │           │   │       └── interfaces/
│   │   │       │   │           │   │           ├── BindingsInstallerHolder.kt
│   │   │       │   │           │   │           ├── CallInvokerHolder.kt
│   │   │       │   │           │   │           ├── NativeMethodCallInvokerHolder.kt
│   │   │       │   │           │   │           ├── TurboModule.kt
│   │   │       │   │           │   │           └── TurboModuleWithJSIBindings.kt
│   │   │       │   │           │   ├── uimanager/
│   │   │       │   │           │   │   ├── BackgroundStyleApplicator.kt
│   │   │       │   │           │   │   ├── BaseViewManager.java
│   │   │       │   │           │   │   ├── BaseViewManagerDelegate.kt
│   │   │       │   │           │   │   ├── BlendModeHelper.kt
│   │   │       │   │           │   │   ├── ComponentNameResolver.kt
│   │   │       │   │           │   │   ├── ComponentNameResolverBinding.kt
│   │   │       │   │           │   │   ├── DisplayMetricsHolder.kt
│   │   │       │   │           │   │   ├── FilterHelper.kt
│   │   │       │   │           │   │   ├── FloatUtil.kt
│   │   │       │   │           │   │   ├── GuardedFrameCallback.kt
│   │   │       │   │           │   │   ├── IViewGroupManager.kt
│   │   │       │   │           │   │   ├── IViewManagerWithChildren.kt
│   │   │       │   │           │   │   ├── IllegalViewOperationException.kt
│   │   │       │   │           │   │   ├── JSKeyDispatcher.kt
│   │   │       │   │           │   │   ├── JSPointerDispatcher.java
│   │   │       │   │           │   │   ├── JSTouchDispatcher.kt
│   │   │       │   │           │   │   ├── LayoutShadowNode.kt
│   │   │       │   │           │   │   ├── LengthPercentage.kt
│   │   │       │   │           │   │   ├── MatrixMathHelper.kt
│   │   │       │   │           │   │   ├── MeasureSpecAssertions.kt
│   │   │       │   │           │   │   ├── NativeViewHierarchyManager.java
│   │   │       │   │           │   │   ├── NativeViewHierarchyOptimizer.kt
│   │   │       │   │           │   │   ├── OnLayoutEvent.kt
│   │   │       │   │           │   │   ├── PixelUtil.kt
│   │   │       │   │           │   │   ├── PointerEvents.kt
│   │   │       │   │           │   │   ├── ReactAccessibilityDelegate.kt
│   │   │       │   │           │   │   ├── ReactAxOrderHelper.kt
│   │   │       │   │           │   │   ├── ReactClippingProhibitedView.kt
│   │   │       │   │           │   │   ├── ReactClippingViewGroup.kt
│   │   │       │   │           │   │   ├── ReactClippingViewGroupHelper.kt
│   │   │       │   │           │   │   ├── ReactCompoundView.kt
│   │   │       │   │           │   │   ├── ReactCompoundViewGroup.kt
│   │   │       │   │           │   │   ├── ReactOverflowView.kt
│   │   │       │   │           │   │   ├── ReactOverflowViewWithInset.kt
│   │   │       │   │           │   │   ├── ReactPointerEventsView.kt
│   │   │       │   │           │   │   ├── ReactRoot.kt
│   │   │       │   │           │   │   ├── ReactRootViewTagGenerator.kt
│   │   │       │   │           │   │   ├── ReactShadowNode.java
│   │   │       │   │           │   │   ├── ReactShadowNodeImpl.java
│   │   │       │   │           │   │   ├── ReactStage.kt
│   │   │       │   │           │   │   ├── ReactStylesDiffMap.kt
│   │   │       │   │           │   │   ├── ReactZIndexedViewGroup.kt
│   │   │       │   │           │   │   ├── ReferenceStateWrapper.kt
│   │   │       │   │           │   │   ├── RootView.kt
│   │   │       │   │           │   │   ├── RootViewManager.kt
│   │   │       │   │           │   │   ├── RootViewUtil.kt
│   │   │       │   │           │   │   ├── ShadowNodeRegistry.kt
│   │   │       │   │           │   │   ├── SimpleViewManager.kt
│   │   │       │   │           │   │   ├── Spacing.kt
│   │   │       │   │           │   │   ├── StateWrapper.kt
│   │   │       │   │           │   │   ├── ThemedReactContext.kt
│   │   │       │   │           │   │   ├── TouchTargetHelper.kt
│   │   │       │   │           │   │   ├── TransformHelper.kt
│   │   │       │   │           │   │   ├── UIBlock.kt
│   │   │       │   │           │   │   ├── UIConstantsProviderBinding.kt
│   │   │       │   │           │   │   ├── UIImplementation.java
│   │   │       │   │           │   │   ├── UIManagerHelper.kt
│   │   │       │   │           │   │   ├── UIManagerModule.java
│   │   │       │   │           │   │   ├── UIManagerModuleConstants.kt
│   │   │       │   │           │   │   ├── UIManagerModuleConstantsHelper.kt
│   │   │       │   │           │   │   ├── UIViewOperationQueue.java
│   │   │       │   │           │   │   ├── ViewAtIndex.kt
│   │   │       │   │           │   │   ├── ViewDefaults.kt
│   │   │       │   │           │   │   ├── ViewGroupDrawingOrderHelper.kt
│   │   │       │   │           │   │   ├── ViewGroupManager.kt
│   │   │       │   │           │   │   ├── ViewManager.java
│   │   │       │   │           │   │   ├── ViewManagerDelegate.kt
│   │   │       │   │           │   │   ├── ViewManagerPropertyUpdater.kt
│   │   │       │   │           │   │   ├── ViewManagerRegistry.kt
│   │   │       │   │           │   │   ├── ViewManagerResolver.kt
│   │   │       │   │           │   │   ├── ViewManagerWithGeneratedInterface.kt
│   │   │       │   │           │   │   ├── ViewManagersPropertyCache.java
│   │   │       │   │           │   │   ├── ViewProps.kt
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── ReactProp.kt
│   │   │       │   │           │   │   │   ├── ReactPropGroup.kt
│   │   │       │   │           │   │   │   └── ReactPropertyHolder.kt
│   │   │       │   │           │   │   ├── common/
│   │   │       │   │           │   │   │   ├── UIManagerType.kt
│   │   │       │   │           │   │   │   └── ViewUtil.kt
│   │   │       │   │           │   │   ├── drawable/
│   │   │       │   │           │   │   │   ├── BackgroundDrawable.kt
│   │   │       │   │           │   │   │   ├── BackgroundImageDrawable.kt
│   │   │       │   │           │   │   │   ├── BorderDrawable.kt
│   │   │       │   │           │   │   │   ├── BoxShadowBorderRadius.kt
│   │   │       │   │           │   │   │   ├── CompositeBackgroundDrawable.kt
│   │   │       │   │           │   │   │   ├── InsetBoxShadowDrawable.kt
│   │   │       │   │           │   │   │   ├── OutlineDrawable.kt
│   │   │       │   │           │   │   │   └── OutsetBoxShadowDrawable.kt
│   │   │       │   │           │   │   ├── events/
│   │   │       │   │           │   │   │   ├── BatchEventDispatchedListener.kt
│   │   │       │   │           │   │   │   ├── BlackHoleEventDispatcher.kt
│   │   │       │   │           │   │   │   ├── BlurEvent.kt
│   │   │       │   │           │   │   │   ├── ContentSizeChangeEvent.kt
│   │   │       │   │           │   │   │   ├── Event.kt
│   │   │       │   │           │   │   │   ├── EventCategoryDef.kt
│   │   │       │   │           │   │   │   ├── EventDispatcher.kt
│   │   │       │   │           │   │   │   ├── EventDispatcherListener.kt
│   │   │       │   │           │   │   │   ├── EventDispatcherProvider.kt
│   │   │       │   │           │   │   │   ├── FabricEventDispatcher.kt
│   │   │       │   │           │   │   │   ├── FocusEvent.kt
│   │   │       │   │           │   │   │   ├── KeyDownEvent.kt
│   │   │       │   │           │   │   │   ├── KeyEvent.kt
│   │   │       │   │           │   │   │   ├── KeyUpEvent.kt
│   │   │       │   │           │   │   │   ├── NativeGestureUtil.kt
│   │   │       │   │           │   │   │   ├── PointerEvent.kt
│   │   │       │   │           │   │   │   ├── PointerEventHelper.kt
│   │   │       │   │           │   │   │   ├── RCTEventEmitter.kt
│   │   │       │   │           │   │   │   ├── RCTModernEventEmitter.kt
│   │   │       │   │           │   │   │   ├── SynchronousEventReceiver.kt
│   │   │       │   │           │   │   │   ├── TouchEvent.kt
│   │   │       │   │           │   │   │   ├── TouchEventCoalescingKeyHelper.kt
│   │   │       │   │           │   │   │   ├── TouchEventType.kt
│   │   │       │   │           │   │   │   └── TouchesHelper.kt
│   │   │       │   │           │   │   ├── internal/
│   │   │       │   │           │   │   │   └── LegacyArchitectureShadowNodeLogger.kt
│   │   │       │   │           │   │   ├── style/
│   │   │       │   │           │   │   │   ├── BackgroundImageLayer.kt
│   │   │       │   │           │   │   │   ├── BackgroundPosition.kt
│   │   │       │   │           │   │   │   ├── BackgroundRepeat.kt
│   │   │       │   │           │   │   │   ├── BackgroundSize.kt
│   │   │       │   │           │   │   │   ├── BorderColors.kt
│   │   │       │   │           │   │   │   ├── BorderInsets.kt
│   │   │       │   │           │   │   │   ├── BorderRadiusStyle.kt
│   │   │       │   │           │   │   │   ├── BorderStyle.kt
│   │   │       │   │           │   │   │   ├── BoxShadow.kt
│   │   │       │   │           │   │   │   ├── ColorStop.kt
│   │   │       │   │           │   │   │   ├── ComputedBorderRadius.kt
│   │   │       │   │           │   │   │   ├── CornerRadii.kt
│   │   │       │   │           │   │   │   ├── Gradient.kt
│   │   │       │   │           │   │   │   ├── LinearGradient.kt
│   │   │       │   │           │   │   │   ├── LogicalEdge.kt
│   │   │       │   │           │   │   │   ├── OutlineStyle.kt
│   │   │       │   │           │   │   │   ├── Overflow.kt
│   │   │       │   │           │   │   │   └── RadialGradient.kt
│   │   │       │   │           │   │   └── util/
│   │   │       │   │           │   │       └── ReactFindViewUtil.kt
│   │   │       │   │           │   ├── util/
│   │   │       │   │           │   │   ├── AndroidVersion.kt
│   │   │       │   │           │   │   ├── ExceptionDataHelper.kt
│   │   │       │   │           │   │   ├── JSStackTrace.kt
│   │   │       │   │           │   │   ├── RCTLog.kt
│   │   │       │   │           │   │   └── RNLog.kt
│   │   │       │   │           │   └── views/
│   │   │       │   │           │       ├── common/
│   │   │       │   │           │       │   ├── ContextUtils.kt
│   │   │       │   │           │       │   └── UiModeUtils.kt
│   │   │       │   │           │       ├── debuggingoverlay/
│   │   │       │   │           │       │   ├── DebuggingOverlay.kt
│   │   │       │   │           │       │   ├── DebuggingOverlayManager.kt
│   │   │       │   │           │       │   └── TraceUpdate.kt
│   │   │       │   │           │       ├── drawer/
│   │   │       │   │           │       │   ├── ReactDrawerLayout.kt
│   │   │       │   │           │       │   ├── ReactDrawerLayoutManager.kt
│   │   │       │   │           │       │   └── events/
│   │   │       │   │           │       │       ├── DrawerClosedEvent.kt
│   │   │       │   │           │       │       ├── DrawerOpenedEvent.kt
│   │   │       │   │           │       │       ├── DrawerSlideEvent.kt
│   │   │       │   │           │       │       └── DrawerStateChangedEvent.kt
│   │   │       │   │           │       ├── image/
│   │   │       │   │           │       │   ├── GlobalImageLoadListener.kt
│   │   │       │   │           │       │   ├── ImageLoadEvent.kt
│   │   │       │   │           │       │   ├── ImageResizeMethod.kt
│   │   │       │   │           │       │   ├── ImageResizeMode.kt
│   │   │       │   │           │       │   ├── MultiPostprocessor.kt
│   │   │       │   │           │       │   ├── ReactCallerContextFactory.kt
│   │   │       │   │           │       │   ├── ReactImageDownloadListener.kt
│   │   │       │   │           │       │   ├── ReactImageManager.kt
│   │   │       │   │           │       │   ├── ReactImageView.kt
│   │   │       │   │           │       │   └── ScaleTypeStartInside.kt
│   │   │       │   │           │       ├── imagehelper/
│   │   │       │   │           │       │   ├── ImageSource.kt
│   │   │       │   │           │       │   ├── MultiSourceHelper.kt
│   │   │       │   │           │       │   └── ResourceDrawableIdHelper.kt
│   │   │       │   │           │       ├── modal/
│   │   │       │   │           │       │   ├── ReactModalHostManager.kt
│   │   │       │   │           │       │   ├── ReactModalHostView.kt
│   │   │       │   │           │       │   ├── RequestCloseEvent.kt
│   │   │       │   │           │       │   └── ShowEvent.kt
│   │   │       │   │           │       ├── progressbar/
│   │   │       │   │           │       │   ├── ProgressBarContainerView.kt
│   │   │       │   │           │       │   └── ReactProgressBarViewManager.kt
│   │   │       │   │           │       ├── safeareaview/
│   │   │       │   │           │       │   ├── ReactSafeAreaView.kt
│   │   │       │   │           │       │   └── ReactSafeAreaViewManager.kt
│   │   │       │   │           │       ├── scroll/
│   │   │       │   │           │       │   ├── FpsListener.kt
│   │   │       │   │           │       │   ├── MaintainVisibleScrollPositionHelper.kt
│   │   │       │   │           │       │   ├── OnScrollDispatchHelper.kt
│   │   │       │   │           │       │   ├── ReactAccessibleScrollView.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollContainerLegacyView.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollContainerViewManager.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollView.java
│   │   │       │   │           │       │   ├── ReactHorizontalScrollViewManager.kt
│   │   │       │   │           │       │   ├── ReactNestedScrollView.java
│   │   │       │   │           │       │   ├── ReactNestedScrollViewManager.kt
│   │   │       │   │           │       │   ├── ReactScrollView.java
│   │   │       │   │           │       │   ├── ReactScrollViewAccessibilityDelegate.kt
│   │   │       │   │           │       │   ├── ReactScrollViewCommandHelper.kt
│   │   │       │   │           │       │   ├── ReactScrollViewHelper.kt
│   │   │       │   │           │       │   ├── ReactScrollViewManager.kt
│   │   │       │   │           │       │   ├── ScrollEvent.kt
│   │   │       │   │           │       │   ├── ScrollEventType.kt
│   │   │       │   │           │       │   ├── VelocityHelper.kt
│   │   │       │   │           │       │   ├── VirtualViewContainer.kt
│   │   │       │   │           │       │   ├── VirtualViewContainerStateClassic.kt
│   │   │       │   │           │       │   ├── VirtualViewContainerStateExperimental.kt
│   │   │       │   │           │       │   └── generate-nested-scroll-view.js
│   │   │       │   │           │       ├── swiperefresh/
│   │   │       │   │           │       │   ├── ReactSwipeRefreshLayout.kt
│   │   │       │   │           │       │   ├── RefreshEvent.kt
│   │   │       │   │           │       │   └── SwipeRefreshLayoutManager.kt
│   │   │       │   │           │       ├── switchview/
│   │   │       │   │           │       │   ├── ReactSwitch.kt
│   │   │       │   │           │       │   ├── ReactSwitchEvent.kt
│   │   │       │   │           │       │   └── ReactSwitchManager.kt
│   │   │       │   │           │       ├── text/
│   │   │       │   │           │       │   ├── DefaultStyleValuesUtil.kt
│   │   │       │   │           │       │   ├── FontMetricsUtil.kt
│   │   │       │   │           │       │   ├── PreparedLayout.kt
│   │   │       │   │           │       │   ├── PreparedLayoutTextView.kt
│   │   │       │   │           │       │   ├── PreparedLayoutTextViewManager.kt
│   │   │       │   │           │       │   ├── ReactFontManager.kt
│   │   │       │   │           │       │   ├── ReactTextUpdate.kt
│   │   │       │   │           │       │   ├── ReactTextView.java
│   │   │       │   │           │       │   ├── ReactTextViewAccessibilityDelegate.kt
│   │   │       │   │           │       │   ├── ReactTextViewManager.kt
│   │   │       │   │           │       │   ├── ReactTextViewManagerCallback.kt
│   │   │       │   │           │       │   ├── ReactTypefaceUtils.kt
│   │   │       │   │           │       │   ├── SelectableTextViewManager.kt
│   │   │       │   │           │       │   ├── TextAttributeProps.kt
│   │   │       │   │           │       │   ├── TextAttributes.kt
│   │   │       │   │           │       │   ├── TextLayoutManager.kt
│   │   │       │   │           │       │   ├── TextTransform.kt
│   │   │       │   │           │       │   └── internal/
│   │   │       │   │           │       │       └── span/
│   │   │       │   │           │       │           ├── CustomLetterSpacingSpan.kt
│   │   │       │   │           │       │           ├── CustomLineHeightSpan.kt
│   │   │       │   │           │       │           ├── CustomStyleSpan.kt
│   │   │       │   │           │       │           ├── DrawCommandSpan.kt
│   │   │       │   │           │       │           ├── ReactAbsoluteSizeSpan.kt
│   │   │       │   │           │       │           ├── ReactBackgroundColorSpan.kt
│   │   │       │   │           │       │           ├── ReactClickableSpan.kt
│   │   │       │   │           │       │           ├── ReactForegroundColorSpan.kt
│   │   │       │   │           │       │           ├── ReactFragmentIndexSpan.kt
│   │   │       │   │           │       │           ├── ReactLinkSpan.kt
│   │   │       │   │           │       │           ├── ReactOpacitySpan.kt
│   │   │       │   │           │       │           ├── ReactSpan.kt
│   │   │       │   │           │       │           ├── ReactStrikethroughSpan.kt
│   │   │       │   │           │       │           ├── ReactTagSpan.kt
│   │   │       │   │           │       │           ├── ReactTextPaintHolderSpan.kt
│   │   │       │   │           │       │           ├── ReactUnderlineSpan.kt
│   │   │       │   │           │       │           ├── SetSpanOperation.kt
│   │   │       │   │           │       │           ├── ShadowStyleSpan.kt
│   │   │       │   │           │       │           └── TextInlineViewPlaceholderSpan.kt
│   │   │       │   │           │       ├── textinput/
│   │   │       │   │           │       │   ├── ContentSizeWatcher.kt
│   │   │       │   │           │       │   ├── ReactContentSizeChangedEvent.kt
│   │   │       │   │           │       │   ├── ReactEditText.kt
│   │   │       │   │           │       │   ├── ReactEditTextInputConnectionWrapper.kt
│   │   │       │   │           │       │   ├── ReactTextChangedEvent.kt
│   │   │       │   │           │       │   ├── ReactTextContentSizeWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextInputEndEditingEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputKeyPressEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputLocalData.kt
│   │   │       │   │           │       │   ├── ReactTextInputManager.kt
│   │   │       │   │           │       │   ├── ReactTextInputSelectionEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputSubmitEditingEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputTextWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextScrollWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextSelectionWatcher.kt
│   │   │       │   │           │       │   ├── ScrollWatcher.kt
│   │   │       │   │           │       │   └── SelectionWatcher.kt
│   │   │       │   │           │       ├── unimplementedview/
│   │   │       │   │           │       │   ├── ReactUnimplementedView.kt
│   │   │       │   │           │       │   └── ReactUnimplementedViewManager.kt
│   │   │       │   │           │       ├── view/
│   │   │       │   │           │       │   ├── CanvasUtil.kt
│   │   │       │   │           │       │   ├── ColorUtil.kt
│   │   │       │   │           │       │   ├── ImportantForInteractionHelper.kt
│   │   │       │   │           │       │   ├── MeasureUtil.kt
│   │   │       │   │           │       │   ├── ReactClippingViewManager.kt
│   │   │       │   │           │       │   ├── ReactDrawableHelper.kt
│   │   │       │   │           │       │   ├── ReactViewGroup.kt
│   │   │       │   │           │       │   ├── ReactViewManager.kt
│   │   │       │   │           │       │   ├── ViewGroupClickEvent.kt
│   │   │       │   │           │       │   └── WindowUtil.kt
│   │   │       │   │           │       └── virtual/
│   │   │       │   │           │           ├── VirtualViewMode.kt
│   │   │       │   │           │           ├── VirtualViewModeChangeEmitter.kt
│   │   │       │   │           │           ├── VirtualViewModeChangeEvent.kt
│   │   │       │   │           │           ├── VirtualViewRenderState.kt
│   │   │       │   │           │           └── view/
│   │   │       │   │           │               ├── ReactVirtualView.kt
│   │   │       │   │           │               └── ReactVirtualViewManager.kt
│   │   │       │   │           ├── soloader/
│   │   │       │   │           │   └── annotation/
│   │   │       │   │           │       └── SoLoaderLibrary.kt
│   │   │       │   │           ├── systrace/
│   │   │       │   │           │   ├── Systrace.kt
│   │   │       │   │           │   ├── SystraceMessage.kt
│   │   │       │   │           │   └── TraceListener.kt
│   │   │       │   │           └── yoga/
│   │   │       │   │               ├── LayoutPassReason.kt
│   │   │       │   │               ├── YogaAlign.java
│   │   │       │   │               ├── YogaBaselineFunction.kt
│   │   │       │   │               ├── YogaBoxSizing.java
│   │   │       │   │               ├── YogaConfig.kt
│   │   │       │   │               ├── YogaConfigFactory.kt
│   │   │       │   │               ├── YogaConfigJNIBase.kt
│   │   │       │   │               ├── YogaConfigJNIFinalizer.kt
│   │   │       │   │               ├── YogaConstants.kt
│   │   │       │   │               ├── YogaDimension.java
│   │   │       │   │               ├── YogaDirection.kt
│   │   │       │   │               ├── YogaDisplay.java
│   │   │       │   │               ├── YogaEdge.java
│   │   │       │   │               ├── YogaErrata.java
│   │   │       │   │               ├── YogaExperimentalFeature.java
│   │   │       │   │               ├── YogaFlexDirection.java
│   │   │       │   │               ├── YogaGridTrackType.java
│   │   │       │   │               ├── YogaGutter.java
│   │   │       │   │               ├── YogaJustify.java
│   │   │       │   │               ├── YogaLayoutType.kt
│   │   │       │   │               ├── YogaLogLevel.java
│   │   │       │   │               ├── YogaLogger.kt
│   │   │       │   │               ├── YogaMeasureFunction.kt
│   │   │       │   │               ├── YogaMeasureMode.java
│   │   │       │   │               ├── YogaMeasureOutput.kt
│   │   │       │   │               ├── YogaNative.kt
│   │   │       │   │               ├── YogaNode.kt
│   │   │       │   │               ├── YogaNodeFactory.kt
│   │   │       │   │               ├── YogaNodeJNIBase.java
│   │   │       │   │               ├── YogaNodeJNIFinalizer.kt
│   │   │       │   │               ├── YogaNodeType.java
│   │   │       │   │               ├── YogaOverflow.java
│   │   │       │   │               ├── YogaPositionType.java
│   │   │       │   │               ├── YogaProps.kt
│   │   │       │   │               ├── YogaStyleInputs.kt
│   │   │       │   │               ├── YogaUnit.java
│   │   │       │   │               ├── YogaValue.kt
│   │   │       │   │               ├── YogaWrap.java
│   │   │       │   │               └── annotations/
│   │   │       │   │                   └── DoNotStrip.kt
│   │   │       │   ├── jni/
│   │   │       │   │   ├── CMakeLists.txt
│   │   │       │   │   ├── first-party/
│   │   │       │   │   │   ├── fbgloginit/
│   │   │       │   │   │   │   ├── CMakeLists.txt
│   │   │       │   │   │   │   ├── fb/
│   │   │       │   │   │   │   │   └── glog_init.h
│   │   │       │   │   │   │   └── glog_init.cpp
│   │   │       │   │   │   ├── hermes/
│   │   │       │   │   │   │   └── CMakeLists.txt
│   │   │       │   │   │   ├── jni-hack/
│   │   │       │   │   │   │   ├── README.md
│   │   │       │   │   │   │   ├── jni.h
│   │   │       │   │   │   │   └── real/
│   │   │       │   │   │   │       └── jni.h
│   │   │       │   │   │   ├── jni-lib-merge/
│   │   │       │   │   │   │   ├── CMakeLists.txt
│   │   │       │   │   │   │   ├── SoMerging-utils.cmake
│   │   │       │   │   │   │   ├── jni_lib_merge.c
│   │   │       │   │   │   │   └── jni_lib_merge.h
│   │   │       │   │   │   └── yogajni/
│   │   │       │   │   │       ├── CMakeLists.txt
│   │   │       │   │   │       └── jni/
│   │   │       │   │   │           ├── LayoutContext.cpp
│   │   │       │   │   │           ├── LayoutContext.h
│   │   │       │   │   │           ├── ScopedGlobalRef.h
│   │   │       │   │   │           ├── ScopedLocalRef.h
│   │   │       │   │   │           ├── YGJNI.h
│   │   │       │   │   │           ├── YGJNIVanilla.cpp
│   │   │       │   │   │           ├── YGJNIVanilla.h
│   │   │       │   │   │           ├── YGJTypesVanilla.h
│   │   │       │   │   │           ├── YogaJniException.cpp
│   │   │       │   │   │           ├── YogaJniException.h
│   │   │       │   │   │           ├── common.cpp
│   │   │       │   │   │           ├── common.h
│   │   │       │   │   │           ├── corefunctions.cpp
│   │   │       │   │   │           ├── corefunctions.h
│   │   │       │   │   │         

================================================
FILE CONTENTS
================================================

================================================
FILE: .babelrc
================================================
{
    "presets": [
        "module:@react-native/babel-preset"
    ],
    "plugins": [
        "babel-plugin-transform-flow-enums"
    ]
}


================================================
FILE: .bundle/config
================================================
BUNDLE_PATH: "vendor/bundle"
BUNDLE_FORCE_RUBY_PLATFORM: 1


================================================
FILE: .clang-format
================================================
---
AccessModifierOffset: -1
AlignAfterOpenBracket: AlwaysBreak
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlinesLeft: true
AlignOperands:   false
AlignTrailingComments: false
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: true
BinPackArguments: false
BinPackParameters: false
BraceWrapping:
  AfterClass:      false
  AfterControlStatement: false
  AfterEnum:       false
  AfterFunction:   false
  AfterNamespace:  false
  AfterObjCDeclaration: false
  AfterStruct:     false
  AfterUnion:      false
  BeforeCatch:     false
  BeforeElse:      false
  IndentBraces:    false
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Attach
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: false
ColumnLimit:       80
CommentPragmas:  '^ IWYU pragma:'
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerAlignment: false
DisableFormat:   false
ForEachMacros:   [ FOR_EACH_RANGE, FOR_EACH, ]
IncludeCategories:
  - Regex:           '^<.*\.h(pp)?>'
    Priority:        1
  - Regex:           '^<.*'
    Priority:        2
  - Regex:           '.*'
    Priority:        3
IndentCaseLabels: true
IndentWidth:     2
IndentWrappedFunctionNames: false
KeepEmptyLinesAtTheStartOfBlocks: false
MacroBlockBegin: ''
MacroBlockEnd:   ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
PointerAlignment: Left
ReflowComments:  true
SortIncludes:    true
SpaceAfterCStyleCast: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles:  false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard:        Cpp11
TabWidth:        8
UseTab:          Never
QualifierAlignment: Left
---
Language: ObjC
ColumnLimit:     120
BreakBeforeBraces: WebKit
PointerAlignment: Right
...


================================================
FILE: .editorconfig
================================================
# EditorConfig is awesome: https://EditorConfig.org

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2


================================================
FILE: .eslintignore
================================================
**/main.js
**/staticBundle.js
docs/generatedComponentApiDocs.js
packages/react-native/flow/
packages/react-native/sdks/
packages/react-native/ReactAndroid/build
packages/react-native/ReactAndroid/hermes-engine/build/
packages/react-native/Libraries/Renderer/*
packages/react-native/Libraries/vendor/**/*
node_modules/
packages/*/node_modules
packages/*/dist
packages/*/types_generated
packages/debugger-frontend/dist/**/*
packages/react-native-codegen/lib
private/react-native-codegen-typescript-test/lib/**/*
**/Pods/*
**/*.macos.js
**/*.windows.js
**/__fixtures__/**


================================================
FILE: .eslintrc.js
================================================
/**
 * 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.
 *
 * @noflow
 * @format
 */

'use strict';

module.exports = {
  root: true,

  extends: ['@react-native'],

  plugins: ['@react-native/monorepo', '@react-native/specs'],

  overrides: [
    // overriding the JS config from @react-native/eslint-config to ensure
    // that we use hermes-eslint for all js files
    {
      files: ['*.js', '*.js.flow', '*.jsx'],
      parser: 'hermes-eslint',
      rules: {
        '@react-native/monorepo/sort-imports': 'warn',
        'eslint-comments/no-unlimited-disable': 'off',
        'ft-flow/require-valid-file-annotation': ['error', 'always'],
        'no-extra-boolean-cast': 'off',
        'no-void': 'off',
        // These rules are not required with hermes-eslint
        'ft-flow/define-flow-type': 'off',
        'ft-flow/use-flow-type': 'off',
        // Flow handles these checks for us, so they aren't required
        'no-undef': 'off',
        'no-unreachable': 'off',
        // Throwing from function or rejecting promises with non-error values could result in unclear error stack traces and lead to harder debugging
        'prefer-promise-reject-errors': 'error',
        'no-throw-literal': 'error',
      },
    },
    {
      files: ['*.js', '*.jsx', '*.ts', '*.tsx'],
      rules: {
        '@react-native/no-deep-imports': 'off',
      },
    },
    {
      files: [
        './packages/react-native/Libraries/**/*.{js,flow}',
        './packages/react-native/src/**/*.{js,flow}',
        './packages/assets/registry.js',
      ],
      parser: 'hermes-eslint',
      rules: {
        '@react-native/monorepo/no-commonjs-exports': 'warn',
      },
    },
    {
      files: ['package.json'],
      parser: 'jsonc-eslint-parser',
    },
    {
      files: ['package.json'],
      rules: {
        '@react-native/monorepo/react-native-manifest': 'error',
      },
    },
    {
      files: ['flow-typed/**/*.js', 'packages/react-native/flow/**/*'],
      rules: {
        '@react-native/monorepo/valid-flow-typed-signature': 'error',
        'ft-flow/require-valid-file-annotation': 'off',
        'no-shadow': 'off',
        'no-unused-vars': 'off',
        quotes: 'off',
      },
    },
    {
      files: [
        'packages/react-native/Libraries/**/*.js',
        'packages/react-native/src/**/*.js',
      ],
      rules: {
        '@react-native/monorepo/no-haste-imports': 'error',
        '@react-native/monorepo/no-react-default-imports': 'error',
        '@react-native/monorepo/no-react-named-type-imports': 'error',
        '@react-native/monorepo/no-react-native-imports': 'error',
        '@react-native/monorepo/no-react-node-imports': 'error',
        '@react-native/monorepo/require-extends-error': 'error',
        '@react-native/platform-colors': 'error',
        '@react-native/specs/react-native-modules': 'error',
      },
    },
    {
      files: [
        '**/__fixtures__/**/*.js',
        '**/__mocks__/**/*.js',
        '**/__tests__/**/*.js',
        'packages/jest-preset/jest/**/*.js',
        'packages/rn-tester/**/*.js',
      ],
      globals: {
        // Expose some Jest globals for test helpers
        afterAll: true,
        afterEach: true,
        beforeAll: true,
        beforeEach: true,
        expect: true,
        jest: true,
      },
    },
    {
      files: ['**/__tests__/**/*-test.js'],
      env: {
        jasmine: true,
        jest: true,
      },
    },
    {
      files: ['**/*.{ts,tsx}'],
      parser: '@typescript-eslint/parser',
      plugins: ['@typescript-eslint/eslint-plugin'],
      rules: {
        '@typescript-eslint/no-unused-vars': 'off',
        'react-native/no-inline-styles': 'off',
        '@typescript-eslint/no-shadow': 'off',
        'no-self-compare': 'off',
        'react/self-closing-comp': 'off',
      },
    },
    {
      files: ['**/*.d.ts'],
      plugins: ['redundant-undefined'],
      rules: {
        'no-dupe-class-members': 'off',
        'redundant-undefined/redundant-undefined': [
          'error',
          {followExactOptionalPropertyTypes: true},
        ],
      },
    },
    {
      files: ['**/__tests__/**'],
      rules: {
        '@react-native/monorepo/no-react-native-imports': 'off',
      },
    },
  ],
};


================================================
FILE: .flowconfig
================================================
[ignore]
; Ignore build cache folder
<PROJECT_ROOT>/packages/react-native/sdks/.*

; Ignore fb_internal modules
<PROJECT_ROOT>/packages/react-native/src/fb_internal/.*

; Ignore the codegen e2e tests
<PROJECT_ROOT>/packages/react-native-codegen/e2e/__test_fixtures__/modules/NativeEnumTurboModule.js

; Ignore "BUCK" generated dirs
<PROJECT_ROOT>/\.buckd/

; Ignore other platform suffixes
.*\.macos\.js$
.*\.windows\.js$

.*/node_modules/resolve/test/resolver/malformed_package_json/package\.json$

; Checked-in build output
<PROJECT_ROOT>/packages/debugger-frontend/dist/

; Generated build output
<PROJECT_ROOT>/packages/.*/dist

; helloworld
<PROJECT_ROOT>/private/helloworld/ios/Pods/

; Ignore rn-tester Pods
<PROJECT_ROOT>/packages/rn-tester/Pods/

[untyped]
.*/node_modules/@react-native-community/cli/.*/.*

[include]

[declarations]
.*/node_modules/.*

[libs]
flow-typed/
packages/react-native/interface.js
packages/react-native/flow/

[options]
enums=true
experimental.pattern_matching=true
casting_syntax=both
component_syntax=true

check_is_status=true

emoji=true

exact_by_default=true

format.bracket_spacing=false

module.file_ext=.js
module.file_ext=.json

experimental.multi_platform=true
experimental.multi_platform.extensions=.ios
experimental.multi_platform.extensions=.android

munge_underscores=true

module.name_mapper='^react-native$' -> '<PROJECT_ROOT>/packages/react-native/index.js'
module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/packages/react-native/\1'
module.name_mapper='^@react-native/dev-middleware$' -> '<PROJECT_ROOT>/packages/dev-middleware'
module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\|xml\|ktx\|heic\|heif\)$' -> '<PROJECT_ROOT>/packages/react-native/Libraries/Image/RelativeImageStub'

module.system.haste.module_ref_prefix=m#

react.runtime=automatic

ban_spread_key_props=true

[lints]
sketchy-null-number=warn
sketchy-null-mixed=warn
sketchy-number=warn
untyped-type-import=warn
nonstrict-import=warn
deprecated-type=error
unsafe-getters-setters=warn
unnecessary-invariant=warn
unused-promise=error

[strict]
deprecated-type
nonstrict-import
sketchy-null
unclear-type
unsafe-getters-setters
untyped-import
untyped-type-import

[version]
^0.307.1


================================================
FILE: .gitattributes
================================================
*.js.flow linguist-language=JavaScript


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.yml
================================================
name: 🐛 React Native - Bug Report
description: Report a reproducible bug or regression in React Native.
labels: ["Needs: Triage :mag:"]
body:
  - type: markdown
    attributes:
      value: "## Reporting a bug to React Native"
  - type: markdown
    attributes:
      value: |
        Thank you for taking the time to report an issue for React Native, your contribution will help
        make the framework better for everyone.

        Before you continue:
        * If you're using **Expo** and you're noticing a bug, [report it here](https://github.com/expo/expo/issues).
        * If you're found a problem with our **documentation**, [report it here](https://github.com/facebook/react-native-website/issues/).
        * If you're having an issue with **Metro** (the bundler), [report it here](https://github.com/facebook/metro/issues/).
        * If you're using an external library, report the issue to the **library first**.
        * Please [search for similar issues](https://github.com/facebook/react-native/issues) in our issue tracker.

        Make sure that your issue:
        * Have a **valid reproducer** (See [How to report a bug](https://reactnative.dev/contributing/how-to-report-a-bug)).
        * Is tested against the [**latest stable**](https://github.com/facebook/react-native/releases/) of React Native.

        🚨 IMPORTANT: Due to the extreme number of bugs we receive, issues **without a reproducer** or for an [**unsupported versions**](https://github.com/reactwg/react-native-releases#which-versions-are-currently-supported) of React Native **will be closed**.
  - type: textarea
    id: description
    attributes:
      label: Description
      description: A clear and concise description of what the bug is.
    validations:
      required: true
  - type: textarea
    id: reproduction
    attributes:
      label: Steps to reproduce
      description: The list of steps that reproduce the issue.
      placeholder: |
        1. Install the application with `yarn android`
        2. Click on the button on the Home
        3. Notice the crash
    validations:
      required: true
  - type: input
    id: version
    attributes:
      label: React Native Version
      description: The version of react-native that this issue reproduces on. Bear in mind that only issues on [supported versions](https://github.com/reactwg/react-native-releases#which-versions-are-currently-supported) will be looked into.
      placeholder: "0.73.0"
    validations:
      required: true
  - type: dropdown
    id: platforms
    attributes:
      label: Affected Platforms
      description: Please select which platform you're developing to, and which OS you're using for building.
      multiple: true
      options:
        - Runtime - Android
        - Runtime - iOS
        - Runtime - Web
        - Runtime - Desktop
        - Build - MacOS
        - Build - Windows
        - Build - Linux
        - Other (please specify)
    validations:
      required: true
  - type: textarea
    id: react-native-info
    attributes:
      label: Output of `npx @react-native-community/cli info`
      description: Run `npx @react-native-community/cli info` in your terminal, copy and paste the results here.
      placeholder: |
        Paste the output of `npx @react-native-community/cli info` here. The output looks like:
        ...
        System:
          OS: macOS 14.1.1
          CPU: (10) arm64 Apple M1 Max
          Memory: 417.81 MB / 64.00 GB
          Shell:
            version: "5.9"
            path: /bin/zsh
        Binaries:
          Node: ...
            version: 22.14.0
        ...
      render: text
    validations:
      required: true
  - type: textarea
    id: stacktrace
    attributes:
      label: Stacktrace or Logs
      description: Please provide a stacktrace or a log of your crash or failure
      render: text
      placeholder: |
        Paste your stacktraces and logs here. They might look like:

        java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libfabricjni.so caused by: com.facebook.react.fabric.StateWrapperImpl result: 0
            at com.facebook.soloader.SoLoader.g(Unknown Source:341)
            at com.facebook.soloader.SoLoader.t(Unknown Source:124)
            at com.facebook.soloader.SoLoader.s(Unknown Source:2)
            at com.facebook.soloader.SoLoader.q(Unknown Source:42)
            at com.facebook.soloader.SoLoader.p(Unknown Source:1)
            ...
    validations:
      required: true
  - type: input
    id: reproducer
    attributes:
      label: MANDATORY Reproducer
      description: A link to either a failing RNTesterPlayground.js file, an Expo Snack or a public repository from [this template](https://github.com/react-native-community/reproducer-react-native) that reproduces this bug. Reproducers are **mandatory**, issues without a reproducer will be closed.
      placeholder: "https://github.com/<myuser>/<myreproducer>"
    validations:
      required: true
  - type: textarea
    id: extra
    attributes:
      label: Screenshots and Videos
      description: |
        Please provide screenshot or a video of your bug if relevant.
        Issues with videos and screenshots are more likely to **get prioritized**.


================================================
FILE: .github/ISSUE_TEMPLATE/config.yml
================================================
blank_issues_enabled: false
contact_links:
    - name: ⬆️ Upgrade - Build Regression
      url: https://github.com/reactwg/react-native-releases/issues/new/choose
      about: |
        If you are upgrading to a new React Native version (stable or pre-release) and encounter a build regression.
    - name: 🚀 Expo Issue
      url: https://github.com/expo/expo/issues/new
      about: |
        If you're using Expo in your project, please report the issue first in the Expo issue tracker.
    - name: 📃 Documentation Issue
      url: https://github.com/facebook/react-native-website/issues
      about: Please report documentation issues in the React Native website repository.
    - name: 📦 Metro Issue
      url: https://github.com/facebook/metro/issues/new
      about: |
        If you've encountered a module resolution problem, e.g. "Error: Unable to resolve module ...", or something else that might be related to Metro, please open an issue in the Metro repo instead.
    - name: 🤔 Questions and Help
      url: https://reactnative.dev/help
      about: Looking for help with your app? Please refer to the React Native community's support resources.
    - name: 💫 New Architecture - Questions & Technical Deep dive insights
      url: https://github.com/reactwg/react-native-new-architecture
      about: Questions and doubts related to technical questions for the New Architecture should be directed to the Working Group. Instructions on how to join are available in the README.
    - name: 🚀 Discussions and Proposals
      url: https://github.com/react-native-community/discussions-and-proposals
      about: Discuss the future of React Native in the React Native community's discussions and proposals repository.


================================================
FILE: .github/ISSUE_TEMPLATE/debugger_bug_report.yml
================================================
name: 🔍 Debugger - Bug Report
description: Report a bug with React Native DevTools and the New Debugger
labels: ["Needs: Triage :mag:", "Debugging"]

body:
  - type: markdown
    attributes:
      value: "## Reporting a bug for React Native DevTools"
  - type: markdown
    attributes:
      value: |
        Thank you for taking the time to report an issue for React Native DevTools, our new Debugger for React Native.

        Before you continue:
        * If you're using **Expo** and you're noticing a bug, [report it here](https://github.com/expo/expo/issues).
        * If you've found a problem with our **documentation**, [report it here](https://github.com/facebook/react-native-website/issues/).
        * If you're having an issue with **Metro** (the bundler), [report it here](https://github.com/facebook/metro/issues/).
        * If you're using an external library, report the issue to the **library first**.
        * Please [search for similar issues](https://github.com/facebook/react-native/issues) in our issue tracker.

        Make sure that your issue is tested against the [**latest stable**](https://github.com/facebook/react-native/releases/) of React Native.
  - type: textarea
    id: description
    attributes:
      label: Description
      description: A clear and concise description of what the bug is.
    validations:
      required: true
  - type: textarea
    id: reproduction
    attributes:
      label: Steps to reproduce
      description: The list of steps that reproduces the issue.
      placeholder: |
        1. Install the application with `yarn android`
        2. Press `j` to open the debugger
        3. Do something...
    validations:
      required: true
  - type: input
    id: version
    attributes:
      label: React Native Version
      description: The version of react-native that this issue reproduces on. Bear in mind that only issues on [supported versions](https://github.com/reactwg/react-native-releases#which-versions-are-currently-supported) will be looked into.
      placeholder: "0.76.0"
    validations:
      required: true
  - type: textarea
    id: react-native-info
    attributes:
      label: Output of `npx @react-native-community/cli info`
      description: Run `npx @react-native-community/cli info` in your terminal, copy and paste the results here.
      placeholder: |
        Paste the output of `npx @react-native-community/cli info` here. The output looks like:
        ...
        System:
          OS: macOS 14.1.1
          CPU: (10) arm64 Apple M1 Max
          Memory: 417.81 MB / 64.00 GB
          Shell:
            version: "5.9"
            path: /bin/zsh
        Binaries:
          Node: ...
            version: 22.14.0
        ...
      render: text
    validations:
      required: true
  - type: textarea
    id: extra
    attributes:
      label: Screenshots and Videos
      description: |
        Please provide screenshot or a video of your bug if relevant.
        Issues with videos and screenshots are more likely to **get prioritized**.


================================================
FILE: .github/ISSUE_TEMPLATE/new_architecture_bug_report.yml
================================================
name: 💫 New Architecture - Bug Report
description: Report a reproducible bug or a build issue when using the New Architecture (Fabric & TurboModules) in React Native.
labels: ["Needs: Triage :mag:", "Type: New Architecture"]

body:
  - type: markdown
    attributes:
      value: "## New Architecture Related Bugs"
  - type: markdown
    attributes:
      value: |
        Thank you for taking the time to report an issue for [the New Architecture of React Native](https://reactnative.dev/docs/the-new-architecture/landing-page),
        your contribution will help make the framework better for everyone.

        If you're **NOT** using the New Architecture, please use this [other bug type](https://github.com/facebook/react-native/issues/new?template=bug_report.yml).
        Do not attempt to open a bug in this category if you're not using the New Architecture as your bug will be closed.

        Make sure that your issue:
        * Have a **valid reproducer** (See [How to report a bug](https://reactnative.dev/contributing/how-to-report-a-bug)).
        * Is tested against the [**latest stable**](https://github.com/facebook/react-native/releases/) of React Native.

        🚨 IMPORTANT: Due to the extreme number of bugs we receive, issues **without a reproducer** or for an [**unsupported versions**](https://github.com/reactwg/react-native-releases#which-versions-are-currently-supported) of React Native **will be closed**.
  - type: textarea
    id: description
    attributes:
      label: Description
      description: A clear and concise description of what the bug is.
    validations:
      required: true
  - type: textarea
    id: reproduction
    attributes:
      label: Steps to reproduce
      description: The list of steps that reproduce the issue.
      placeholder: |
        1. Install the application with `yarn android`
        2. Click on the button on the Home
        3. Notice the crash
    validations:
      required: true
  - type: input
    id: version
    attributes:
      label: React Native Version
      description: The version of react-native that this issue reproduces on. Bear in mind that only issues on [supported versions](https://github.com/reactwg/react-native-releases#which-versions-are-currently-supported) will be looked into.
      placeholder: "0.73.0"
    validations:
      required: true
  - type: dropdown
    id: platforms
    attributes:
      label: Affected Platforms
      description: Please select which platform you're developing to, and which OS you're using for building.
      multiple: true
      options:
        - Runtime - Android
        - Runtime - iOS
        - Runtime - Web
        - Runtime - Desktop
        - Build - MacOS
        - Build - Windows
        - Build - Linux
        - Other (please specify)
    validations:
      required: true
  - type: dropdown
    id: areas
    attributes:
      label: Areas
      description: Which areas of the New Architecture are affected by this bug report?
      multiple: true
      options:
        - Fabric - The New Renderer
        - TurboModule - The New Native Module System
        - JSI - Javascript Interface
        - Bridgeless - The New Initialization Flow
        - Codegen
        - Other (please specify)
    validations:
      required: true
  - type: textarea
    id: react-native-info
    attributes:
      label: Output of `npx @react-native-community/cli info`
      description: Run `npx @react-native-community/cli info` in your terminal, copy and paste the results here.
      placeholder: |
        Paste the output of `npx @react-native-community/cli info` here. The output looks like:
        ...
        System:
          OS: macOS 14.1.1
          CPU: (10) arm64 Apple M1 Max
          Memory: 417.81 MB / 64.00 GB
          Shell:
            version: "5.9"
            path: /bin/zsh
        Binaries:
          Node: ...
            version: 22.14.0
        ...
      render: text
    validations:
      required: true
  - type: textarea
    id: stacktrace
    attributes:
      label: Stacktrace or Logs
      description: Please provide a stacktrace or a log of your crash or failure
      render: text
      placeholder: |
        Paste your stacktraces and logs here. They might look like:

        java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libfabricjni.so caused by: com.facebook.react.fabric.StateWrapperImpl result: 0
            at com.facebook.soloader.SoLoader.g(Unknown Source:341)
            at com.facebook.soloader.SoLoader.t(Unknown Source:124)
            at com.facebook.soloader.SoLoader.s(Unknown Source:2)
            at com.facebook.soloader.SoLoader.q(Unknown Source:42)
            at com.facebook.soloader.SoLoader.p(Unknown Source:1)
            ...
    validations:
      required: true
  - type: input
    id: reproducer
    attributes:
      label: MANDATORY Reproducer
      description: A link to either a failing RNTesterPlayground.js file, an Expo Snack or a public repository from [this template](https://github.com/react-native-community/reproducer-react-native) that reproduces this bug. Reproducers are **mandatory**, issues without a reproducer will be closed.
      placeholder: "https://github.com/<myuser>/<myreproducer>"
    validations:
      required: true
  - type: textarea
    id: extra
    attributes:
      label: Screenshots and Videos
      description: |
        Please provide screenshot or a video of your bug if relevant.
        Issues with videos and screenshots are more likely to **get prioritized**.


================================================
FILE: .github/ISSUE_TEMPLATE.md
================================================
✋ To keep the backlog clean and actionable, issues will be
🚫 closed if they do not follow one of the issue templates:
👉 https://github.com/facebook/react-native/issues/new/choose



================================================
FILE: .github/PULL_REQUEST_TEMPLATE.md
================================================
<!-- Thanks for submitting a pull request! We appreciate you spending the time to work on these changes. Please provide enough information so that others can review your pull request. The three fields below are mandatory. -->

## Summary:

<!-- Explain the **motivation** for making this change. What existing problem does the pull request solve? -->

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

[ANDROID|GENERAL|IOS|INTERNAL] [BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY] - Message

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

## Test Plan:

<!-- Demonstrate the code is solid. Example: The exact commands you ran and their output, screenshots / videos if the pull request changes the user interface. -->


================================================
FILE: .github/RELEASE_TEMPLATE.md
================================================
<!-- Template for pre-release GitHub release -->

<!-- TODO Post about this release to https://github.com/reactwg/react-native-releases/discussions) -->

- <!-- TODO List out notable picks for this patch -->

---

To test it, run:

npx react-native init RN__SHORT_VERSION__ --version __VERSION__

---

You can participate in the conversation on the status of this release in the [working group](https://github.com/reactwg/react-native-releases/discussions).

---

To help you upgrade to this version, you can use the [upgrade helper](https://react-native-community.github.io/upgrade-helper/) ⚛️

---

See changes from this release in the [changelog PR](https://github.com/facebook/react-native/labels/%F0%9F%93%9D%20Changelog)


================================================
FILE: .github/SUPPORT.md
================================================
Thanks for using React Native! If you need help with your React Native app, the right place to go depends on the type of help that you need.


## 🤔 I have a question or need help with my React Native app.

If you have a coding question related to React Native, it might be better suited for Stack Overflow. It's a great place to browse through [frequent questions about using React Native](https://stackoverflow.com/questions/tagged/react-native?sort=frequent&pageSize=15), as well as [ask for help with specific questions](https://stackoverflow.com/questions/tagged/react-native).

[Reactiflux](https://www.reactiflux.com/) is an active community of React and React Native developers. If you are looking for immediate assistance or have a general question about React Native, the #react-native channel is a good place to start.


## 📃 I found something that seems wrong in the documentation.

The React Native website is hosted on a [separate repository](https://github.com/facebook/react-native-website). If you want to report something that is wrong or missing from the documentation, [please open a new issue there](https://github.com/facebook/react-native-website/issues).


## 🐛 I found a bug in React Native.

If you want to report a reproducible bug or regression in the React Native library, you can [create a new issue](https://github.com/facebook/react-native/issues/new?labels=Type%3A+Bug+Report&template=bug_report.md). It's a good idea to look through [open issues](https://github.com/facebook/react-native/issues) before doing so, as someone else may have reported a similar issue.


## 🚀 I want to discuss the future of React Native.

If you'd like to discuss topics related to the future of React Native, please check out the [React Native Community Discussions and Proposals](https://github.com/react-native-community/discussions-and-proposals) repository.


## 💬 I want to talk to other React Native developers.

If you want to participate in casual discussions about the use of React Native, consider participating in one of the following forums:

- [Reactiflux Discord Server](https://www.reactiflux.com)
- [Spectrum Chat](https://spectrum.chat/react-native)
- [React Native Community Facebook Group](https://www.facebook.com/groups/react.native.community)


> For a full list of community resources, check out [React Native's Community page](https://reactnative.dev/help).


================================================
FILE: .github/actions/build-android/action.yml
================================================
name: build-android
description: This action builds android
inputs:
  release-type:
    required: true
    description: The type of release we are building. It could be nightly, release or dry-run
  gradle-cache-encryption-key:
    description: "The encryption key needed to store the Gradle Configuration cache"
runs:
  using: composite
  steps:
    - name: Setup git safe folders
      shell: bash
      run: git config --global --add safe.directory '*'
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Install node dependencies
      uses: ./.github/actions/yarn-install
    - name: Read current RNVersion
      shell: bash
      id: read-rn-version
      run: |
        echo "rn-version=$(jq -r '.version' packages/react-native/package.json)" >> $GITHUB_OUTPUT
    - name: Set React Native Version
      # We don't want to set the version for stable branches, because this has been
      # already set from the 'create release' commits on the release branch.
      # For testing RC.0, though, the version has not been set yet. In that case, we are on Stable branch and
      # it is the only case when the version is still 1000.0.0
      # We also skip this when the PR targets a stable branch (github.base_ref ends with '-stable'),
      # since the version is already set on the stable branch.
      if: ${{ !endsWith(github.ref_name, '-stable') && !endsWith(github.base_ref || '', '-stable') || endsWith(github.ref_name, '-stable') && steps.read-rn-version.outputs.rn-version == '1000.0.0' }}
      shell: bash
      run: node ./scripts/releases/set-rn-artifacts-version.js --build-type ${{ inputs.release-type }}
    - name: Setup gradle
      uses: ./.github/actions/setup-gradle
      with:
        cache-read-only: "false"
        cache-encryption-key: ${{ inputs.gradle-cache-encryption-key }}
    - name: Restore Android ccache
      uses: actions/cache/restore@v5
      with:
        path: /github/home/.cache/ccache
        key: v2-ccache-android-${{ github.job }}-${{ github.ref }}-${{ hashFiles('packages/react-native/ReactAndroid/**/*.cpp', 'packages/react-native/ReactAndroid/**/*.h', 'packages/react-native/ReactCommon/**/*.cpp', 'packages/react-native/ReactAndroid/**/CMakeLists.txt', 'packages/react-native/ReactCommon/**/CMakeLists.txt') }}
        restore-keys: |
          v2-ccache-android-${{ github.job }}-${{ github.ref }}-
          v2-ccache-android-${{ github.job }}-
          v2-ccache-android-
    - name: Show ccache stats
      shell: bash
      run: ccache -s -v
    - name: Build and publish all the Android Artifacts to /tmp/maven-local
      shell: bash
      run: |
        if [[ "${{ inputs.release-type }}" == "dry-run" ]]; then
          # dry-run: we only build ARM64 to save time/resources. For release/nightlies the default is to build all archs.
          export ORG_GRADLE_PROJECT_reactNativeArchitectures="arm64-v8a,x86" # x86 is required for E2E testing
          export HERMES_PREBUILT_FLAG="ORG_GRADLE_PROJECT_react.internal.useHermesNightly=true"
          TASKS="publishAllToMavenTempLocal build"
        elif [[ "${{ inputs.release-type }}" == "nightly" ]]; then
          # nightly: we set isSnapshot to true so artifacts are sent to the right repository on Maven Central.
          export ORG_GRADLE_PROJECT_isSnapshot="true"
          export HERMES_PREBUILT_FLAG="ORG_GRADLE_PROJECT_react.internal.useHermesNightly=true"
          TASKS="publishAllToMavenTempLocal publishAndroidToSonatype build"
        else
          # release: we want to build all archs (default)
          export HERMES_PREBUILT_FLAG="ORG_GRADLE_PROJECT_react.internal.useHermesStable=true"
          TASKS="publishAllToMavenTempLocal publishAndroidToSonatype build"
        fi
        env "$HERMES_PREBUILT_FLAG" ./gradlew $TASKS -PenableWarningsAsErrors=true
    - name: Save Android ccache
      if: ${{ github.ref == 'refs/heads/main' || contains(github.ref, '-stable') }}
      uses: actions/cache/save@v5
      with:
        path: /github/home/.cache/ccache
        key: v2-ccache-android-${{ github.job }}-${{ github.ref }}-${{ hashFiles('packages/react-native/ReactAndroid/**/*.cpp', 'packages/react-native/ReactAndroid/**/*.h', 'packages/react-native/ReactCommon/**/*.cpp', 'packages/react-native/ReactAndroid/**/CMakeLists.txt', 'packages/react-native/ReactCommon/**/CMakeLists.txt') }}
    - name: Show ccache stats
      shell: bash
      run: ccache -s -v
    - name: Upload Maven Artifacts
      uses: actions/upload-artifact@v6
      with:
        name: maven-local
        path: /tmp/maven-local
    - name: Upload test results
      if: ${{ always() }}
      uses: actions/upload-artifact@v6
      with:
        name: build-android-results
        compression-level: 1
        path: |
          packages/react-native-gradle-plugin/react-native-gradle-plugin/build/reports
          packages/react-native-gradle-plugin/settings-plugin/build/reports
          packages/react-native/ReactAndroid/build/reports
    - name: Upload RNTester APK - hermes-debug
      if: ${{ always() }}
      uses: actions/upload-artifact@v6
      with:
        name: rntester-debug
        path: packages/rn-tester/android/app/build/outputs/apk/debug/
        compression-level: 0
    - name: Upload RNTester APK - hermes-release
      if: ${{ always() }}
      uses: actions/upload-artifact@v6
      with:
        name: rntester-release
        path: packages/rn-tester/android/app/build/outputs/apk/release/
        compression-level: 0


================================================
FILE: .github/actions/build-fantom-runner/action.yml
================================================
name: Build Fantom Runner
inputs:
  release-type:
    required: true
    description: The type of release we are building. It could be nightly, release or dry-run
  gradle-cache-encryption-key:
    description: "The encryption key needed to store the Gradle Configuration cache"

runs:
  using: composite
  steps:
    - name: Install dependencies
      shell: bash
      run: |
        sudo apt update
        sudo apt install -y git cmake openssl libssl-dev clang
    - name: Setup git safe folders
      shell: bash
      run: git config --global --add safe.directory '*'
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Install node dependencies
      uses: ./.github/actions/yarn-install
    - name: Setup gradle
      uses: ./.github/actions/setup-gradle
      with:
        cache-read-only: "false"
        cache-encryption-key: ${{ inputs.gradle-cache-encryption-key }}
    - name: Restore Fantom ccache
      uses: actions/cache/restore@v5
      with:
        path: /github/home/.cache/ccache
        key: v2-ccache-fantom-${{ github.job }}-${{ github.ref }}-${{ hashFiles(
            'packages/react-native/ReactAndroid/**/*.cpp',
            'packages/react-native/ReactAndroid/**/*.h',
            'packages/react-native/ReactAndroid/**/CMakeLists.txt',
            'packages/react-native/ReactCommon/**/*.cpp',
            'packages/react-native/ReactCommon/**/*.h',
            'packages/react-native/ReactCommon/**/CMakeLists.txt',
            'private/react-native-fantom/tester/**/*.cpp',
            'private/react-native-fantom/tester/**/*.h',
            'private/react-native-fantom/tester/**/CMakeLists.txt'
          ) }}
        restore-keys: |
          v2-ccache-fantom-${{ github.job }}-${{ github.ref }}-
          v2-ccache-fantom-${{ github.job }}-
          v2-ccache-fantom-
    - name: Show ccache stats (before)
      shell: bash
      run: ccache -s -v
    - name: Build Fantom Runner
      shell: bash
      run: yarn workspace @react-native/fantom build
      env:
        CC: clang
        CXX: clang++
    - name: Save Fantom ccache
      if: ${{ github.ref == 'refs/heads/main' || contains(github.ref, '-stable') }}
      uses: actions/cache/save@v5
      with:
        path: /github/home/.cache/ccache
        key: v2-ccache-fantom-${{ github.job }}-${{ github.ref }}-${{ hashFiles(
            'packages/react-native/ReactAndroid/**/*.cpp',
            'packages/react-native/ReactAndroid/**/*.h',
            'packages/react-native/ReactAndroid/**/CMakeLists.txt',
            'packages/react-native/ReactCommon/**/*.cpp',
            'packages/react-native/ReactCommon/**/*.h',
            'packages/react-native/ReactCommon/**/CMakeLists.txt',
            'private/react-native-fantom/tester/**/*.cpp',
            'private/react-native-fantom/tester/**/*.h',
            'private/react-native-fantom/tester/**/CMakeLists.txt'
          ) }}
    - name: Show ccache stats (after)
      shell: bash
      run: ccache -s -v
    - name: Copy shared libraries
      shell: bash
      run: cp packages/react-native/ReactAndroid/hermes-engine/build/hermes/lib/libhermesvm.so private/react-native-fantom/build/tester/
    - name: Upload Fantom Runner binary
      uses: actions/upload-artifact@v6
      with:
        name: fantom-runner-binary
        compression-level: 1
        path: private/react-native-fantom/build/tester/


================================================
FILE: .github/actions/build-npm-package/action.yml
================================================
name: build-npm-package
description: This action builds the NPM package and uploads it to Maven
inputs:
  release-type:
    required: true
    description: The type of release we are building. It could be nightly, release or dry-run
  gha-npm-token:
    required: false
    description: The GHA npm token, required only to publish to npm
    default: ''
  gradle-cache-encryption-key:
    description: The encryption key needed to store the Gradle Configuration cache

runs:
  using: composite
  steps:
    - name: Setup git safe folders
      shell: bash
      run: git config --global --add safe.directory '*'
    - name: Download ReactNativeDependencies
      uses: actions/download-artifact@v7
      with:
        pattern: ReactNativeDependencies*
        path: ./packages/react-native/ReactAndroid/external-artifacts/artifacts
        merge-multiple: true
    - name: Download ReactCore artifacts
      uses: actions/download-artifact@v7
      with:
        pattern: ReactCore*
        path: ./packages/react-native/ReactAndroid/external-artifacts/artifacts
        merge-multiple: true
    - name: Print Artifacts Directory
      shell: bash
      run: ls -lR ./packages/react-native/ReactAndroid/external-artifacts/artifacts/
    - name: Setup gradle
      uses: ./.github/actions/setup-gradle
      with:
        cache-encryption-key: ${{ inputs.gradle-cache-encryption-key }}
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Install dependencies
      uses: ./.github/actions/yarn-install
    - name: Build packages
      shell: bash
      run: yarn build
    - name: Build types
      shell: bash
      run: yarn build-types --skip-snapshot
    # Continue with publish steps
    - name: Set npm credentials
      if: ${{ inputs.release-type == 'release' ||
        inputs.release-type == 'nightly' }}
      shell: bash
      run: echo "//registry.npmjs.org/:_authToken=${{ inputs.gha-npm-token }}" > ~/.npmrc
    - name: Publish NPM
      shell: bash
      run: |
        echo "GRADLE_OPTS = $GRADLE_OPTS"
        # We can't have a separate step because each command is executed in a separate shell
        # so variables exported in a command are not visible in another.
        if [[ "${{ inputs.release-type }}" == "dry-run" ]]; then
          export ORG_GRADLE_PROJECT_reactNativeArchitectures="arm64-v8a"
        else
          export ORG_GRADLE_PROJECT_reactNativeArchitectures="armeabi-v7a,arm64-v8a,x86,x86_64"
        fi
        node ./scripts/releases-ci/publish-npm.js -t ${{ inputs.release-type }}
    - name: Upload npm logs
      uses: actions/upload-artifact@v6
      with:
        name: npm-logs
        path: ~/.npm/_logs
    - name: Build release package as a job artifact
      if: ${{ inputs.release-type == 'dry-run' }}
      shell: bash
      run: |
        mkdir -p build

        FILENAME=$(cd packages/react-native; npm pack | tail -1)
        mv "packages/react-native/$FILENAME" build/

        echo "$FILENAME" > build/react-native-package-version
    - name: Upload release package
      uses: actions/upload-artifact@v6
      if: ${{ inputs.release-type == 'dry-run' }}
      with:
        name: react-native-package
        path: build


================================================
FILE: .github/actions/create-release/action.yml
================================================
name: create_release
description: Creates a new React Native release
inputs:
  version:
    description: "The version of React Native we want to release. For example 0.75.0-rc.0"
    required: true
  is-latest-on-npm:
    description: "Whether we want to tag this release as latest on NPM"
    required: true
    default: "false"
  dry-run:
    description: "Whether the job should be executed in dry-run mode or not"
    default: "true"
runs:
  using: composite
  steps:
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Yarn install
      uses: ./.github/actions/yarn-install
    - name: Configure Git
      shell: bash
      run: |
        git config --local user.email "bot@reactnative.dev"
        git config --local user.name "React Native Bot"
    - name: Creating release commit
      shell: bash
      run: |
        node scripts/releases/create-release-commit.js \
          --reactNativeVersion "${{ inputs.version }}" \
          --tagAsLatestRelease "${{ inputs.is-latest-on-npm }}" \
          --dryRun "${{ inputs.dry-run }}"
        GIT_PAGER=cat git show HEAD
    - name: Update "latest" tag if needed
      shell: bash
      if: ${{ inputs.is-latest-on-npm == 'true' }}
      run: |
        git tag -d "latest"
        git push origin :latest
        git tag -a "latest" -m "latest"
    - name: Pushing release commit
      shell: bash
      if: ${{ inputs.dry-run == 'false' }}
      run: |
        CURR_BRANCH="$(git branch --show-current)"
        git push origin "$CURR_BRANCH" --follow-tags


================================================
FILE: .github/actions/diff-js-api-changes/action.yml
================================================
name: diff-js-api-changes
description: Check for breaking changes in the public React Native JS API
outputs:
  message:
    description: Formatted markdown message describing API changes, or empty if no changes
    value: ${{ steps.format_output.outputs.message }}
runs:
  using: composite
  steps:
    - name: Fetch PR and main, compute merge base
      id: merge_base
      shell: bash
      env:
        PR_SHA: ${{ github.event.pull_request.head.sha }}
      run: |
        git fetch origin main
        git fetch origin "$PR_SHA" --depth=500
        echo "merge_base=$(git merge-base "$PR_SHA" origin/main)" >> $GITHUB_OUTPUT

    - name: Extract before and after API snapshots
      shell: bash
      env:
        SCRATCH_DIR: ${{ runner.temp }}/diff-js-api-changes
        MERGE_BASE: ${{ steps.merge_base.outputs.merge_base }}
        PR_SHA: ${{ github.event.pull_request.head.sha }}
      run: |
        mkdir -p $SCRATCH_DIR
        git show "$MERGE_BASE":packages/react-native/ReactNativeApi.d.ts > $SCRATCH_DIR/ReactNativeApi-before.d.ts \
          || echo "" > $SCRATCH_DIR/ReactNativeApi-before.d.ts
        git show "$PR_SHA":packages/react-native/ReactNativeApi.d.ts > $SCRATCH_DIR/ReactNativeApi-after.d.ts \
          || echo "" > $SCRATCH_DIR/ReactNativeApi-after.d.ts

    - name: Run breaking change detection
      shell: bash
      env:
        SCRATCH_DIR: ${{ runner.temp }}/diff-js-api-changes
      run: |
        node ./scripts/js-api/diff-api-snapshot \
          $SCRATCH_DIR/ReactNativeApi-before.d.ts \
          $SCRATCH_DIR/ReactNativeApi-after.d.ts \
          > $SCRATCH_DIR/output.json

    - name: Format output message
      id: format_output
      shell: bash
      env:
        SCRATCH_DIR: ${{ runner.temp }}/diff-js-api-changes
      run: |
        if [ ! -f "$SCRATCH_DIR/output.json" ]; then
          echo "message=" >> $GITHUB_OUTPUT
          exit 0
        fi

        RESULT=$(cat $SCRATCH_DIR/output.json | jq -r '.result // empty')
        if [ -z "$RESULT" ] || [ "$RESULT" = "NON_BREAKING" ]; then
          echo "message=" >> $GITHUB_OUTPUT
          exit 0
        fi

        # Use delimiter for multiline output
        {
          echo "message<<EOF"
          echo "> [!WARNING]"
          echo "> **JavaScript API change detected**"
          echo ">"
          echo "> This PR commits an update to \`ReactNativeApi.d.ts\`, indicating a change to React Native's public JavaScript API."
          echo ">"
          echo "> - Please include a **clear changelog message**."
          echo "> - This change will be subject to additional review."
          echo ">"
          echo "> This change was flagged as: \`${RESULT}\`"
          echo "EOF"
        } >> $GITHUB_OUTPUT


================================================
FILE: .github/actions/maestro-android/action.yml
================================================
name: Maestro E2E Android
description: Runs E2E Tests on Android using Maestro
inputs:
  app-path:
    required: true
    description: The path to the .apk file
  app-id:
    required: true
    description: The id of the app to test
  maestro-flow:
    required: true
    description: the folder that contains the maestro tests
  install-java:
    required: false
    default: 'true'
    description: whether this action has to install java 17 or not
  flavor:
    required: true
    description: the flavor we want to run - either debug or release
    default: release
  working-directory:
    required: false
    default: "."
    description: The directory from which metro should be started
  emulator-arch:
    required: false
    default: x86
    description: The architecture of the emulator to run

runs:
  using: composite
  steps:
    - name: Installing Maestro
      shell: bash
      run: export MAESTRO_VERSION=1.40.0; curl -Ls "https://get.maestro.mobile.dev" | bash
    - name: Set up JDK 17
      if: ${{ inputs.install-java == 'true' }}
      uses: actions/setup-java@v5
      with:
        java-version: '17'
        distribution: 'zulu'
    - name: Enable KVM group perms
      shell: bash
      run: |
        # ubuntu machines have hardware acceleration available and when we try to create an emulator, the script pauses asking for user input
        # These lines set the rules to reply automatically to that question and unblock the creation of the emulator.
        # source: https://github.com/ReactiveCircus/android-emulator-runner?tab=readme-ov-file#running-hardware-accelerated-emulators-on-linux-runners
        echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
        sudo udevadm control --reload-rules
        sudo udevadm trigger --name-match=kvm
    - name: Build Codegen
      shell: bash
      if: ${{ inputs.flavor == 'debug' }}
      run: ./packages/react-native-codegen/scripts/oss/build.sh
    - name: Run e2e tests
      id: run-tests
      uses: reactivecircus/android-emulator-runner@v2
      with:
        api-level: 24
        arch: ${{ inputs.emulator-arch }}
        ram-size: '8192M'
        heap-size: '4096M'
        disk-size: '10G'
        cores: '4'
        disable-animations: false
        avd-name: e2e_emulator
        script: node .github/workflow-scripts/maestro-android.js ${{ inputs.app-path }} ${{ inputs.app-id }} ${{ inputs.maestro-flow }} ${{ inputs.flavor }} ${{ inputs.working-directory }}
    - name: Normalize APP_ID
      id: normalize-app-id
      shell: bash
      if: always()
      run: |
        NORM_APP_ID=$(echo "${{ inputs.app-id }}" | tr '.' '-')
        echo "app-id=$NORM_APP_ID" >> $GITHUB_OUTPUT
    - name: Store tests result
      uses: actions/upload-artifact@v6
      if: always()
      with:
        name: e2e_android_${{ steps.normalize-app-id.outputs.app-id }}_report_${{ inputs.flavor }}_${{ inputs.emulator-arch }}_NewArch
        path: |
          report.xml
          screen.mp4
    - name: Store Logs
      if: steps.run-tests.outcome == 'failure'
      uses: actions/upload-artifact@v6
      with:
        name: maestro-logs-android-${{ steps.normalize-app-id.outputs.app-id }}-${{ inputs.flavor }}-${{ inputs.emulator-arch }}-NewArch
        path: /tmp/MaestroLogs


================================================
FILE: .github/actions/maestro-ios/action.yml
================================================
name: Maestro E2E iOS
description: Runs E2E Tests on iOS using Maestro
inputs:
  app-path:
    required: true
    description: The path to the .app file
  app-id:
    required: true
    description: The id of the app to test
  maestro-flow:
    required: true
    description: the folder that contains the maestro tests
  flavor:
    required: true
    description: Whether we are building for Debug or Release
    default: Release
  working-directory:
    required: false
    default: "."
    description: The directory from which metro should be started

runs:
  using: composite
  steps:
    - name: Installing Maestro
      shell: bash
      run: export MAESTRO_VERSION=1.40.0; curl -Ls "https://get.maestro.mobile.dev" | bash
    - name: Installing Maestro dependencies
      shell: bash
      run: |
        brew tap facebook/fb
        brew install facebook/fb/idb-companion
    - name: Set up JDK 17
      uses: actions/setup-java@v5
      with:
        java-version: '17'
        distribution: 'zulu'
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Run yarn install
      uses: ./.github/actions/yarn-install
    - name: Start Metro in Debug
      shell: bash
      if: ${{ inputs.flavor == 'Debug' }}
      run: |
        # build codegen or we will see a redbox
        ./packages/react-native-codegen/scripts/oss/build.sh

        cd ${{ inputs.working-directory }}
        yarn start &
        sleep 5 # to give metro time to load
    - name: Run tests
      id: run-tests
      shell: bash
      run: |
        # Avoid exit from the job if one of the command returns an error.
        # Maestro can fail in case of flakyness, we have some retry logic.
        set +e

        node .github/workflow-scripts/maestro-ios.js \
          "${{ inputs.app-path }}" \
          "${{ inputs.app-id }}" \
          "${{ inputs.maestro-flow }}" \
          "Hermes" \
          "${{ inputs.flavor }}" \
          "${{ inputs.working-directory }}"
    - name: Store video record
      if: always()
      uses: actions/upload-artifact@v6
      with:
        name: e2e_ios_${{ inputs.app-id }}_report_${{ inputs.flavor }}_NewArch
        path: |
          video_record_1.mov
          video_record_2.mov
          video_record_3.mov
          video_record_4.mov
          video_record_5.mov
          report.xml
    - name: Store Logs
      if: failure() && steps.run-tests.outcome == 'failure'
      uses: actions/upload-artifact@v6
      with:
        name: maestro-logs-${{ inputs.app-id }}-${{ inputs.flavor }}-NewArch
        path: /tmp/MaestroLogs


================================================
FILE: .github/actions/post-pr-comment/action.yml
================================================
name: post-pr-comment
description: Post or update a PR comment, or delete if no sections
inputs:
  sections:
    description: 'JSON array of markdown sections to include in comment'
    required: false
    default: '[]'
  header:
    description: 'Optional header text to display at the top of the comment'
    required: false
    default: ''
  marker:
    description: 'HTML comment marker to identify this comment'
    required: true
runs:
  using: composite
  steps:
    - name: Create, update, or delete comment
      uses: actions/github-script@v8
      env:
        SECTIONS_INPUT: ${{ inputs.sections }}
        MARKER_INPUT: ${{ inputs.marker }}
        HEADER_INPUT: ${{ inputs.header }}
      with:
        script: |
          const marker = process.env.MARKER_INPUT;
          const header = process.env.HEADER_INPUT;
          const sections = JSON.parse(process.env.SECTIONS_INPUT)
            .filter(Boolean)
            .filter(s => s.trim());

          const {owner, repo} = context.repo;
          const issue_number = context.issue.number;

          const {data: comments} = await github.rest.issues.listComments({
            owner, repo, issue_number,
          });

          const existing = comments.find(c => c.body?.includes(marker));

          if (!sections.length) {
            if (existing) {
              await github.rest.issues.deleteComment({owner, repo, comment_id: existing.id});
            }
            return;
          }

          const content = sections.join('\n\n');
          const body = header ? `${marker}\n## ${header}\n\n${content}` : `${marker}\n${content}`;

          if (existing) {
            await github.rest.issues.updateComment({owner, repo, comment_id: existing.id, body});
          } else {
            await github.rest.issues.createComment({owner, repo, issue_number, body});
          }


================================================
FILE: .github/actions/prepare-hermes-v1-app/action.yml
================================================
name: prepare-hermes-v1-app
description: Prepares a React Native app with Hermes V1 enabled
inputs:
  retry-count:
    description: 'Number of times to retry the yarn install on failure'
runs:
  using: composite
  steps:
    - name: Create new app
      shell: bash
      run: |
        cd /tmp
        npx @react-native-community/cli init RNApp --skip-install --version nightly

    - name: Select latest Hermes V1 version
      shell: bash
      run: |
        node "$GITHUB_WORKSPACE/.github/workflow-scripts/selectLatestHermesV1Version.js"

    - name: Apply patch to enable Hermes V1
      shell: bash
      run: |
        cd /tmp/RNApp
        git apply --binary --3way --whitespace=nowarn "$GITHUB_WORKSPACE/.github/workflow-scripts/hermes-v1.patch"
        echo "✅ Patch applied successfully"

    - name: Install app dependencies with retry
      uses: nick-fields/retry@v3
      with:
        timeout_minutes: 10
        max_attempts: ${{ inputs.retry-count }}
        retry_wait_seconds: 15
        shell: bash
        command: |
          cd /tmp/RNApp
          yarn install
        on_retry_command: |
          echo "Cleaning up for yarn retry..."
          cd /tmp/RNApp
          rm -rf node_modules yarn.lock || true
          yarn cache clean || true


================================================
FILE: .github/actions/prepare-ios-tests/action.yml
================================================
name: prepare-ios-tests
description: Prepare iOS Tests
runs:
  using: composite
  steps:
    - name: Run Ruby Tests
      shell: bash
      run: |
        cd packages/react-native/scripts
        sh run_ruby_tests.sh
    - name: Boot iPhone Simulator
      shell: bash
      run: source scripts/.tests.env && xcrun simctl boot "$IOS_DEVICE" || true
    - name: "Brew: Tap wix/brew"
      shell: bash
      run: brew tap wix/brew
    - name: brew install applesimutils watchman
      shell: bash
      run: brew install applesimutils watchman
    - name: Configure Watchman
      shell: bash
      run: echo "{}" > .watchmanconfig


================================================
FILE: .github/actions/run-fantom-tests/action.yml
================================================
name: Run Fantom Tests
runs:
  using: composite
  steps:
    - name: Install runtime dependencies
      shell: bash
      run: |
        sudo apt update
        sudo apt install -y openssl libssl-dev
    - name: Setup git safe folders
      shell: bash
      run: git config --global --add safe.directory '*'
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Install node dependencies
      uses: ./.github/actions/yarn-install
    - name: Download Fantom Runner binary
      uses: actions/download-artifact@v7
      with:
        name: fantom-runner-binary
        path: private/react-native-fantom/build/tester
    - name: Make binary executable
      shell: bash
      run: chmod +x private/react-native-fantom/build/tester/fantom_tester
    - name: Run Fantom Tests
      shell: bash
      run: |
        for attempt in 1 2 3; do
          echo "Attempt $attempt of 3"
          if yarn fantom; then
            exit 0
          fi
          if [ "$attempt" -lt 3 ]; then
            echo "Attempt $attempt failed. Retrying..."
          fi
        done
        echo "All 3 attempts failed."
        exit 1
      env:
        LD_LIBRARY_PATH: ${{ github.workspace }}/private/react-native-fantom/build/tester
    - name: Upload test results
      if: ${{ always() }}
      uses: actions/upload-artifact@v6
      with:
        name: run-fantom-tests-results
        compression-level: 1
        path: |
          private/react-native-fantom/build/reports


================================================
FILE: .github/actions/setup-gradle/action.yml
================================================
name: Setup gradle
description: "Set up your GitHub Actions workflow with a specific version of gradle"
inputs:
  cache-read-only:
    description: "Whether the Gradle Cache should be in read-only mode so this job won't be allowed to write to it"
    default: "true"
  cache-encryption-key:
    description: "The encryption key needed to store the Gradle Configuration cache"
runs:
  using: "composite"
  steps:
    - name: Setup gradle
      uses: gradle/actions/setup-gradle@v4
      with:
        gradle-version: wrapper
        # We want the Gradle cache to be written only on main/-stable branches run, and only for jobs with `cache-read-only` == false (i.e. `build_android`).
        cache-read-only: ${{ (github.ref != 'refs/heads/main' && !contains(github.ref, '-stable')) || inputs.cache-read-only == 'true' }}
        # Similarly, for those jobs we want to start with a clean cache so it doesn't grow without limits (this is the negation of the previous condition).
        cache-write-only: ${{ (github.ref == 'refs/heads/main' || contains(github.ref, '-stable')) && inputs.cache-read-only != 'true' }}
        add-job-summary-as-pr-comment: on-failure
        # Encryption key for the Gradle Configuration Cache.
        # See https://docs.gradle.org/8.6/userguide/configuration_cache.html#config_cache:secrets:configuring_encryption_key
        cache-encryption-key: ${{ inputs.cache-encryption-key }}


================================================
FILE: .github/actions/setup-node/action.yml
================================================
name: Setup node.js
description: 'Set up your GitHub Actions workflow with a specific version of node.js'
inputs:
  node-version:
    description: 'The node.js version to use'
    required: false
    default: '22.14.0'
runs:
  using: "composite"
  steps:
    - name: Setup node.js
      uses: actions/setup-node@v6
      with:
        node-version: ${{ inputs.node-version }}
        cache: yarn


================================================
FILE: .github/actions/setup-xcode/action.yml
================================================
name: Setup xcode
description: 'Set up your GitHub Actions workflow with a specific version of xcode'
inputs:
  xcode-version:
    description: 'The xcode version to use'
    required: false
    default: '16.4.0'
runs:
  using: "composite"
  steps:
    - name: Setup xcode
      uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd
      with:
        xcode-version: ${{ inputs.xcode-version }}


================================================
FILE: .github/actions/test-ios-helloworld/action.yml
================================================
name: test-ios-helloworld
description: Test iOS Hello World
inputs:
  use-frameworks:
    description: The dependency building and linking strategy to use. Must be one of "StaticLibraries", "DynamicFrameworks"
    default: StaticLibraries
  ruby-version:
    description: The version of ruby that must be used
    default: 2.6.10
  flavor:
    description: The flavor of the build. Must be one of "Debug", "Release".
    default: Debug
runs:
  using: composite
  steps:
    - name: Setup xcode
      uses: ./.github/actions/setup-xcode
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Run yarn install
      uses: ./.github/actions/yarn-install
    - name: Setup ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ inputs.ruby-version }}
    - name: Set nightly Hermes versions
      shell: bash
      run: |
        node ./scripts/releases/use-hermes-nightly.js
    - name: Run yarn install again, with the correct hermes version
      uses: ./.github/actions/yarn-install
    - name: Download ReactNativeDependencies
      uses: actions/download-artifact@v7
      with:
        name: ReactNativeDependencies${{ inputs.flavor }}.xcframework.tar.gz
        path: /tmp/third-party
    - name: Print third-party folder
      shell: bash
      run: ls -lR /tmp/third-party
    - name: Download React Native Prebuilds
      uses: actions/download-artifact@v7
      with:
        name: ReactCore${{ inputs.flavor }}.xcframework.tar.gz
        path: /tmp/ReactCore
    - name: Print ReactCore folder
      shell: bash
      run: ls -lR /tmp/ReactCore
    - name: Install iOS dependencies - Configuration ${{ inputs.flavor }};
      shell: bash
      run: |
        cd private/helloworld
        args=()

        if [[ ${{ inputs.use-frameworks }} == "DynamicFrameworks" ]]; then
          args+=(--frameworks dynamic)
        fi

        export RCT_USE_LOCAL_RN_DEP="/tmp/third-party/ReactNativeDependencies${{ inputs.flavor }}.xcframework.tar.gz"
        export RCT_TESTONLY_RNCORE_TARBALL_PATH="/tmp/ReactCore/ReactCore${{ inputs.flavor }}.xcframework.tar.gz"

        yarn bootstrap ios "${args[@]}" | cat

    - name: Run Helloworld tests
      shell: bash
      run: |
        cd private/helloworld
        yarn test

    - name: Build HelloWorld project
      shell: bash
      run: |
        cd private/helloworld

        args=()
        if [[ ${{ inputs.flavor }} == "Release" ]]; then
          args+=(--prod)
        fi
        yarn build ios "${args[@]}" | cat
        yarn bundle ios "${args[@]}" | cat


================================================
FILE: .github/actions/test-ios-rntester/action.yml
================================================
name: test-ios-rntester
description: Test iOS RNTester
inputs:
  ruby-version:
    description: The version of ruby that must be used
    default: 2.6.10
  run-unit-tests:
    description: whether unit tests should run or not.
    default: false
  flavor:
    description: The flavor of the build. Must be one of "Debug", "Release".
    default: Debug
  run-e2e-tests:
    description: Whether we want to run E2E tests or not
    required: false
    default: false
  use-frameworks:
    description: Whether we have to build with Dynamic Frameworks. If this is set to true, it builds from source
    required: false
    default: false

runs:
  using: composite
  steps:
    - name: Setup xcode
      uses: ./.github/actions/setup-xcode
    - name: Setup node.js
      uses: ./.github/actions/setup-node
    - name: Run yarn
      uses: ./.github/actions/yarn-install
    - name: Setup ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ inputs.ruby-version }}
    - name: Set nightly Hermes versions
      shell: bash
      run: |
        node ./scripts/releases/use-hermes-nightly.js
    - name: Run yarn install again, with the correct hermes version
      uses: ./.github/actions/yarn-install
    - name: Prepare IOS Tests
      if: ${{ inputs.run-unit-tests == 'true' }}
      uses: ./.github/actions/prepare-ios-tests
    - name: Download ReactNativeDependencies
      if: ${{ inputs.use-frameworks == 'false' }}
      uses: actions/download-artifact@v7
      with:
        name: ReactNativeDependencies${{ inputs.flavor }}.xcframework.tar.gz
        path: /tmp/third-party/
    - name: Print third-party folder
      if: ${{ inputs.use-frameworks == 'false' }}
      shell: bash
      run: ls -lR /tmp/third-party
    - name: Download React Native Prebuilds
      if: ${{ inputs.use-frameworks == 'false' }}
      uses: actions/download-artifact@v7
      with:
        name: ReactCore${{ inputs.flavor }}.xcframework.tar.gz
        path: /tmp/ReactCore
    - name: Print ReactCore folder
      if: ${{ inputs.use-frameworks == 'false' }}
      shell: bash
      run: ls -lR /tmp/ReactCore
    - name: Install CocoaPods dependencies
      shell: bash
      run: |
        if [[ ${{ inputs.use-frameworks }} == "true" ]]; then
          export USE_FRAMEWORKS=dynamic
        else
          # If use-frameworks is false, let's use prebuilds
          export RCT_USE_LOCAL_RN_DEP="/tmp/third-party/ReactNativeDependencies${{ inputs.flavor }}.xcframework.tar.gz"
          export RCT_TESTONLY_RNCORE_TARBALL_PATH="/tmp/ReactCore/ReactCore${{ inputs.flavor }}.xcframework.tar.gz"
        fi

        cd packages/rn-tester

        bundle install
        bundle exec pod update hermes-engine --no-repo-update
    - name: Build RNTester
      shell: bash
      run: |
        xcodebuild \
          -scheme "RNTester" \
          -workspace packages/rn-tester/RNTesterPods.xcworkspace \
          -configuration "${{ inputs.flavor }}" \
          -sdk "iphonesimulator" \
          -destination "generic/platform=iOS Simulator" \
          -derivedDataPath "/tmp/RNTesterBuild"

          echo "Print path to *.app file"
          APP_PATH=$(find "/tmp/RNTesterBuild" -type d -name "*.app")

          echo "App found at $APP_PATH"
          echo "app-path=$APP_PATH" >> $GITHUB_ENV
    - name: "Run Tests: iOS Unit and Integration Tests"
      if: ${{ inputs.run-unit-tests == 'true' }}
      shell: bash
      run: yarn test-ios

    - name: Zip Derived data folder
      if: ${{ inputs.run-unit-tests == 'true' }}
      shell: bash
      run: |
        echo "zipping tests results"
        cd /Users/runner/Library/Developer/Xcode
        tar -zcvf xcresults.tar.gz "/tmp/RNTesterTestResults"
    - name: Upload artifact
      uses: actions/upload-artifact@v6
      if: ${{ inputs.run-unit-tests == 'true' }}
      with:
        name: xcresults-${{ inputs.flavor }}-${{ inputs.use-frameworks == 'true' && 'dynamic-frameworks' || 'static-libraries' }}-Ruby${{ inputs.ruby-version }}
        path: /Users/runner/Library/Developer/Xcode/xcresults.tar.gz
    - name: Upload RNTester App
      if: ${{ inputs.use-frameworks == 'false' && inputs.ruby-version == '2.6.10' }} # This is needed to avoid conflicts with the artifacts
      uses: actions/upload-artifact@v6
      with:
        name: RNTesterApp-NewArch-${{ inputs.flavor }}
        path: ${{ env.app-path }}
    - name: Store test results
      if: ${{ inputs.run-unit-tests == 'true' }}
      uses: actions/upload-artifact@v6
      with:
        name: test-results-${{ inputs.flavor }}-${{ inputs.use-frameworks == 'true' && 'dynamic-frameworks' || 'static-libraries' }}-Ruby${{ inputs.ruby-version }}
        path: ./reports/junit


================================================
FILE: .github/actions/test-js/action.yml
================================================
name: test-js
description: Runs all the JS tests in the codebase
inputs:
  node-version:
    description: "The node.js version to use"
    required: false
    default: "22"
runs:
  using: composite
  steps:
    - name: Setup node.js
      uses: ./.github/actions/setup-node
      with:
        node-version: ${{ inputs.node-version }}
    - name: Yarn install
      uses: ./.github/actions/yarn-install
    - name: Run Tests - JavaScript Tests
      shell: bash
      run: node ./scripts/run-ci-javascript-tests.js --maxWorkers 2
    - name: Upload test results
      if: ${{ always() }}
      uses: actions/upload-artifact@v6
      with:
        name: test-js-results
        compression-level: 1
        path: ./reports/junit


================================================
FILE: .github/actions/yarn-install/action.yml
================================================
name: yarn-install
runs:
  using: composite
  steps:
    - name: Install dependencies
      shell: bash
      run: |
        MAX_ATTEMPTS=2
        ATTEMPT=0
        WAIT_TIME=20
        while [ $ATTEMPT -lt $MAX_ATTEMPTS ]; do
            yarn install --non-interactive --frozen-lockfile && break
            echo "yarn install failed. Retrying in $WAIT_TIME seconds..."
            sleep $WAIT_TIME
            ATTEMPT=$((ATTEMPT + 1))
        done
        if [ $ATTEMPT -eq $MAX_ATTEMPTS ]; then
            echo "All attempts to invoke yarn install failed - Aborting the workflow"
            exit 1
        fi


================================================
FILE: .github/workflow-scripts/__tests__/createDraftRelease-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {
  _verifyTagExists,
  _extractChangelog,
  _computeBody,
  _createDraftReleaseOnGitHub,
} = require('../createDraftRelease');

const fs = require('fs');

const silence = () => {};
const mockFetch = jest.fn();

jest.mock('../utils.js', () => ({
  log: silence,
}));

global.fetch = mockFetch;

describe('Create Draft Release', () => {
  beforeEach(jest.clearAllMocks);

  describe('#_verifyTagExists', () => {
    it('throws if the tag does not exists', async () => {
      const token = 'token';
      mockFetch.mockReturnValueOnce(Promise.resolve({status: 404}));

      await expect(_verifyTagExists('0.77.1')).rejects.toThrowError(
        `Tag v0.77.1 does not exist`,
      );
      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        'https://github.com/facebook/react-native/releases/tag/v0.77.1',
      );
    });
  });

  describe('#_extractChangelog', () => {
    it(`extracts changelog from CHANGELOG.md`, async () => {
      const mockedReturnValue = `# Changelog

## v0.77.2

- [PR #1234](https://github.com/facebook/react-native/pull/1234) - Some change
- [PR #5678](https://github.com/facebook/react-native/pull/5678) - Some other change


## v0.77.1
### Breaking Changes
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change
- [PR #3457](https://github.com/facebook/react-native/pull/3457) - Some other change

#### iOS
- [PR #3436](https://github.com/facebook/react-native/pull/3436) - Some other change
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change

### Fixed
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change

#### iOS
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change


## v0.77.0

- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change

## v0.76.0

- [PR #7890](https://github.com/facebook/react-native/pull/7890) - Some other change`;

      jest.spyOn(fs, 'readFileSync').mockImplementationOnce(func => {
        return mockedReturnValue;
      });
      const changelog = _extractChangelog('0.77.1');
      expect(changelog).toEqual(`## v0.77.1
### Breaking Changes
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change
- [PR #3457](https://github.com/facebook/react-native/pull/3457) - Some other change

#### iOS
- [PR #3436](https://github.com/facebook/react-native/pull/3436) - Some other change
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change

### Fixed
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change

#### iOS
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change`);
    });

    it('does not extract changelog for rc.0', async () => {
      const changelog = _extractChangelog('0.77.0-rc.0');
      expect(changelog).toEqual('');
    });

    it('does not extract changelog for 0.X.0', async () => {
      const changelog = _extractChangelog('0.77.0');
      expect(changelog).toEqual('');
    });
  });

  describe('#_computeBody', () => {
    it('computes body for release when no hermes versions are passed', async () => {
      const version = '0.77.1';
      const changelog = `## v${version}
### Breaking Changes
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change
- [PR #3457](https://github.com/facebook/react-native/pull/3457) - Some other change

#### iOS
- [PR #3436](https://github.com/facebook/react-native/pull/3436) - Some other change
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change`;
      const body = _computeBody(changelog, version);

      expect(body).toEqual(`${changelog}

---

Hermes dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${version}/hermes-ios-${version}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${version}/hermes-ios-${version}-hermes-framework-dSYM-release.tar.gz)

Hermes V1 dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${version}/hermes-ios-${version}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${version}/hermes-ios-${version}-hermes-framework-dSYM-release.tar.gz)

ReactNativeDependencies dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-release.tar.gz)

ReactNative Core dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-release.tar.gz)

---

You can file issues or pick requests against this release [here](https://github.com/reactwg/react-native-releases/issues/new/choose).

---

To help you upgrade to this version, you can use the [Upgrade Helper](https://react-native-community.github.io/upgrade-helper/) ⚛️.

---

View the whole changelog in the [CHANGELOG.md file](https://github.com/facebook/react-native/blob/main/CHANGELOG.md).`);
    });

    it('computes body for release when hermes versions are passed', async () => {
      const version = '0.77.1';
      const hermesVersion = '0.15.0';
      const hermesV1Version = '250829098.0.2';
      const changelog = `## v${version}
### Breaking Changes
- [PR #9012](https://github.com/facebook/react-native/pull/9012) - Some other change

#### Android
- [PR #3456](https://github.com/facebook/react-native/pull/3456) - Some other change
- [PR #3457](https://github.com/facebook/react-native/pull/3457) - Some other change

#### iOS
- [PR #3436](https://github.com/facebook/react-native/pull/3436) - Some other change
- [PR #3437](https://github.com/facebook/react-native/pull/3437) - Some other change`;
      const body = _computeBody(
        changelog,
        version,
        hermesVersion,
        hermesV1Version,
      );

      expect(body).toEqual(`${changelog}

---

Hermes dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesVersion}/hermes-ios-${hermesVersion}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesVersion}/hermes-ios-${hermesVersion}-hermes-framework-dSYM-release.tar.gz)

Hermes V1 dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesV1Version}/hermes-ios-${hermesV1Version}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesV1Version}/hermes-ios-${hermesV1Version}-hermes-framework-dSYM-release.tar.gz)

ReactNativeDependencies dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-release.tar.gz)

ReactNative Core dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-release.tar.gz)

---

You can file issues or pick requests against this release [here](https://github.com/reactwg/react-native-releases/issues/new/choose).

---

To help you upgrade to this version, you can use the [Upgrade Helper](https://react-native-community.github.io/upgrade-helper/) ⚛️.

---

View the whole changelog in the [CHANGELOG.md file](https://github.com/facebook/react-native/blob/main/CHANGELOG.md).`);
    });
  });

  describe('#_createDraftReleaseOnGitHub', () => {
    it('creates a draft release on GitHub', async () => {
      const version = '0.77.1';
      const url = 'https://api.github.com/repos/facebook/react-native/releases';
      const token = 'token';
      const headers = {
        Accept: 'Accept: application/vnd.github+json',
        'X-GitHub-Api-Version': '2022-11-28',
        Authorization: `Bearer ${token}`,
      };
      const body = `Draft release body`;
      const latest = true;
      const fetchBody = JSON.stringify({
        tag_name: `v${version}`,
        name: `${version}`,
        body: body,
        draft: true,
        prerelease: false,
        make_latest: `${latest}`,
      });

      mockFetch.mockReturnValueOnce(
        Promise.resolve({
          status: 201,
          json: () =>
            Promise.resolve({
              id: 1,
              html_url:
                'https://github.com/facebook/react-native/releases/tag/v0.77.1',
            }),
        }),
      );
      const response = await _createDraftReleaseOnGitHub(
        version,
        body,
        latest,
        token,
      );
      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        `https://api.github.com/repos/facebook/react-native/releases`,
        {
          method: 'POST',
          headers: headers,
          body: fetchBody,
        },
      );
      expect(response).toEqual({
        id: 1,
        html_url:
          'https://github.com/facebook/react-native/releases/tag/v0.77.1',
      });
    });

    it('creates a draft release for prerelease on GitHub', async () => {
      const version = '0.77.0-rc.2';
      const url = 'https://api.github.com/repos/facebook/react-native/releases';
      const token = 'token';
      const headers = {
        Accept: 'Accept: application/vnd.github+json',
        'X-GitHub-Api-Version': '2022-11-28',
        Authorization: `Bearer ${token}`,
      };
      const body = `Draft release body`;
      const latest = true;
      const fetchBody = JSON.stringify({
        tag_name: `v${version}`,
        name: `${version}`,
        body: body,
        draft: true,
        prerelease: true,
        make_latest: `${latest}`,
      });

      mockFetch.mockReturnValueOnce(
        Promise.resolve({
          status: 201,
          json: () =>
            Promise.resolve({
              id: 1,
              html_url:
                'https://github.com/facebook/react-native/releases/tag/v0.77.1',
            }),
        }),
      );
      const response = await _createDraftReleaseOnGitHub(
        version,
        body,
        latest,
        token,
      );
      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        `https://api.github.com/repos/facebook/react-native/releases`,
        {
          method: 'POST',
          headers: headers,
          body: fetchBody,
        },
      );
      expect(response).toEqual({
        id: 1,
        html_url:
          'https://github.com/facebook/react-native/releases/tag/v0.77.1',
      });
    });

    it('throws if the post failes', async () => {
      const version = '0.77.0-rc.2';
      const url = 'https://api.github.com/repos/facebook/react-native/releases';
      const token = 'token';
      const headers = {
        Accept: 'Accept: application/vnd.github+json',
        'X-GitHub-Api-Version': '2022-11-28',
        Authorization: `Bearer ${token}`,
      };
      const body = `Draft release body`;
      const latest = true;
      const fetchBody = JSON.stringify({
        tag_name: `v${version}`,
        name: `${version}`,
        body: body,
        draft: true,
        prerelease: true,
        make_latest: `${latest}`,
      });

      mockFetch.mockReturnValueOnce(
        Promise.resolve({
          status: 401,
        }),
      );
      await expect(
        _createDraftReleaseOnGitHub(version, body, latest, token),
      ).rejects.toThrowError();
      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        `https://api.github.com/repos/facebook/react-native/releases`,
        {
          method: 'POST',
          headers: headers,
          body: fetchBody,
        },
      );
    });
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/extractIssueOncalls-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {extractIssueOncalls} = require('../extractIssueOncalls');

const userMap = {
  '@g': '1785',
  '@c': '1781',
  '@s': '1272',
  '@d': '1332',
  '@m': '9555',
  '@p': '6097',
  '@f': '7565',
};

const schedule = {
  '2025-04-01': ['@m', '@f'],
  '2025-04-08': ['@g', '@d'],
};

describe('extractIssueOncalls', () => {
  beforeEach(() => {
    jest.clearAllMocks();
    jest.useFakeTimers('modern');
  });

  afterEach(() => {
    jest.useRealTimers();
  });
  it('extracts m and f on 6 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 6));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@m'], userMap['@f']]);
  });

  it('extracts m and f on 7 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 7));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@m'], userMap['@f']]);
  });

  it('extracts g and d on 8 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 8));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });

  it('extracts g and d on 9 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 9));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });

  it('extracts g and d on 10 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 10));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });

  it('extracts g and d on 11 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 11));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });

  it('extracts g and d on 12 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 12));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });

  it('extracts g and d on 13 of April', () => {
    jest.setSystemTime(new Date(2025, 3, 13));
    const oncalls = extractIssueOncalls(schedule, userMap);
    expect(oncalls).toEqual([userMap['@g'], userMap['@d']]);
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/generateChangelog-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {
  generateChangelog,
  _computePreviousVersionFrom,
  _generateChangelog,
  _pushCommit,
  _createPR,
} = require('../generateChangelog');

const silence = () => {};
const mockGetNpmPackageInfo = jest.fn();
const mockExecSync = jest.fn();
const mockRun = jest.fn();
const mockFetch = jest.fn();
const mockExit = jest.fn();

jest.mock('../utils.js', () => ({
  log: silence,
  run: mockRun,
  getNpmPackageInfo: mockGetNpmPackageInfo,
}));

process.exit = mockExit;
global.fetch = mockFetch;

describe('Generate Changelog', () => {
  beforeEach(jest.clearAllMocks);

  describe('_computePreviousVersionFrom', () => {
    it('returns rc.0 when rc is 1', async () => {
      const currentVersion = '0.78.0-rc.1';
      const expectedVersion = '0.78.0-rc.0';

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toEqual(expectedVersion);
    });

    it('returns previous rc version when rc is > 1', async () => {
      const currentVersion = '0.78.0-rc.5';
      const expectedVersion = '0.78.0-rc.4';

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toEqual(expectedVersion);
    });

    it('returns previous patch version when rc is 0', async () => {
      const currentVersion = '0.78.0-rc.0';
      const expectedVersion = '0.77.1';

      mockGetNpmPackageInfo.mockReturnValueOnce(
        Promise.resolve({version: '0.77.1'}),
      );

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toEqual(expectedVersion);
    });

    it('returns patch 0 when patch is 1', async () => {
      const currentVersion = '0.78.1';
      const expectedVersion = '0.78.0';

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toEqual(expectedVersion);
    });

    it('returns previous patch when patch is > 1', async () => {
      const currentVersion = '0.78.5';
      const expectedVersion = '0.78.4';

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toEqual(expectedVersion);
    });

    it('returns null when patch is 0', async () => {
      const currentVersion = '0.78.0';

      const receivedVersion = await _computePreviousVersionFrom(currentVersion);

      expect(receivedVersion).toBeNull();
    });

    it("throws an error when the version can't be parsed", async () => {
      const currentVersion = '0.78.0-rc0';

      await expect(
        _computePreviousVersionFrom(currentVersion),
      ).rejects.toThrow();
    });
  });

  describe('_generateChangelog', () => {
    it('calls git in the right order', async () => {
      const currentVersion = '0.79.0-rc5';
      const previousVersion = '0.79.0-rc4';
      const token = 'token';

      expectedCommandArgs = [
        '@rnx-kit/rn-changelog-generator',
        '--base',
        `v${previousVersion}`,
        '--compare',
        `v${currentVersion}`,
        '--repo',
        '.',
        '--changelog',
        './CHANGELOG.md',
        '--token',
        `${token}`,
      ];

      _generateChangelog(previousVersion, currentVersion, token);

      expect(mockRun).toHaveBeenCalledTimes(4);
      expect(mockRun).toHaveBeenNthCalledWith(1, 'git checkout main');
      expect(mockRun).toHaveBeenNthCalledWith(2, 'git fetch');
      expect(mockRun).toHaveBeenNthCalledWith(3, 'git pull origin main');
      expect(mockRun).toHaveBeenNthCalledWith(
        4,
        `npx ${expectedCommandArgs.join(' ')}`,
      );
    });
  });

  describe('_pushCommit', () => {
    it('calls git in the right order', async () => {
      const currentVersion = '0.79.0-rc5';

      _pushCommit(currentVersion);

      expect(mockRun).toHaveBeenCalledTimes(4);
      expect(mockRun).toHaveBeenNthCalledWith(
        1,
        `git checkout -b changelog/v${currentVersion}`,
      );
      expect(mockRun).toHaveBeenNthCalledWith(2, 'git add CHANGELOG.md');
      expect(mockRun).toHaveBeenNthCalledWith(
        3,
        `git commit -m "[RN][Changelog] Add changelog for v${currentVersion}"`,
      );
      expect(mockRun).toHaveBeenNthCalledWith(
        4,
        `git push origin changelog/v${currentVersion}`,
      );
    });
  });

  describe('_createPR', () => {
    it('throws error when status is not 201', async () => {
      const currentVersion = '0.79.0-rc5';
      const token = 'token';

      mockFetch.mockReturnValueOnce(Promise.resolve({status: 401}));

      const headers = {
        Accept: 'Accept: application/vnd.github+json',
        'X-GitHub-Api-Version': '2022-11-28',
        Authorization: `Bearer ${token}`,
      };

      const content = `
## Summary
Add Changelog for ${currentVersion}

## Changelog:
[Internal] - Add Changelog for ${currentVersion}

## Test Plan:
N/A`;

      const body = {
        title: `[RN][Changelog] Add changelog for v${currentVersion}`,
        head: `changelog/v${currentVersion}`,
        base: 'main',
        body: content,
      };

      await expect(_createPR(currentVersion, token)).rejects.toThrow();

      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        'https://api.github.com/repos/facebook/react-native/pulls',
        {
          method: 'POST',
          headers: headers,
          body: JSON.stringify(body),
        },
      );
    });
    it('Returns the pr url', async () => {
      const currentVersion = '0.79.0-rc5';
      const token = 'token';
      const expectedPrURL =
        'https://github.com/facebook/react-native/pulls/1234';

      const returnedObject = {
        status: 201,
        json: () => Promise.resolve({html_url: expectedPrURL}),
      };
      mockFetch.mockReturnValueOnce(Promise.resolve(returnedObject));

      const headers = {
        Accept: 'Accept: application/vnd.github+json',
        'X-GitHub-Api-Version': '2022-11-28',
        Authorization: `Bearer ${token}`,
      };

      const content = `
## Summary
Add Changelog for ${currentVersion}

## Changelog:
[Internal] - Add Changelog for ${currentVersion}

## Test Plan:
N/A`;

      const body = {
        title: `[RN][Changelog] Add changelog for v${currentVersion}`,
        head: `changelog/v${currentVersion}`,
        base: 'main',
        body: content,
      };

      const receivedPrURL = await _createPR(currentVersion, token);

      expect(mockFetch).toHaveBeenCalledTimes(1);
      expect(mockFetch).toHaveBeenCalledWith(
        'https://api.github.com/repos/facebook/react-native/pulls',
        {
          method: 'POST',
          headers: headers,
          body: JSON.stringify(body),
        },
      );
      expect(receivedPrURL).toEqual(expectedPrURL);
    });
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/publishTemplate-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {
  publishTemplate,
  verifyPublishedTemplate,
} = require('../publishTemplate');

const mockRun = jest.fn();
const mockSleep = jest.fn();
const mockGetNpmPackageInfo = jest.fn();
const mockVerifyPublishedPackage = jest.fn();
const silence = () => {};

jest.mock('../utils.js', () => ({
  log: silence,
  run: mockRun,
  sleep: mockSleep,
  getNpmPackageInfo: mockGetNpmPackageInfo,
}));

jest.mock('../verifyPublishedPackage.js', () => ({
  verifyPublishedPackage: mockVerifyPublishedPackage,
}));

const getMockGithub = () => ({
  rest: {
    actions: {
      createWorkflowDispatch: jest.fn(),
    },
  },
});

describe('#publishTemplate', () => {
  beforeEach(jest.clearAllMocks);

  it('checks commits for magic #publish-package-to-npm&latest string and sets latest', async () => {
    mockRun.mockReturnValueOnce(`
      The commit message

    #publish-packages-to-npm&latest`);

    const github = getMockGithub();
    await publishTemplate(github, '0.76.0', true);
    expect(github.rest.actions.createWorkflowDispatch).toHaveBeenCalledWith({
      owner: 'react-native-community',
      repo: 'template',
      workflow_id: 'release.yaml',
      ref: '0.76-stable',
      inputs: {
        dry_run: true,
        is_latest_on_npm: true,
        version: '0.76.0',
      },
    });
  });

  it('pubished as is_latest_on_npm = false if missing magic string', async () => {
    mockRun.mockReturnValueOnce(`
      The commit message without magic
    `);

    const github = getMockGithub();
    await publishTemplate(github, '0.76.0', false);
    expect(github.rest.actions.createWorkflowDispatch).toHaveBeenCalledWith({
      owner: 'react-native-community',
      repo: 'template',
      workflow_id: 'release.yaml',
      ref: '0.76-stable',
      inputs: {
        dry_run: false,
        is_latest_on_npm: false,
        version: '0.76.0',
      },
    });
  });
});

describe('#verifyPublishedTemplate', () => {
  beforeEach(jest.clearAllMocks);

  it("waits on npm updating for version and not 'latest'", async () => {
    const NOT_LATEST = false;
    const version = '0.77.0';

    await verifyPublishedTemplate(version, NOT_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
      '@react-native-community/template',
      version,
      null,
      18,
    );
  });

  it('waits on npm updating version and latest tag', async () => {
    const IS_LATEST = true;
    const version = '0.77.0';

    await verifyPublishedTemplate(version, IS_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
      '@react-native-community/template',
      version,
      'latest',
      18,
    );
  });

  describe('retries', () => {
    it('will timeout if npm does not update package version after a set number of retries', async () => {
      const RETRIES = 2;

      (await verifyPublishedTemplate('0.77.0', true, RETRIES),
        expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
          '@react-native-community/template',
          '0.77.0',
          'latest',
          2,
        ));
    });
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/verifyArtifactsAreOnMaven-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {verifyArtifactsAreOnMaven} = require('../verifyArtifactsAreOnMaven');

const mockSleep = jest.fn();
const silence = () => {};
const mockFetch = jest.fn();
const mockExit = jest.fn();

jest.mock('../utils.js', () => ({
  log: silence,
  sleep: mockSleep,
}));

process.exit = mockExit;
global.fetch = mockFetch;

describe('#verifyArtifactsAreOnMaven', () => {
  beforeEach(jest.clearAllMocks);

  it('waits for the packages to be published on maven when version has no v', async () => {
    mockSleep.mockReturnValueOnce(Promise.resolve()).mockImplementation(() => {
      throw new Error('Should not be called again!');
    });
    mockFetch
      .mockReturnValueOnce(Promise.resolve({status: 404}))
      .mockReturnValueOnce(Promise.resolve({status: 200}));

    const version = '0.78.1';
    await verifyArtifactsAreOnMaven(version);

    expect(mockSleep).toHaveBeenCalledTimes(1);
    expect(mockFetch).toHaveBeenCalledWith(
      'https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/0.78.1/react-native-artifacts-0.78.1.pom',
    );
  });

  it('waits for the packages to be published on maven, when version starts with v', async () => {
    mockSleep.mockReturnValueOnce(Promise.resolve()).mockImplementation(() => {
      throw new Error('Should not be called again!');
    });
    mockFetch
      .mockReturnValueOnce(Promise.resolve({status: 404}))
      .mockReturnValueOnce(Promise.resolve({status: 200}));

    const version = 'v0.78.1';
    await verifyArtifactsAreOnMaven(version);

    expect(mockSleep).toHaveBeenCalledTimes(1);
    expect(mockFetch).toHaveBeenCalledWith(
      'https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/0.78.1/react-native-artifacts-0.78.1.pom',
    );
  });

  it('passes immediately if packages are already on Maven', async () => {
    mockFetch.mockReturnValueOnce(Promise.resolve({status: 200}));

    const version = '0.78.1';
    await verifyArtifactsAreOnMaven(version);

    expect(mockSleep).toHaveBeenCalledTimes(0);
    expect(mockFetch).toHaveBeenCalledWith(
      'https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/0.78.1/react-native-artifacts-0.78.1.pom',
    );
  });

  it('tries 90 times and then exits', async () => {
    mockSleep.mockReturnValue(Promise.resolve());
    mockFetch.mockReturnValue(Promise.resolve({status: 404}));

    const version = '0.78.1';
    await verifyArtifactsAreOnMaven(version);

    expect(mockSleep).toHaveBeenCalledTimes(90);
    expect(mockExit).toHaveBeenCalledWith(1);
    expect(mockFetch).toHaveBeenCalledWith(
      'https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/0.78.1/react-native-artifacts-0.78.1.pom',
    );
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/verifyPublishedPackage-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {verifyPublishedPackage} = require('../verifyPublishedPackage');

const mockRun = jest.fn();
const mockSleep = jest.fn();
const mockGetNpmPackageInfo = jest.fn();
const silence = () => {};

const REACT_NATIVE_PACKAGE = 'react-native';

jest.mock('../utils.js', () => ({
  log: silence,
  run: mockRun,
  sleep: mockSleep,
  getNpmPackageInfo: mockGetNpmPackageInfo,
}));

describe('#verifyPublishedPackage', () => {
  beforeEach(jest.clearAllMocks);

  it("waits on npm updating for version and not 'latest'", async () => {
    mockGetNpmPackageInfo
      // template@<version>
      .mockReturnValueOnce(Promise.reject('mock http/404'))
      .mockReturnValueOnce(Promise.resolve());
    mockSleep.mockReturnValueOnce(Promise.resolve()).mockImplementation(() => {
      throw new Error('Should not be called again!');
    });

    const version = '0.78.0';
    await verifyPublishedPackage(REACT_NATIVE_PACKAGE, version, null);

    expect(mockGetNpmPackageInfo).toHaveBeenLastCalledWith(
      REACT_NATIVE_PACKAGE,
      version,
    );
  });

  it('waits on npm updating version and latest tag', async () => {
    const version = '0.78.0';
    mockGetNpmPackageInfo
      // template@latest → unknown tag
      .mockReturnValueOnce(Promise.reject('mock http/404'))
      // template@latest != version → old tag
      .mockReturnValueOnce(Promise.resolve({version: '0.76.5'}))
      // template@latest == version → correct tag
      .mockReturnValueOnce(Promise.resolve({version}));
    mockSleep
      .mockReturnValueOnce(Promise.resolve())
      .mockReturnValueOnce(Promise.resolve())
      .mockImplementation(() => {
        throw new Error('Should not be called again!');
      });

    await verifyPublishedPackage(REACT_NATIVE_PACKAGE, version, 'latest');

    expect(mockGetNpmPackageInfo).toHaveBeenCalledWith(
      REACT_NATIVE_PACKAGE,
      'latest',
    );
  });

  it('waits on npm updating version and next tag', async () => {
    const version = '0.78.0-rc.0';
    mockGetNpmPackageInfo
      // template@latest → unknown tag
      .mockReturnValueOnce(Promise.reject('mock http/404'))
      // template@latest != version → old tag
      .mockReturnValueOnce(Promise.resolve({version: '0.76.5'}))
      // template@latest == version → correct tag
      .mockReturnValueOnce(Promise.resolve({version}));
    mockSleep
      .mockReturnValueOnce(Promise.resolve())
      .mockReturnValueOnce(Promise.resolve())
      .mockImplementation(() => {
        throw new Error('Should not be called again!');
      });
    await verifyPublishedPackage(REACT_NATIVE_PACKAGE, version, 'next');

    expect(mockGetNpmPackageInfo).toHaveBeenCalledWith(
      REACT_NATIVE_PACKAGE,
      'next',
    );
  });

  describe('timeouts', () => {
    let mockProcess;
    beforeEach(() => {
      mockProcess = jest.spyOn(process, 'exit').mockImplementation(code => {
        throw new Error(`process.exit(${code}) called!`);
      });
    });
    afterEach(() => mockProcess.mockRestore());
    it('will timeout if npm does not update package version after a set number of retries', async () => {
      const RETRIES = 2;
      mockGetNpmPackageInfo.mockReturnValue(Promise.reject('mock http/404'));
      mockSleep.mockReturnValue(Promise.resolve());
      await expect(() =>
        verifyPublishedPackage(
          REACT_NATIVE_PACKAGE,
          '0.77.0',
          'latest',
          RETRIES,
        ),
      ).rejects.toThrowError('process.exit(1) called!');
      expect(mockGetNpmPackageInfo).toHaveBeenCalledTimes(RETRIES);
    });

    it('will timeout if npm does not update latest tag after a set number of retries', async () => {
      const RETRIES = 7;
      const IS_LATEST = true;
      mockGetNpmPackageInfo.mockReturnValue(
        Promise.resolve({version: '0.76.5'}),
      );
      mockSleep.mockReturnValue(Promise.resolve());
      await expect(async () => {
        await verifyPublishedPackage(
          REACT_NATIVE_PACKAGE,
          '0.77.0',
          'latest',
          RETRIES,
        );
      }).rejects.toThrowError('process.exit(1) called!');
      expect(mockGetNpmPackageInfo).toHaveBeenCalledTimes(RETRIES);
    });
  });
});


================================================
FILE: .github/workflow-scripts/__tests__/verifyReleaseOnNpm-test.js
================================================
/**
 * 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.
 *
 * @format
 */

const {verifyReleaseOnNpm} = require('../verifyReleaseOnNpm');

const mockVerifyPublishedPackage = jest.fn();
const silence = () => {};

jest.mock('../utils.js', () => ({
  log: silence,
  sleep: silence,
}));

jest.mock('../verifyPublishedPackage.js', () => ({
  verifyPublishedPackage: mockVerifyPublishedPackage,
}));

describe('#verifyReleaseOnNPM', () => {
  beforeEach(jest.clearAllMocks);

  it("waits on npm updating for version and not 'latest'", async () => {
    const NOT_LATEST = false;
    const version = '0.78.0';
    await verifyReleaseOnNpm(version, NOT_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenLastCalledWith(
      'react-native',
      version,
      null,
      18,
    );
  });

  it('waits on npm updating version and latest tag', async () => {
    const IS_LATEST = true;
    const version = '0.78.0';

    await verifyReleaseOnNpm(version, IS_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
      'react-native',
      version,
      'latest',
      18,
    );
  });

  it('waits on npm updating version, not latest and next tag', async () => {
    const IS_LATEST = false;
    const version = '0.78.0-rc.0';

    await verifyReleaseOnNpm(version, IS_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
      'react-native',
      version,
      'next',
      18,
    );
  });

  it('waits on npm updating version, latest and next tag', async () => {
    const IS_LATEST = true;
    const version = '0.78.0-rc.0';

    await verifyReleaseOnNpm(version, IS_LATEST);

    expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
      'react-native',
      version,
      'next',
      18,
    );
  });

  describe('timeouts', () => {
    it('will timeout if npm does not update package version after a set number of retries', async () => {
      const RETRIES = 2;

      (await verifyReleaseOnNpm('0.77.0', true, RETRIES),
        expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
          'react-native',
          '0.77.0',
          'latest',
          2,
        ));
    });

    it('will timeout if npm does not update latest tag after a set number of retries', async () => {
      const RETRIES = 7;
      const IS_LATEST = true;

      await verifyReleaseOnNpm('0.77.0', IS_LATEST, RETRIES);

      expect(mockVerifyPublishedPackage).toHaveBeenCalledWith(
        'react-native',
        '0.77.0',
        'latest',
        7,
      );
    });
  });
});


================================================
FILE: .github/workflow-scripts/actOnLabel.js
================================================
/**
 * 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.
 *
 * @format
 */

module.exports = async (github, context, labelWithContext) => {
  const closeIssue = async () => {
    await github.rest.issues.update({
      issue_number: context.issue.number,
      owner: context.repo.owner,
      repo: context.repo.repo,
      state: 'closed',
    });
  };

  const addComment = async comment => {
    await github.rest.issues.createComment({
      issue_number: context.issue.number,
      owner: context.repo.owner,
      repo: context.repo.repo,
      body: comment,
    });
  };

  const requestAuthorFeedback = async () => {
    // Remove the triage label if it exists (ignore the 404 if not; it's not expected to always be there)
    try {
      await github.rest.issues.removeLabel({
        issue_number: context.issue.number,
        owner: context.repo.owner,
        repo: context.repo.repo,
        name: 'Needs: Triage :mag:',
      });
    } catch {}

    await github.rest.issues.addLabels({
      issue_number: context.issue.number,
      owner: context.repo.owner,
      repo: context.repo.repo,
      labels: ['Needs: Author Feedback'],
    });
  };

  switch (labelWithContext.label) {
    case 'Type: Invalid':
      await addComment(
        `> [!CAUTION]\n` +
          `> **Invalid issue**: This issue is not valid, either is not a bug in React Native, it doesn't match any of the issue template, or we can't help further with this.`,
      );
      await closeIssue();
      return;
    case 'Type: Question':
      await addComment(
        `> [!NOTE]\n` +
          `> **Not a bug report**: This issue looks like a question. We are using GitHub issues exclusively to track bugs in React Native. GitHub may not be the ideal place to ask a question, but you can try asking over on [Stack Overflow](http://stackoverflow.com/questions/tagged/react-native), or on [Reactiflux](https://www.reactiflux.com/).`,
      );
      await closeIssue();
      return;
    case 'Resolution: For Stack Overflow':
      await addComment(
        `> [!NOTE]\n` +
          `> **Not a bug report**: This issue looks like a question. We are using GitHub issues exclusively to track bugs in React Native. GitHub may not be the ideal place to ask a question, but you can try asking over on [Stack Overflow](http://stackoverflow.com/questions/tagged/react-native), or on [Reactiflux](https://www.reactiflux.com/).`,
      );
      await closeIssue();
      return;
    case 'Type: Docs':
      await addComment(
        `> [!NOTE]\n` +
          `> **Docs issue**: This issue looks like an issue related to our docs. Please report documentation issues in the [react-native-website](https://github.com/facebook/react-native-website/issues) repository.`,
      );
      await closeIssue();
      return;
    case 'Type: Expo':
      await addComment(
        `> [!NOTE]\n` +
          `> **Expo related**: It looks like your issue is related to Expo and not React Native core. Please open your issue in [Expo's repository](https://github.com/expo/expo/issues/new). If you are able to create a repro that showcases that this issue is also happening in React Native vanilla, we will be happy to re-open.`,
      );
      await closeIssue();
      return;
    case 'Needs: Issue Template':
      await addComment(
        `> [!WARNING]\n` +
          `> **Missing issue template**: It looks like your issue may be missing some necessary information. GitHub provides an example template whenever a [new issue is created](https://github.com/facebook/react-native/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A&projects=&template=bug_report.yml). Could you go back and make sure to fill out the template? You may edit this issue, or close it and open a new one.`,
      );
      await requestAuthorFeedback();
      return;
    case 'Needs: Environment Info':
      await addComment(
        `> [!WARNING]\n` +
          `> **Missing info**: It looks like your issue may be missing information about your development environment. You can obtain the missing information by running <code>react-native info</code> in a console.`,
      );
      await requestAuthorFeedback();
      return;
    case 'Needs: Version Info':
      await addComment(
        `> [!WARNING]\n` +
          `> **Could not parse version**: We could not find or parse the version number of React Native in your issue report. Please use the template, and report your version including major, minor, and patch numbers - e.g. 0.76.2.`,
      );
      await requestAuthorFeedback();
      return;
    case 'Needs: Repro':
      await addComment(
        `> [!WARNING]\n` +
          `> **Missing reproducer**: We could not detect a reproducible example in your issue report. Reproducers are **mandatory** and we can accept only one of those as a valid reproducer: <br/><ul><li>For majority of bugs: send us a Pull Request with the [RNTesterPlayground.js](https://github.com/facebook/react-native/blob/main/packages/rn-tester/js/examples/Playground/RNTesterPlayground.js) edited to reproduce your bug.</li><li>If your bug is UI related: a [Snack](https://snack.expo.dev)</li><li> If your bug is build/upgrade related: a project using our [Reproducer Template](https://github.com/react-native-community/reproducer-react-native/generate)</li></ul><br/>You can read more about about it on our website: [How to report a bug](https://reactnative.dev/contributing/how-to-report-a-bug).`,
      );
      await requestAuthorFeedback();
      return;
    case 'Type: Unsupported Version':
      await addComment(
        `> [!WARNING]\n` +
          `> **Unsupported version**: It looks like your issue or the example you provided uses an [unsupported version of React Native](https://github.com/reactwg/react-native-releases/blob/main/docs/support.md).<br/><br/>Due to the number of issues we receive, we're currently only accepting new issues against one of the supported versions. Please [upgrade](https://reactnative.dev/docs/upgrading) to latest and verify if the issue persists (alternatively, create a new project and repro the issue in it). If you cannot upgrade, please open your issue on [StackOverflow](https://stackoverflow.com/questions/tagged/react-native) to get further community support.`,
      );
      await requestAuthorFeedback();
      return;
    case 'Type: Too Old Version':
      await addComment(
        `> [!CAUTION]\n` +
          `> **Too old version**: It looks like your issue or the example you provided uses a [**Too Old Version of React Native**](https://github.com/reactwg/react-native-releases/blob/main/docs/support.md).<br/><br/>Due to the number of issues we receive, we're currently only accepting new issues against one of the supported versions. Please [upgrade](https://reactnative.dev/docs/upgrading) to latest and verify if the issue persists (alternatively, create a new project and repro the issue in it). If you cannot upgrade, please open your issue on [StackOverflow](https://stackoverflow.com/questions/tagged/react-native) to get further community support.`,
      );
      await closeIssue();
      return;
    default:
      // No action needed
      return;
  }
};


================================================
FILE: .github/workflow-scripts/addDescriptiveLabels.js
================================================
/**
 * 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.
 *
 * @format
 */

module.exports = async (github, context) => {
  const issue = context.payload.issue;
  const title = issue?.title?.toLowerCase();
  if (!title) return;

  const addLabels = async labelsToAdd => {
    await github.rest.issues.addLabels({
      issue_number: context.issue.number,
      owner: context.repo.owner,
      repo: context.repo.repo,
      labels: labelsToAdd,
    });
  };

  const labelsToAdd = [];
  for (const component of components) {
    if (title.includes(component.toLowerCase())) {
      labelsToAdd.push(`Component: ${component}`);
    }
  }
  for (const api of apis) {
    if (title.includes(api.toLowerCase())) {
      labelsToAdd.push(`API: ${api}`);
    }
  }
  for (const topic of Object.keys(topics)) {
    if (title.includes(topic.toLowerCase())) {
      labelsToAdd.push(topics[topic]);
    }
  }
  if (labelsToAdd.length > 0) {
    await addLabels(labelsToAdd);
  }
};

const labelAndroid = 'Platform: Android';
const labelIos = 'Platform: iOS';
const labelTvos = 'Platform: tvOS';
const labelNetworking = '🌐Networking';
const labelBundler = '📦Bundler';
const labelCli = '💻CLI';
const labelRegression = 'Impact: Regression';

const components = [
  'ActivityIndicator',
  'Button',
  'DatePickerIOS',
  'DrawerLayoutAndroid',
  'FlatList',
  'Image',
  'ImageBackground',
  'InputAccessoryView',
  'KeyboardAvoidingView',
  'ListView',
  'MaskedViewIOS',
  'Modal',
  'NavigatorIOS',
  'Picker',
  'PickerIOS',
  'ProgressBarAndroid',
  'ProgressViewIOS',
  'RefreshControl',
  'SafeAreaView',
  'ScrollView',
  'SectionList',
  'SegmentedControlIOS',
  'Slider',
  'SnapshotViewIOS',
  'StatusBar',
  'Switch',
  'TabBarIOS',
  'TextInput',
  'ToolbarAndroid',
  'TouchableHighlight',
  'TouchableNativeFeedback',
  'TouchableOpacity',
  'TouchableWithoutFeedback',
  'ViewPagerAndroid',
  'VirtualizedList',
  'WebView',
];

const apis = [
  'AccessibilityInfo',
  'ActionSheetIOS',
  'Alert',
  'AlertIOS',
  'Animated',
  'AppRegistry',
  'AppState',
  'AsyncStorage',
  'BackAndroid',
  'BackHandler',
  'CameraRoll',
  'Clipboard',
  'DatePickerAndroid',
  'Dimensions',
  'Easing',
  'Geolocation',
  'ImageEditor',
  'ImagePickerIOS',
  'ImageStore',
  'InteractionManager',
  'Keyboard',
  'LayoutAnimation',
  'Linking',
  'ListViewDataSource',
  'NetInfo',
  'PanResponder',
  'PermissionsAndroid',
  'PixelRatio',
  'PushNotificationIOS',
  'Settings',
  'Share',
  'StatusBarIOS',
  'StyleSheet',
  'Systrace',
  'TimePickerAndroid',
  'ToastAndroid',
  'Transforms',
  'Vibration',
  'VibrationIOS',
];

const topics = {
  Flow: 'Flow',
  'Flow-Strict': 'Flow',
  xhr: labelNetworking,
  netinfo: labelNetworking,
  fetch: labelNetworking,
  okhttp: labelNetworking,
  http: labelNetworking,
  bundle: labelBundler,
  bundling: labelBundler,
  packager: labelBundler,
  'unable to resolve module': labelBundler,
  android: labelAndroid,
  ios: labelIos,
  tvos: labelTvos,
  'react-native-cli': labelCli,
  'react-native upgrade': labelCli,
  'react-native link': labelCli,
  regression: labelRegression,
};


================================================
FILE: .github/workflow-scripts/analyze_scripts.sh
================================================
#!/bin/bash
# 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.

GITHUB_OWNER=-facebook
GITHUB_REPO=-react-native
export GITHUB_OWNER
export GITHUB_REPO

if [ -x "$(command -v shellcheck)" ]; then
  IFS=$'\n'

  find . \
    -type f \
    -not -path "*node_modules*" \
    -not -path "*third-party*" \
    -not -path "*vendor*" \
    -name '*.sh' \
    -exec sh -c 'shellcheck "$1"' -- {} \;

else
  echo 'shellcheck is not installed. See https://github.com/facebook/react-native/wiki/Development-Dependencies#shellcheck for instructions.'
  exit 1
fi


================================================
FILE: .github/workflow-scripts/checkBranchTarget.js
================================================
/**
 * 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.
 *
 * @format
 */

'use strict';

/**
 * Validates that the PR targets an appropriate base branch.
 *
 * @param {string} baseRef - The base branch ref (e.g., 'main', '0.76-stable')
 * @returns {{message: string, status: 'PASS'|'FAIL', shouldAddPickLabel: boolean}}
 */
function checkBranchTarget(baseRef) {
  const isMain = baseRef === 'main';
  const isStable = baseRef.endsWith('-stable');

  let message = '';
  let status = 'PASS';
  if (!isMain && !isStable) {
    status = 'FAIL';
    message = `> [!CAUTION]
> **Invalid Base Branch**
>
> The base branch for this PR is \`${baseRef}\`, which is not \`main\` or a \`-stable\` branch.
> [Are you sure you want to target this branch?](https://reactnative.dev/docs/contributing#pull-requests)`;
  }

  return {
    message,
    status,
    shouldAddPickLabel: isStable,
  };
}

module.exports = checkBranchTarget;


================================================
FILE: .github/workflow-scripts/checkForReproducer.js
================================================
/**
 * 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.
 *
 * @format
 */

const NEEDS_REPRO_LABEL = 'Needs: Repro';
const NEEDS_AUTHOR_FEEDBACK_LABEL = 'Needs: Author Feedback';
const SKIP_ISSUES_OLDER_THAN = '2023-07-01T00:00:00Z';

module.exports = async (github, context) => {
  const issueData = {
    issue_number: context.payload.issue.number,
    owner: context.repo.owner,
    repo: context.repo.repo,
  };

  const issue = await github.rest.issues.get(issueData);
  const comments = await github.rest.issues.listComments(issueData);
  const author = issue.data.user.login;

  const issueDate = issue.data.created_at;
  if (isDateBefore(issueDate, SKIP_ISSUES_OLDER_THAN)) {
    return;
  }

  const maintainerChangedLabel = await hasMaintainerChangedLabel(
    github,
    issueData,
    author,
  );

  if (maintainerChangedLabel) {
    return;
  }

  const entities = [issue.data, ...comments.data];

  // Look for Snack or a GH repo associated with the user that added an issue or comment
  const hasValidReproducer = entities.some(entity => {
    const hasPullRequestRepoLink = containsPattern(
      entity.body,
      `https?:\/\/github\.com\/facebook\/react-native\/pull\/\d+\/?`,
    );

    const hasExpoSnackLink = containsPattern(
      entity.body,
      `https?:\\/\\/snack\\.expo\\.dev\\/[^\\s)\\]]+`,
    );

    const hasGithubRepoLink = containsPattern(
      entity.body,
      `https?:\\/\\/github\\.com\\/(${entity.user.login})\\/[^/]+\\/?\\s?`,
    );
    return hasPullRequestRepoLink || hasExpoSnackLink || hasGithubRepoLink;
  });

  if (hasValidReproducer) {
    try {
      await github.rest.issues.removeLabel({
        ...issueData,
        name: NEEDS_REPRO_LABEL,
      });
    } catch (error) {
      if (!/Label does not exist/.test(error.message)) {
        throw error;
      }
    }
  } else {
    await github.rest.issues.addLabels({
      ...issueData,
      labels: [NEEDS_REPRO_LABEL, NEEDS_AUTHOR_FEEDBACK_LABEL],
    });
  }
};

function containsPattern(body, pattern) {
  const regexp = new RegExp(pattern, 'gm');
  return body.search(regexp) !== -1;
}

// Prevents the bot from responding when maintainer has changed the 'Needs: Repro' label
async function hasMaintainerChangedLabel(github, issueData, author) {
  const timeline = await github.rest.issues.listEventsForTimeline(issueData);

  const labeledEvents = timeline.data.filter(
    event => event.event === 'labeled' || event.event === 'unlabeled',
  );
  const userEvents = labeledEvents.filter(event => event.actor.type !== 'Bot');

  return userEvents.some(
    event =>
      event.actor.login !== author && event.label.name === NEEDS_REPRO_LABEL,
  );
}

function isDateBefore(firstDate, secondDate) {
  const date1 = new Date(firstDate);
  const date2 = new Date(secondDate);

  return date1.getTime() < date2.getTime();
}


================================================
FILE: .github/workflow-scripts/createDraftRelease.js
================================================
/**
 * 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.
 *
 * @format
 */

const {log, run} = require('./utils');
const fs = require('fs');

function _headers(token) {
  return {
    Accept: 'Accept: application/vnd.github+json',
    'X-GitHub-Api-Version': '2022-11-28',
    Authorization: `Bearer ${token}`,
  };
}

function _extractChangelog(version) {
  if (version.endsWith('.0')) {
    // for RC.0 and for the release of a new stable minor, the changelog is too long
    // to be added in a release. The release body is usually something shorter.
    // See for example the release for 0.76.0 or 0.77.0:
    // 0.76: https://github.com/facebook/react-native/releases/tag/v0.76.0
    // 0.77: https://github.com/facebook/react-native/releases/tag/v0.77.0
    return '';
  }
  const changelog = String(fs.readFileSync('CHANGELOG.md', 'utf8')).split('\n');
  const changelogStarts = changelog.indexOf(`## v${version}`);
  let changelogEnds = changelogStarts;
  // Scan the changelog to find the next version
  for (var line = changelogStarts + 1; line < changelog.length; line++) {
    if (changelog[line].startsWith('## ')) {
      changelogEnds = line;
      break;
    }
  }
  return changelog.slice(changelogStarts, changelogEnds).join('\n').trim();
}

function _computeBody(changelog, version, hermesVersion, hermesV1Version) {
  hermesVersion = hermesVersion ?? version;
  hermesV1Version = hermesV1Version ?? version;
  return `${changelog}

---

Hermes dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesVersion}/hermes-ios-${hermesVersion}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesVersion}/hermes-ios-${hermesVersion}-hermes-framework-dSYM-release.tar.gz)

Hermes V1 dSYMS:
- [Debug](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesV1Version}/hermes-ios-${hermesV1Version}-hermes-framework-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/hermes/hermes-ios/${hermesV1Version}/hermes-ios-${hermesV1Version}-hermes-framework-dSYM-release.tar.gz)

ReactNativeDependencies dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-dependencies-dSYM-release.tar.gz)

ReactNative Core dSYMs:
- [Debug](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-debug.tar.gz)
- [Release](https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/${version}/react-native-artifacts-${version}-reactnative-core-release.tar.gz)

---

You can file issues or pick requests against this release [here](https://github.com/reactwg/react-native-releases/issues/new/choose).

---

To help you upgrade to this version, you can use the [Upgrade Helper](https://react-native-community.github.io/upgrade-helper/) ⚛️.

---

View the whole changelog in the [CHANGELOG.md file](https://github.com/facebook/react-native/blob/main/CHANGELOG.md).`;
}

async function _verifyTagExists(version) {
  const url = `https://github.com/facebook/react-native/releases/tag/v${version}`;

  const response = await fetch(url);
  if (response.status === 404) {
    throw new Error(`Tag v${version} does not exist`);
  }
}

async function _createDraftReleaseOnGitHub(version, body, latest, token) {
  const url = 'https://api.github.com/repos/facebook/react-native/releases';
  const method = 'POST';
  const headers = _headers(token);
  const fetchBody = JSON.stringify({
    tag_name: `v${version}`,
    name: `${version}`,
    body: body,
    draft: true, // NEVER CHANGE this value to false. If false, it will publish the release, and send a GH notification to all the subscribers.
    prerelease: version.includes('-rc.') ? true : false,
    make_latest: `${latest}`,
  });

  const response = await fetch(url, {
    method,
    headers,
    body: fetchBody,
  });

  if (response.status !== 201) {
    throw new Error(
      `Failed to create the release: ${response.status} ${response.statusText}`,
    );
  }

  const data = await response.json();
  const {html_url, id} = data;
  return {
    html_url,
    id,
  };
}

function moveToChangelogBranch(version) {
  log(`Moving to changelog branch: changelog/v${version}`);
  run(`git checkout -b changelog/v${version}`);
}

async function createDraftRelease(
  version,
  latest,
  token,
  hermesVersion,
  hermesV1Version,
) {
  if (version.startsWith('v')) {
    version = version.substring(1);
  }

  _verifyTagExists(version);
  moveToChangelogBranch(version);
  const changelog = _extractChangelog(version);
  const body = _computeBody(changelog, version, hermesVersion, hermesV1Version);
  const release = await _createDraftReleaseOnGitHub(
    version,
    body,
    latest,
    token,
  );
  log(`Created draft release: ${release.html_url}, ID ${release.id}`);
  return release;
}

module.exports = {
  createDraftRelease,
  // Exported for testing purposes
  _verifyTagExists,
  _extractChangelog,
  _computeBody,
  _createDraftReleaseOnGitHub,
};


================================================
FILE: .github/workflow-scripts/exec_swallow_error.sh
================================================
#!/bin/bash
# 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.

# execute command
"$@"

# check status
STATUS=$?
if [ $STATUS == 0 ]; then
  echo "Command " "$@" " completed successfully"
else
  echo "Command " "$@" " exited with error status $STATUS"
fi


================================================
FILE: .github/workflow-scripts/extractIssueOncalls.js
================================================
/**
 * 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.
 *
 * @format
 */

const fs = require('fs');

const MSEC_IN_DAY = 1000 * 60 * 60 * 24;

function formatUsers(users) {
  console.log(`${users[0]} ${users[1]}`.trim());
}

function extractUsersFromScheduleAndDate(schedule, userMap, date) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1; // 0 is January, 1 is February
  const day = date.getDate();
  const dateStr = `${year}-${month < 10 ? `0${month}` : month}-${day < 10 ? `0${day}` : day}`;
  const user1 = userMap[schedule[dateStr][0]];
  const user2 = userMap[schedule[dateStr][1]];
  return [user1, user2];
}

/**
 * You can invoke this script by doing:
 * ```
 * node .github/workflow-scripts/extractIssueOncalls.js $DATA
 * ```
 *
 * the $DATA is stored in the github secrets as ONCALL_SCHEDULE variable.
 * The format of the data is:
 * ```
 * {
 *   \"userMap\": {
 *     \"discord_handle1\": \"discord_id1\",
 *     \"discord_handle2\": \"discord_id2\",
 *    ...
 *  },
 *  \"schedule\": {
 *    \"2025-07-29\": [\"discord_handle1\", \"discord_handle2\"],
 *    \"2025-08-05\": [\"discord_handle3\", \"discord_handle4\"],
 *   ...
 * }
 * ```
 *
 * When uploading the secret, make sure that the JSON strings are escaped!
 * The script will fail otherwise, because GitHub will remove the `"` characters.
 */
function main() {
  const configuration = process.argv[2];
  const {userMap, schedule} = JSON.parse(configuration);
  extractIssueOncalls(schedule, userMap);
}

function extractIssueOncalls(schedule, userMap) {
  const now = new Date();
  const dayOfTheWeek = now.getDay(); // 0 is Sunday, 1 is Monday, etc.
  let users;
  if (dayOfTheWeek === 2) {
    // exact match in the schedule
    users = extractUsersFromScheduleAndDate(schedule, userMap, now);
  } else if (dayOfTheWeek < 2) {
    // sunday
    // go to the tuesday of the last week
    const lastWeekTuesday = new Date(now - (5 + dayOfTheWeek) * MSEC_IN_DAY);
    users = extractUsersFromScheduleAndDate(schedule, userMap, lastWeekTuesday);
  } else if (dayOfTheWeek > 1) {
    // go to the previous tuesday
    const thisWeekTuesday = new Date(now - (dayOfTheWeek - 2) * MSEC_IN_DAY);
    users = extractUsersFromScheduleAndDate(schedule, userMap, thisWeekTuesday);
  }
  formatUsers(users);
  return users;
}

if (require.main === module) {
  void main();
}

module.exports = {
  extractIssueOncalls,
};


================================================
FILE: .github/workflow-scripts/generateChangelog.js
================================================
/**
 * 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.
 *
 * @format
 */

const {log, getNpmPackageInfo, run} = require('./utils');

async function _computePreviousVersionFrom(version) {
  log(`Computing previous version from: ${version}`);
  const regex = /^0\.(\d+)\.(\d+)(-rc\.(\d+))?$/;
  const match = version.match(regex);
  if (!match) {
    throw new Error(`Invalid version format: ${version}`);
  }

  const minor = match[1];
  const patch = match[2];
  const rc = match[4];

  if (rc) {
    if (Number(rc) > 0) {
      return `0.${minor}.${patch}-rc.${Number(rc) - 1}`;
    }
    //fetch latest version on NPM
    const latestPkg = await getNpmPackageInfo('react-native', 'latest');
    return latestPkg.version;
  } else {
    if (Number(patch) === 0) {
      // No need to generate the changelog for 0.X.0 as we already generated it from RCs
      log(
        `Skipping changelog generation for ${version} as we already have it from the RCs`,
      );
      return null;
    }
    return `0.${minor}.${Number(patch) - 1}`;
  }
}

function _generateChangelog(previousVersion, version, token) {
  log(`Generating changelog for ${version} from ${previousVersion}`);
  run('git checkout main');
  run('git fetch');
  run('git pull origin main');
  const generateChangelogCommand = `npx @rnx-kit/rn-changelog-generator --base v${previousVersion} --compare v${version} --repo . --changelog ./CHANGELOG.md --token ${token}`;
  run(generateChangelogCommand);
}

function _pushCommit(version) {
  log(`Pushing commit to changelog/v${version}`);
  run(`git checkout -b changelog/v${version}`);
  run('git add CHANGELOG.md');
  run(`git commit -m "[RN][Changelog] Add changelog for v${version}"`);
  run(`git push origin changelog/v${version}`);
}

async function _createPR(version, token) {
  log('Creating changelog pr');
  const url = 'https://api.github.com/repos/facebook/react-native/pulls';
  const body = `
## Summary
Add Changelog for ${version}

## Changelog:
[Internal] - Add Changelog for ${version}

## Test Plan:
N/A`;

  const response = await fetch(url, {
    method: 'POST',
    headers: {
      Accept: 'Accept: application/vnd.github+json',
      'X-GitHub-Api-Version': '2022-11-28',
      Authorization: `Bearer ${token}`,
    },
    body: JSON.stringify({
      title: `[RN][Changelog] Add changelog for v${version}`,
      head: `changelog/v${version}`,
      base: 'main',
      body: body,
    }),
  });

  if (response.status !== 201) {
    throw new Error(
      `Failed to create PR: ${response.status} ${response.statusText}`,
    );
  }

  const data = await response.json();
  return data.html_url;
}

async function generateChangelog(version, token) {
  if (version.startsWith('v')) {
    version = version.substring(1);
  }

  const previousVersion = await _computePreviousVersionFrom(version);
  if (previousVersion) {
    log(`Previous version is ${previousVersion}`);
    _generateChangelog(previousVersion, version, token);
    _pushCommit(version);
    const prURL = await _createPR(version, token);
    log(`Created PR: ${prURL}`);
  }
}

module.exports = {
  generateChangelog,
  // Exported only for testing purposes:
  _computePreviousVersionFrom,
  _generateChangelog,
  _pushCommit,
  _createPR,
};


================================================
FILE: .github/workflow-scripts/hermes-v1.patch
================================================
diff --git a/android/settings.gradle b/android/settings.gradle
index 63b5d4e..6359ec3 100644
--- a/android/settings.gradle
+++ b/android/settings.gradle
@@ -4,3 +4,11 @@ extensions.configure(com.facebook.react.ReactSettingsExtension){ ex -> ex.autoli
 rootProject.name = 'RNApp'
 include ':app'
 includeBuild('../node_modules/@react-native/gradle-plugin')
+
+includeBuild('../node_modules/react-native') {
+  dependencySubstitution {
+    substitute(module("com.facebook.react:react-android")).using(project(":packages:react-native:ReactAndroid"))
+    substitute(module("com.facebook.react:react-native")).using(project(":packages:react-native:ReactAndroid"))
+    substitute(project(":packages:react-native:ReactAndroid:hermes-engine")).using(module("com.facebook.hermes:hermes-android:$HERMES_V1_VERSION"))
+  }
+}
diff --git a/package.json b/package.json
index f05d51b..69938af 100644
--- a/package.json
+++ b/package.json
@@ -35,6 +35,9 @@
     "react-test-renderer": "19.2.0",
     "typescript": "^5.8.3"
   },
+  "resolutions": {
+    "hermes-compiler": "$HERMES_V1_VERSION"
+  },
   "engines": {
     "node": ">=20"
   }


================================================
FILE: .github/workflow-scripts/lint_files.sh
================================================
#!/bin/bash
# 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.

set -e

if git ls-files | grep -E '\.npmignore$'; then
  echo "Error: Found unexpected .npmignore file(s). Please use package.json#files instead."
  exit 1
fi


================================================
FILE: .github/workflow-scripts/maestro-android.js
================================================
/**
 * 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.
 *
 * @format
 */

const childProcess = require('child_process');
const fs = require('fs');

const usage = `
=== Usage ===
node maestro-android.js <path to app> <app_id> <maestro_flow> <flavor> <working_directory>

@param {string} appPath - Path to the app APK
@param {string} appId - App ID that needs to be launched
@param {string} maestroFlow - Path to the maestro flow to be executed
@param {string} flavor - Flavor of the app to be launched. Can be 'release' or 'debug'
@param {string} workingDirectory - Working directory from where to run Metro
==============
`;

const args = process.argv.slice(2);

if (args.length !== 5) {
  throw new Error(`Invalid number of arguments.\n${usage}`);
}

const APP_PATH = args[0];
const APP_ID = args[1];
const MAESTRO_FLOW = args[2];
const IS_DEBUG = args[3] === 'debug';
const WORKING_DIRECTORY = args[4];

const MAX_ATTEMPTS = 3;

async function executeFlowWithRetries(flow, currentAttempt) {
  try {
    console.info(`Executing flow: ${flow}`);
    const timeout = 1000 * 60 * 10; // 10 minutes
    childProcess.execSync(
      `MAESTRO_DRIVER_STARTUP_TIMEOUT=120000 $HOME/.maestro/bin/maestro test ${flow} --format junit -e APP_ID=${APP_ID} --debug-output /tmp/MaestroLogs`,
      {stdio: 'inherit', timeout},
    );
  } catch (err) {
    if (currentAttempt < MAX_ATTEMPTS) {
      console.info(`Retrying...`);
      await executeFlowWithRetries(flow, currentAttempt + 1);
    } else {
      throw err;
    }
  }
}

async function executeFlowInFolder(flowFolder) {
  const files = fs.readdirSync(flowFolder);
  for (const file of files) {
    const filePath = `${flowFolder}/${file}`;
    if (fs.lstatSync(filePath).isDirectory()) {
      await executeFlowInFolder(filePath);
    } else {
      await executeFlowWithRetries(filePath, 0);
    }
  }
}

async function main() {
  console.info('\n==============================');
  console.info('Running tests for Android with the following parameters:');
  console.info(`APP_PATH: ${APP_PATH}`);
  console.info(`APP_ID: ${APP_ID}`);
  console.info(`MAESTRO_FLOW: ${MAESTRO_FLOW}`);
  console.info(`IS_DEBUG: ${IS_DEBUG}`);
  console.info(`WORKING_DIRECTORY: ${WORKING_DIRECTORY}`);
  console.info('==============================\n');

  console.info('Install app');
  childProcess.execSync(`adb install ${APP_PATH}`, {stdio: 'ignore'});

  let metroProcess = null;
  if (IS_DEBUG) {
    console.info('Start Metro');
    childProcess.execSync(`cd ${WORKING_DIRECTORY}`, {stdio: 'ignore'});
    metroProcess = childProcess.spawn('yarn', ['start', '&'], {
      cwd: WORKING_DIRECTORY,
      stdio: 'ignore',
      detached: true,
    });
    metroProcess.unref();
    console.info(`- Metro PID: ${metroProcess.pid}`);

    console.info('Wait For Metro to Start');
    await sleep(5000);
  }

  console.info('Start the app');
  childProcess.execSync(`adb shell monkey -p ${APP_ID} 1`, {stdio: 'ignore'});

  if (IS_DEBUG) {
    console.info('Wait For App to warm from Metro');
    await sleep(10000);
  }

  console.info('Start recording to /sdcard/screen.mp4');
  childProcess
    .exec('adb shell screenrecord /sdcard/screen.mp4', {
      stdio: 'ignore',
      detached: true,
    })
    .unref();

  console.info(`Start testing ${MAESTRO_FLOW}`);
  let error = null;
  try {
    //check if MAESTRO_FLOW is a folder
    if (
      fs.existsSync(MAESTRO_FLOW) &&
      fs.lstatSync(MAESTRO_FLOW).isDirectory()
    ) {
      await executeFlowInFolder(MAESTRO_FLOW);
    } else {
      await executeFlowWithRetries(MAESTRO_FLOW, 0);
    }
  } catch (err) {
    error = err;
  } finally {
    console.info('Stop recording');
    childProcess.execSync('adb pull /sdcard/screen.mp4', {stdio: 'ignore'});

    if (IS_DEBUG && metroProcess != null) {
      const pid = metroProcess.pid;
      console.info(`Kill Metro. PID: ${pid}`);
      process.kill(pid);
      console.info(`Metro Killed`);
    }
  }

  if (error) {
    throw error;
  }
  process.exit();
}

function sleep(ms) {
  return new Promise(resolve => {
    setTimeout(resolve, ms);
  });
}

main();


================================================
FILE: .github/workflow-scripts/maestro-ios.js
================================================
/**
 * 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.
 *
 * @format
 */

const childProcess = require('child_process');
const fs = require('fs');

const usage = `
=== Usage ===
node maestro-android.js <path to app> <app_id> <maestro_flow> <flavor> <working_directory>

@param {string} appPath - Path to the app APK
@param {string} appId - App ID that needs to be launched
@param {string} maestroFlow - Path to the maestro flow to be executed
@param {string} jsengine - The JSEngine to use for the test
@param {string} flavor - Flavor of the app to be launched. Can be 'Release' or 'Debug'
@param {string} workingDirectory - Working directory from where to run Metro
==============
`;

const args = process.argv.slice(2);

if (args.length !== 6) {
  throw new Error(`Invalid number of arguments.\n${usage}`);
}

const APP_PATH = args[0];
const APP_ID = args[1];
const MAESTRO_FLOW = args[2];
const JS_ENGINE = args[3];
const IS_DEBUG = args[4] === 'Debug';
const WORKING_DIRECTORY = args[5];

const MAX_ATTEMPTS = 5;

function launchSimulator(simulatorName) {
  console.log(`Launching simulator ${simulatorName}`);
  try {
    childProcess.execSync(`xcrun simctl boot "${simulatorName}"`);
  } catch (error) {
    if (
      !error.message.includes('Unable to boot device in current state: Booted')
    ) {
      throw error;
    }
  }
}

function installAppOnSimulator(appPath) {
  console.log(`Installing app at path ${appPath}`);
  childProcess.execSync(`xcrun simctl install booted "${appPath}"`);
}

function extractSimulatorUDID() {
  console.log('Retrieving device UDID');
  const command = `xcrun simctl list devices booted -j | jq -r '[.devices[]] | add | first | .udid'`;
  const udid = String(childProcess.execSync(command)).trim();
  console.log(`UDID is ${udid}`);
  return udid;
}

function bringSimulatorInForeground() {
  console.log('Bringing simulator in foreground');
  childProcess.execSync('open -a simulator');
}

function sleep(ms) {
  return new Promise(resolve => {
    setTimeout(resolve, ms);
  });
}

async function launchAppOnSimulator(appId, udid, isDebug) {
  console.log('Launch the app');
  childProcess.execSync(`xcrun simctl launch "${udid}" "${appId}"`);

  if (isDebug) {
    console.log('Wait for metro to warm');
    await sleep(20 * 1000);
  }
}

function startVideoRecording(jsengine, currentAttempt) {
  console.log(
    `Start video record using pid: video_record_${currentAttempt}.pid`,
  );

  const recordingArgs =
    `simctl io booted recordVideo video_record_${currentAttempt}.mov`.split(
      ' ',
    );
  const recordingProcess = childProcess.spawn('xcrun', recordingArgs, {
    detached: true,
    stdio: 'ignore',
  });

  return recordingProcess;
}

function stopVideoRecording(recordingProcess) {
  if (!recordingProcess) {
    console.log("Passed a null recording process. Can't kill it");
    return;
  }

  console.log(`Stop video record using pid: ${recordingProcess.pid}`);

  recordingProcess.kill('SIGINT');
}

function executeTestsWithRetries(
  appId,
  udid,
  maestroFlow,
  jsengine,
  currentAttempt,
) {
  const recProcess = startVideoRecording(jsengine, currentAttempt);
  try {
    const timeout = 1000 * 60 * 10; // 10 minutes
    const command = `$HOME/.maestro/bin/maestro --udid="${udid}" test "${maestroFlow}" --format junit -e APP_ID="${appId}"`;
    console.log(command);
    childProcess.execSync(`MAESTRO_DRIVER_STARTUP_TIMEOUT=1500000 ${command}`, {
      stdio: 'inherit',
      timeout,
    });

    stopVideoRecording(recProcess);
  } catch (error) {
    // Can't put this in the finally block because it will be executed after the
    // recursive call of executeTestsWithRetries
    stopVideoRecording(recProcess);

    if (currentAttempt < MAX_ATTEMPTS) {
      executeTestsWithRetries(
        appId,
        udid,
        maestroFlow,
        jsengine,
        currentAttempt + 1,
      );
    } else {
      console.error(`Failed to execute flow after ${MAX_ATTEMPTS} attempts.`);
      throw error;
    }
  }
}

async function main() {
  console.info('\n==============================');
  console.info('Running tests for iOS with the following parameters:');
  console.info(`APP_PATH: ${APP_PATH}`);
  console.info(`APP_ID: ${APP_ID}`);
  console.info(`MAESTRO_FLOW: ${MAESTRO_FLOW}`);
  console.info(`JS_ENGINE: ${JS_ENGINE}`);
  console.info(`IS_DEBUG: ${IS_DEBUG}`);
  console.info(`WORKING_DIRECTORY: ${WORKING_DIRECTORY}`);
  console.info('==============================\n');

  const simulatorName = 'iPhone 16 Pro';
  launchSimulator(simulatorName);
  installAppOnSimulator(APP_PATH);
  const udid = extractSimulatorUDID();
  bringSimulatorInForeground();
  await launchAppOnSimulator(APP_ID, udid, IS_DEBUG);
  executeTestsWithRetries(APP_ID, udid, MAESTRO_FLOW, JS_ENGINE, 1);
  console.log('Test finished');
  process.exit(0);
}

main();


================================================
FILE: .github/workflow-scripts/publishTemplate.js
================================================
/**
 * 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.
 *
 * @format
 */

const {run, sleep, log} = require('./utils.js');
const {verifyPublishedPackage} = require('./verifyPublishedPackage.js');

const TAG_AS_LATEST_REGEX = /#publish-packages-to-npm&latest/;

/**
 * Should this commit be `latest` on npm?
 */
function isLatest() {
  const commitMessage = run('git log -n1 --pretty=%B');
  return TAG_AS_LATEST_REGEX.test(commitMessage);
}
module.exports.isLatest = isLatest;

/**
 * Create a Github Action to publish the community template matching the released version
 * of React Native.
 */
module.exports.publishTemplate = async (github, version, dryRun = true) => {
  log(`📤 Get the ${TEMPLATE_NPM_PKG} repo to publish ${version}`);

  const is_latest_on_npm = isLatest();

  const majorMinor = /^v?(\d+\.\d+)/.exec(version);

  if (!majorMinor) {
    log(`🔥 can't capture MAJOR.MINOR from '${version}', giving up.`);
    process.exit(1);
  }

  // MAJOR.MINOR-stable
  const ref = `${majorMinor[1]}-stable`;

  await github.rest.actions.createWorkflowDispatch({
    owner: 'react-native-community',
    repo: 'template',
    workflow_id: 'release.yaml',
    ref,
    inputs: {
      dry_run: dryRun,
      is_latest_on_npm,
      // 0.75.0-rc.0, note no 'v' prefix
      version: version.replace(/^v/, ''),
    },
  });
};

const MAX_RETRIES = 3 * 6; // 18 attempts. Waiting between attempt: 10 s. Total time: 3 mins.
const TEMPLATE_NPM_PKG = '@react-native-community/template';

/**
 * Will verify that @latest and the @<version> have been published.
 *
 * NOTE: This will infinitely query each step until successful, make sure the
 *       calling job has a timeout.
 */
module.exports.verifyPublishedTemplate = async (
  version,
  latest = false,
  retries = MAX_RETRIES,
) => {
  try {
    if (version.startsWith('v')) {
      version = version.slice(1);
    }
    await verifyPublishedPackage(
      TEMPLATE_NPM_PKG,
      version,
      latest ? 'latest' : null,
      retries,
    );
  } catch (e) {
    console.error(e.message);
    process.exit(1);
  }
};


================================================
FILE: .github/workflow-scripts/selectLatestHermesV1Version.js
================================================
/**
 * 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.
 */

const { execSync } = require('child_process');
const fs = require('fs');
const path = require('path');

const PATCH_FILE_PATH = path.join(__dirname, 'hermes-v1.patch');

function getLatestHermesV1Version() {
  const npmString = "npm view hermes-compiler@latest-v1 version";

  try {
    const result = execSync(npmString, { stdio: ['ignore', 'pipe', 'ignore'] }).toString().trim();
    return result;
  } catch (error) {
    throw new Error(`Failed to get package version for hermes-compiler@latest-v1`);
  }
}

function setHermesV1VersionInPatch(version) {
  if (!fs.existsSync(PATCH_FILE_PATH)) {
    throw new Error(`Patch file not found at path: ${PATCH_FILE_PATH}`);
  }

  let patchContent = fs.readFileSync(PATCH_FILE_PATH, 'utf8');
  const updatedContent = patchContent.replaceAll(
    "$HERMES_V1_VERSION",
    version
  );
  fs.writeFileSync(PATCH_FILE_PATH, updatedContent, 'utf8');
}

setHermesV1VersionInPatch(getLatestHermesV1Version());


================================================
FILE: .github/workflow-scripts/utils.js
================================================
/**
 * 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.
 *
 * @format
 */

const {execSync} = require('child_process');

const log = (...args) => console.log(...args);

async function getNpmPackageInfo(pkg, versionOrTag) {
  return fetch(`https://registry.npmjs.org/${pkg}/${versionOrTag}`).then(resp =>
    resp.json(),
  );
}

async function sleep(seconds) {
  return new Promise(resolve => setTimeout(resolve, seconds * 1000));
}

function run(cmd) {
  return execSync(cmd, 'utf8').toString().trim();
}

module.exports = {
  log,
  getNpmPackageInfo,
  sleep,
  run,
};


================================================
FILE: .github/workflow-scripts/validatePRBody.js
================================================
/**
 * 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.
 *
 * @format
 */

'use strict';

const changelogRegex =
  /\[\s?(ANDROID|GENERAL|IOS|INTERNAL)\s?\]\s?\[\s?(BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY)\s?\]\s*?-?\s*?(.*)/i;

const internalChangelogRegex = /\[\s?(INTERNAL)\s?\].*/gi;

function validateChangelog(commitMsg) {
  if (!commitMsg.toLowerCase().includes('changelog:')) {
    return 'missing';
  }
  const hasValidChangelog = changelogRegex.test(commitMsg);
  const hasValidInternalChangelog = internalChangelogRegex.test(commitMsg);

  if (hasValidChangelog || hasValidInternalChangelog) {
    return 'valid';
  }

  return 'invalid';
}

function validatePRBody(prBody) {
  const body = prBody ?? '';
  const bodyLower = body.toLowerCase();
  const isFromPhabricator = bodyLower.includes('differential revision:');

  const messages = [];
  let hasFail = false;

  function addWarning(title, text) {
    messages.push(`> [!WARNING]
> **${title}**
>
> ${text}`);
  }

  function addFail(title, text) {
    hasFail = true;
    messages.push(`> [!CAUTION]
> **${title}**
>
> ${text}`);
  }

  if (!body || body.length < 50) {
    addFail('Missing Description', 'This pull request needs a description.');
  } else {
    const hasSummary =
      bodyLower.includes('## summary') || bodyLower.includes('summary:');
    if (!hasSummary && body.split('\n').length <= 2 && !isFromPhabricator) {
      addWarning(
        'Missing Summary',
        'Please add a "## Summary" section to your PR description. This is a good place to explain the motivation for making this change.',
      );
    }
  }

  if (!isFromPhabricator) {
    const hasTestPlan = ['## test plan', 'test plan:', 'tests:', 'test:'].some(
      t => bodyLower.includes(t),
    );
    if (!hasTestPlan) {
      addWarning(
        'Missing Test Plan',
        'Please add a "## Test Plan" section to your PR description. A Test Plan lets us know how these changes were tested.',
      );
    }
  }

  if (!isFromPhabricator) {
    const status = validateChangelog(body);
    const link =
      'https://reactnative.dev/contributing/changelogs-in-pull-requests';
    if (status === 'missing') {
      addFail(
        'Missing Changelog',
        `Please add a Changelog to your PR description. See [Changelog format](${link})`,
      );
    } else if (status === 'invalid') {
      addFail(
        'Invalid Changelog Format',
        `Please verify your Changelog format. See [Changelog format](${link})`,
      );
    }
  }

  return {
    message: messages.join('\n\n'),
    status: hasFail ? 'FAIL' : 'PASS',
  };
}

module.exports = validatePRBody;


================================================
FILE: .github/workflow-scripts/verifyArtifactsAreOnMaven.js
================================================
/**
 * 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.
 *
 * @format
 */

const {log, sleep} = require('./utils');

const SLEEP_S = 60; // 1 minute
const MAX_RETRIES = 90; // 90 attempts. Waiting between attempt: 1 min. Total time: 90 min.
const ARTIFACT_URL =
  'https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/';
const ARTIFACT_NAME = 'react-native-artifacts-';

async function verifyArtifactsAreOnMaven(version, retries = MAX_RETRIES) {
  if (version.startsWith('v')) {
    version = version.substring(1);
  }

  const artifactUrl = `${ARTIFACT_URL}${version}/${ARTIFACT_NAME}${version}.pom`;
  for (let currentAttempt = 1; currentAttempt <= retries; currentAttempt++) {
    const response = await fetch(artifactUrl);

    if (response.status !== 200) {
      log(
        `${currentAttempt}) Artifact's for version ${version} are not on maven yet.\nURL: ${artifactUrl}\nLet's wait a minute and try again.\n`,
      );
      await sleep(SLEEP_S);
    } else {
      return;
    }
  }

  log(
    `We waited 90 minutes for the artifacts to be on Maven. Check https://status.maven.org/ if there are issues wth the service.`,
  );
  process.exit(1);
}

module.exports = {verifyArtifactsAreOnMaven};


================================================
FILE: .github/workflow-scripts/verifyPublishedPackage.js
================================================
/**
 * 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.
 *
 * @format
 */

const {log, getNpmPackageInfo, sleep} = require('./utils');

const SLEEP_S = 10;
const MAX_RETRIES = 3 * 6; // 18 attempts. Waiting between attempt: 10 s. Total time: 3 mins.

async function verifyPublishedPackage(
  packageName,
  version,
  tag = null,
  retries = MAX_RETRIES,
) {
  log(`🔍 Is ${packageName}@${version} on npm?`);

  let count = retries;
  while (count-- > 0) {
    try {
      const json = await getNpmPackageInfo(packageName, tag ? tag : version);
      log(`🎉 Found ${packageName}@${version} on npm`);
      if (!tag) {
        return;
      }

      // check for next tag
      if (tag === 'next' && json.version === version) {
        log(`🎉 ${packageName}@next → ${version} on npm`);
        return;
      }

      // Check for latest tag
      if (tag === 'latest' && json.version === version) {
        log(`🎉 ${packageName}@latest → ${version} on npm`);
        return;
      }

      log(
        `🐌 ${packageName}@${tag} → ${json.version} on npm and not ${version} as expected, retrying...`,
      );
    } catch (e) {
      log(`Nope, fetch failed: ${e.message}`);
    }
    await sleep(SLEEP_S);
  }

  let msg = `🚨 Timed out when trying to verify ${packageName}@${version} on npm`;
  if (tag) {
    msg += ` and ${tag} tag points to this version.`;
  }
  log(msg);
  process.exit(1);
}

module.exports = {
  verifyPublishedPackage,
};


================================================
FILE: .github/workflow-scripts/verifyReleaseOnNpm.js
================================================
/**
 * 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.
 *
 * @format
 */

const {run, sleep, log} = require('./utils.js');
const {verifyPublishedPackage} = require('./verifyPublishedPackage.js');
const REACT_NATIVE_NPM_PKG = 'react-native';
const MAX_RETRIES = 3 * 6; // 18 attempts. Waiting between attempt: 10 s. Total time: 3 mins.
/**
 * Will verify that @latest, @next and the @<version> have been published.
 *
 * NOTE: This will infinitely query each step until successful, make sure the
 *       calling job has a timeout.
 */
module.exports.verifyReleaseOnNpm = async (
  version,
  latest = false,
  retries = MAX_RETRIES,
) => {
  const tag = version.includes('-rc.') ? 'next' : latest ? 'latest' : null;
  if (version.startsWith('v')) {
    version = version.slice(1);
  }
  await verifyPublishedPackage(REACT_NATIVE_NPM_PKG, version, tag, retries);
};


================================================
FILE: .github/workflow-scripts/verifyVersion.js
================================================
/**
 * 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.
 *
 * @format
 */

module.exports = async (github, context) => {
  const issue = context.payload.issue;

  const issueVersionUnparsed =
    getReactNativeVersionFromIssueBodyIfExists(issue);
  const issueVersion = parseVersionFromString(issueVersionUnparsed);

  // Nightly versions are always supported
  if (reportedVersionIsNightly(issueVersionUnparsed, issueVersion)) return;

  if (!issueVersion) {
    return {label: 'Needs: Version Info'};
  }

  // Ensure the version matches one we support
  const recentReleases = (
    await github.rest.repos.listReleases({
      owner: context.repo.owner,
      repo: context.repo.repo,
    })
  ).data.map(release => release.name);

  const latestRelease = (
    await github.rest.repos.getLatestRelease({
      owner: context.repo.owner,
      repo: context.repo.repo,
    })
  ).data;
  const latestVersion = parseVersionFromString(latestRelease.name);

  // We want to "insta-close" an issue if RN version provided is too old. And encourage users to upgrade.
  if (isVersionTooOld(issueVersion, latestVersion)) {
    return {label: 'Type: Too Old Version'};
  }

  if (!isVersionSupported(issueVersion, latestVersion)) {
    return {label: 'Type: Unsupported Version'};
  }
};

/**
 * Check if the RN version provided in an issue is supported.
 *
 * "We support `N-2` minor versions, and the `latest` major".
 */
function isVersionSupported(actualVersion, latestVersion) {
  return (
    actualVersion.major >= latestVersion.major &&
    actualVersion.minor >= latestVersion.minor - 2
  );
}

/**
 * Check if the RN version provided in an issue is too old.
 * "We support `N-2` minor versions, and the `latest` major".
 *
 * A RN version is *too old* if it's:
 * - `1` or more *major* behind the *latest major*.
 * - `5` or more *minor* behind the *latest minor* in the *same major*. Less aggressive.
 *   (e.g. If `0.72.0` is the current latest then `0.67.0` and lower is too old for `0.72.0`)
 */
function isVersionTooOld(actualVersion, latestVersion) {
  return (
    latestVersion.major - actualVersion.major >= 1 ||
    latestVersion.minor - actualVersion.minor >= 5
  );
}

function getReactNativeVersionFromIssueBodyIfExists(issue) {
  if (!issue || !issue.body) return;
  const rnVersionRegex = /React Native Version[\r\n]+(?<version>.+)[\r\n]*/;
  const rnVersionMatch = issue.body.match(rnVersionRegex);
  if (!rnVersionMatch || !rnVersionMatch.groups.version) return;
  return rnVersionMatch.groups.version;
}

function reportedVersionIsNightly(unparsedVersionString, version) {
  if (!unparsedVersionString && !version) return false;
  const nightlyRegex = /nightly/i;
  const nightlyMatch = unparsedVersionString.match(nightlyRegex);
  const versionIsNightly = nightlyMatch && nightlyMatch[0];

  const versionIsZero =
    version && version.major == 0 && version.minor == 0 && version.patch == 0;

  return versionIsZero || versionIsNightly;
}

function parseVersionFromString(version) {
  if (!version) return;
  // This will match the standard x.x.x semver format, as well as the non-standard prerelease x.x.x-rc.x
  const semverRegex =
    /(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)(-[rR]{1}[cC]{1}\.(?<prerelease>\d+))?/;
  const versionMatch = version.match(semverRegex);
  if (!versionMatch) return;
  const {major, minor, patch, prerelease} = versionMatch.groups;
  return {
    major: parseInt(major),
    minor: parseInt(minor),
    patch: parseInt(patch),
    prerelease: parseInt(prerelease),
  };
}


================================================
FILE: .github/workflows/analyze-pr.yml
================================================
name: Analyze Pull Request

on:
  pull_request_target:
    types: [opened, edited, reopened, synchronize]

permissions:
  pull-requests: write
  issues: write

jobs:
  analyze_pr:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - name: Check out main branch
        uses: actions/checkout@v6
      - name: Setup Node.js
        uses: ./.github/actions/setup-node
      - name: Run yarn install
        uses: ./.github/actions/yarn-install
      - name: Check PR body
        id: check-pr-body
        uses: actions/github-script@v8
        with:
          script: |
            const validatePRBody = require('./.github/workflow-scripts/validatePRBody.js');
            const {message, status} = validatePRBody(context.payload.pull_request.body);
            core.setOutput('message', message);
            core.setOutput('status', status);
      - name: Check branch target
        id: check-branch-target
        uses: actions/github-script@v8
        with:
          script: |
            const checkBranchTarget = require('./.github/workflow-scripts/checkBranchTarget.js');
            const baseRef = context.payload.pull_request.base.ref;
            const {message, status, shouldAddPickLabel} = checkBranchTarget(baseRef);

            if (shouldAddPickLabel) {
              await github.rest.issues.addLabels({
                owner: context.repo.owner,
                repo: context.repo.repo,
                issue_number: context.issue.number,
                labels: ['Pick Request'],
              });
            }

            core.setOutput('message', message);
            core.setOutput('status', status);
      - name: Post PR comment
        uses: ./.github/actions/post-pr-comment
        with:
          marker: '<!-- analyze-pr -->'
          sections: '[${{ toJSON(steps.check-pr-body.outputs.message) }}, ${{ toJSON(steps.check-branch-target.outputs.message) }}]'
      - name: Fail if validation errors
        if: steps.check-pr-body.outputs.status == 'FAIL' || steps.check-branch-target.outputs.status == 'FAIL'
        run: exit 1


================================================
FILE: .github/workflows/api-changes.yml
================================================
name: Analyze API Changes

on:
  pull_request_target:
    types: [opened, edited, reopened, synchronize]

permissions:
  pull-requests: write

jobs:
  api_changes:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - name: Check out main branch
        uses: actions/checkout@v6
      - name: Setup Node.js
        uses: ./.github/actions/setup-node
      - name: Run yarn install
        uses: ./.github/actions/yarn-install
      - name: Run diff-js-api-changes
        id: diff-js-api-changes
        uses: ./.github/actions/diff-js-api-changes
      - name: Post PR comment
        uses: ./.github/actions/post-pr-comment
        with:
          marker: '<!-- api-changes -->'
          sections: '[${{ toJSON(steps.diff-js-api-changes.outputs.message) }}]'


================================================
FILE: .github/workflows/autorebase.yml
================================================
name: Automatic Rebase
# This workflow is used to automatically rebase a PR when a comment is made
# containing the text "/rebase". It uses the cirrus-actions/rebase action.
# See https://github.com/cirrus-actions/rebase
on:
  issue_comment:
    types: [created]
permissions:
  contents: read
jobs:
  rebase:
    name: Rebase
    permissions:
      contents: write # for cirrus-actions/rebase to push code to rebase
      pull-requests: read # for cirrus-actions/rebase to get info about PR
    runs-on: ubuntu-latest
    if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/rebase')
    steps:
      - name: Checkout the latest code
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
      - name: Automatic Rebase
        uses: cirrus-actions/rebase@1.8
        env:
          GITHUB_TOKEN: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}


================================================
FILE: .github/workflows/bump-podfile-lock.yml
================================================
name: Bump Podfile.lock

on:
  workflow_call: # this directive allow us to call this workflow from other workflows

jobs:
  bump-podfile-lock:
    runs-on: macos-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          fetch-depth: 0
          fetch-tags: true
      - name: Install dependencies
        uses: ./.github/actions/yarn-install
      - name: Configure git
        run: |
          git config --local user.email "bot@reactnative.dev"
          git config --local user.name "React Native Bot"
      - name: Setup xcode
        uses: ./.github/actions/setup-xcode
      - name: Extract branch name
        run: |
          TAG="${{ github.ref_name }}";
          BRANCH_NAME=$(echo "$TAG" | sed -E 's/v([0-9]+\.[0-9]+)\.[0-9]+(-rc\.[0-9]+)?/\1-stable/')
          echo "Branch Name is $BRANCH_NAME"
          echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV
      - name: Checkout release branch
        run: |
          git checkout "$BRANCH_NAME"
          git fetch
          git pull origin "$BRANCH_NAME"
      - name: Bump podfile.lock
        run: |
          cd packages/rn-tester
          rm Podfile.lock
          bundle install
          bundle exec pod install
      - name: Commit changes
        run: |
          git add packages/rn-tester/Podfile.lock
          git commit -m "[LOCAL] Bump Podfile.lock"
          git push origin "$BRANCH_NAME"


================================================
FILE: .github/workflows/cache-reaper.yml
================================================
name: Keep Github Actions Cache < 10GB

on:
  workflow_dispatch:
  schedule:
    # Run every 2hrs during weekdays
    - cron: "0 0/2 * * 1-5"

jobs:
  cache-cleaner:
    if: github.repository == 'facebook/react-native'
    runs-on: ubuntu-latest
    env:
      GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    steps:
      - uses: actions/checkout@v6
      - name: Setup Node.js
        uses: ./.github/actions/setup-node
      - name: Trim the cache
        run: node scripts/clean-gha-cache.js


================================================
FILE: .github/workflows/check-for-reproducer.yml
================================================
name: Check for reproducer
# This workflow is triggered when issue is created or edited.
on:
  issues:
    types: [opened, edited]

jobs:
  check-for-reproducer:
    runs-on: ubuntu-latest
    if: |
      github.repository == 'facebook/react-native' && github.event.issue.pull_request == null && github.event.issue.state == 'open' && !contains(github.event.issue.labels.*.name, ':open_umbrella: Umbrella')
    steps:
      - uses: actions/checkout@v6
      - uses: actions/github-script@v8
        with:
          github-token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          script: |
            const checkForReproducer = require('./.github/workflow-scripts/checkForReproducer.js')
            await checkForReproducer(github, context)


================================================
FILE: .github/workflows/close-pr.yml
================================================
name: Label closed PR as merged and leave a comment
on:
  push

permissions:
  contents: read
  pull-requests: write

jobs:
  comment-and-label:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - uses: actions/github-script@v8
        with:
          github-token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          script: |
            if(!context.payload.commits || !context.payload.commits.length) return;
            const sha = context.payload.commits[0].id;

            const {commit, author} = (await github.rest.repos.getCommit({
              ref: sha,
              owner: context.repo.owner,
              repo: context.repo.repo,
            })).data;

            // Looking at the commit message, checks which PR number, if any, was closed by this commit
            const getClosedPrIfExists = (commit) => {
              if(!commit || !commit.message) return;
              const prClosingRegex = /Closes https:\/\/github.com\/facebook\/react-native\/pull\/([0-9]+)|Pull Request resolved: https:\/\/github.com\/facebook\/react-native\/pull\/([0-9]+)/;
              const prClosingMatch = commit.message.match(prClosingRegex);
              if(!prClosingMatch || (!prClosingMatch[1] && ! prClosingMatch[2])) return;
              return prClosingMatch[1] ?? prClosingMatch[2];
            };

            const closedPrNumber = getClosedPrIfExists(commit);
            if(!closedPrNumber) return;

            const pr = (await github.rest.pulls.get({
              pull_number: closedPrNumber,
              owner: context.repo.owner,
              repo: context.repo.repo,
            })).data;

            const authorName = author?.login ? `@${author.login}` : commit.author.name;

            github.rest.issues.createComment({
              issue_number: closedPrNumber,
              owner: context.repo.owner,
              repo: context.repo.repo,
              body: `This pull request was successfully merged by ${authorName} in **${sha}**\n\n<sup>[When will my fix make it into a release?](https://github.com/reactwg/react-native-releases/blob/main/docs/faq.md#when-will-my-fix-make-it-into-a-release) | [How to file a pick request?](https://github.com/reactwg/react-native-releases/blob/main/docs/faq.md#how-to-open-a-pick-request)</sup>`
            });

            // If the PR has already been processed (labeled as Merged), skip it
            const mergedLabel = "Merged";
            if(pr.labels && pr.labels.some(label => label.name === mergedLabel)) return;

            github.rest.issues.addLabels({
              issue_number: closedPrNumber,
              owner: context.repo.owner,
              repo: context.repo.repo,
              labels: [mergedLabel]
            });


================================================
FILE: .github/workflows/create-draft-release.yml
================================================
name: Create Draft Release

on:
  workflow_call:
    inputs:
      hermesVersion:
        required: false
        type: string
        description: The version of Hermes to use for this release (eg. 0.15.0). If not specified, it will use React Native Version
      hermesV1Version:
        required: false
        type: string
        description: The version of Hermes V1 to use for this release (eg. 250829098.0.2). If not specified, it will use React Native Version

jobs:
  create-draft-release:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          fetch-depth: 0
          fetch-tags: true
      - name: Install dependencies
        uses: ./.github/actions/yarn-install
      - name: Configure Git
        shell: bash
        run: |
          git config --local user.email "bot@reactnative.dev"
          git config --local user.name "React Native Bot"
      - name: Create draft release
        uses: actions/github-script@v8
        id: create-draft-release
        with:
          script: |
            const {createDraftRelease} = require('./.github/workflow-scripts/createDraftRelease.js');
            const version = '${{ github.ref_name }}';
            const {isLatest} = require('./.github/workflow-scripts/publishTemplate.js');
            return (await createDraftRelease(version, isLatest(), '${{secrets.REACT_NATIVE_BOT_GITHUB_TOKEN}}', '${{ inputs.hermesVersion }}', '${{ inputs.hermesV1Version }}')).id;
          result-encoding: string
      - name: Upload release assets for DotSlash
        uses: actions/github-script@v8
        env:
          RELEASE_ID: ${{ steps.create-draft-release.outputs.result }}
        with:
          script: |
            const {uploadReleaseAssetsForDotSlashFiles} = require('./scripts/releases/upload-release-assets-for-dotslash.js');
            const version = '${{ github.ref_name }}';
            await uploadReleaseAssetsForDotSlashFiles({
              version,
              token: '${{secrets.REACT_NATIVE_BOT_GITHUB_TOKEN}}',
              releaseId: process.env.RELEASE_ID,
            });


================================================
FILE: .github/workflows/create-release.yml
================================================
name: Create release

on:
  workflow_dispatch:
    inputs:
      version:
        description: "The version of React Native we want to release. For example 0.75.0-rc.0"
        required: true
        type: string
      is-latest-on-npm:
        description: "Whether we want to tag this release as latest on NPM"
        required: true
        type: boolean
        default: false
      dry-run:
        description: "Whether the job should be executed in dry-run mode or not"
        type: boolean
        default: true

jobs:
  create_release:
    if: github.repository == 'facebook/react-native'
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          fetch-depth: 0
          fetch-tags: 'true'
      - name: Check if on stable branch
        id: check_stable_branch
        run: |
          BRANCH="$(git branch --show-current)"
          PATTERN='^0\.[0-9]+-stable$'
          if [[ $BRANCH =~ $PATTERN ]]; then
            echo "On a stable branch"
            echo "ON_STABLE_BRANCH=true" >> $GITHUB_OUTPUT
          fi
      - name: Print output
        run: echo "ON_STABLE_BRANCH ${{steps.check_stable_branch.outputs.ON_STABLE_BRANCH}}"
      - name: Check if tag already exists
        id: check_if_tag_exists
        run: |
          TAG="v${{ inputs.version }}"
          TAG_EXISTS=$(git tag -l "$TAG")
          if [[ -n "$TAG_EXISTS" ]]; then
            echo "Version tag already exists!"
            echo "TAG_EXISTS=true" >> $GITHUB_OUTPUT
          fi
      - name: Execute Prepare Release
        if: ${{ steps.check_stable_branch.outputs.ON_STABLE_BRANCH && !steps.check_if_tag_exists.outputs.TAG_EXISTS }}
        uses: ./.github/actions/create-release
        with:
          version: ${{ inputs.version }}
          is-latest-on-npm: ${{ inputs.is-latest-on-npm }}
          dry-run: ${{ inputs.dry-run }}


================================================
FILE: .github/workflows/generate-changelog.yml
================================================
name: Generate Changelog

on:
  workflow_call:

jobs:
  generate-changelog:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          fetch-depth: 0
          fetch-tags: true
      - name: Install dependencies
        uses: ./.github/actions/yarn-install
      - name: Configure Git
        shell: bash
        run: |
          git config --local user.email "bot@reactnative.dev"
          git config --local user.name "React Native Bot"
      - name: Generate Changelog
        uses: actions/github-script@v8
        with:
          script: |
            const {generateChangelog} = require('./.github/workflow-scripts/generateChangelog');
            const version = '${{ github.ref_name }}';
            await generateChangelog(version, '${{secrets.REACT_NATIVE_BOT_GITHUB_TOKEN}}');


================================================
FILE: .github/workflows/monitor-new-issues.yml
================================================
name: Monitor React Native New Issues

on:
  schedule:
    - cron: "0 0,6,12,18 * * *"
  workflow_dispatch:

# Reminder for when we have to update the schedule (before Jan 2026):
# the secrets.ONCALL_SCHEDULE secret must be on a single line and must have all the `"` escaped as `\"`.
# Only a meta engineer can update it through the OSS internal portal.

jobs:
  monitor-issues:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - name: Checkout
        uses: actions/checkout@v6
      - name: Set up Node.js
        uses: ./.github/actions/setup-node
      - name: Install dependencies
        uses:  ./.github/actions/yarn-install
      - name: Extract next oncall
        run: |
          ONCALLS=$(node ./.github/workflow-scripts/extractIssueOncalls.js "${{ secrets.ONCALL_SCHEDULE }}")
          ONCALL1=$(echo $ONCALLS | cut -d ' ' -f 1)
          ONCALL2=$(echo $ONCALLS | cut -d ' ' -f 2)
          echo "oncall1=$ONCALL1" >> $GITHUB_ENV
          echo "oncall2=$ONCALL2" >> $GITHUB_ENV
      - name: Monitor New Issues
        uses: react-native-community/repo-monitor@v1.0.1
        with:
          task: "monitor-issues"
          git_secret: ${{ secrets.GITHUB_TOKEN }}
          notifier: "discord"
          fetch_data_interval: 6
          repo_owner: "facebook"
          repo_name: "react-native"
          discord_webhook_url: "${{ secrets.DISCORD_WEBHOOK_URL }}"
          discord_id_type: "user"
          discord_ids: "${{ env.oncall1 }},${{ env.oncall2 }}"


================================================
FILE: .github/workflows/needs-attention.yml
================================================
name: Issue Needs Attention
# This workflow is triggered on issue comments.
on:
  issue_comment:
    types: [created]

permissions:
  contents: read

jobs:
  applyNeedsAttentionLabel:
    permissions:
      contents: read # for actions/checkout to fetch code
      issues: write # for react-native-community/needs-attention to label issues
    name: Apply Needs Attention Label
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - uses: actions/checkout@v6
      - name: Apply Needs Attention Label
        uses: react-native-community/needs-attention@v2.0.0
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
          response-required-label: "Needs: Author Feedback"
          needs-attention-label: "Needs: Attention"
        id: needs-attention
      - name: Result
        run: echo '${{ steps.needs-attention.outputs.result }}'


================================================
FILE: .github/workflows/nightly.yml
================================================
name: Nightly

on:
  workflow_dispatch:
  # nightly build @ 2:15 AM UTC
  schedule:
    - cron: "15 2 * * *"

jobs:
  set_release_type:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    outputs:
      RELEASE_TYPE: ${{ steps.set_release_type.outputs.RELEASE_TYPE }}
    env:
      EVENT_NAME: ${{ github.event_name }}
      REF: ${{ github.ref }}
    steps:
      - id: set_release_type
        run: |
          echo "Setting release type to nightly"
          echo "RELEASE_TYPE=nightly" >> $GITHUB_OUTPUT

  prebuild_apple_dependencies:
    if: github.repository == 'facebook/react-native'
    uses: ./.github/workflows/prebuild-ios-dependencies.yml
    secrets: inherit

  prebuild_react_native_core:
    uses: ./.github/workflows/prebuild-ios-core.yml
    with:
      use-hermes-nightly: true
      version-type: nightly
    secrets: inherit
    needs: [prebuild_apple_dependencies]

  build_android:
    runs-on: 8-core-ubuntu
    if: github.repository == 'facebook/react-native'
    needs: [set_release_type]
    container:
      image: reactnativecommunity/react-native-android:latest
      env:
        TERM: "dumb"
        # Set the encoding to resolve a known character encoding issue with decompressing tar.gz files in containers
        # via Gradle: https://github.com/gradle/gradle/issues/23391#issuecomment-1878979127
        LC_ALL: C.UTF8
        GRADLE_OPTS: "-Dorg.gradle.daemon=false"
        ORG_GRADLE_PROJECT_SIGNING_PWD: ${{ secrets.ORG_GRADLE_PROJECT_SIGNING_PWD }}
        ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.ORG_GRADLE_PROJECT_SIGNING_KEY }}
        ORG_GRADLE_PROJECT_SONATYPE_USERNAME: ${{ secrets.ORG_GRADLE_PROJECT_SONATYPE_USERNAME }}
        ORG_GRADLE_PROJECT_SONATYPE_PASSWORD: ${{ secrets.ORG_GRADLE_PROJECT_SONATYPE_PASSWORD }}
        REACT_NATIVE_DOWNLOADS_DIR: /opt/react-native-downloads
    steps:
      - name: Checkout
        uses: actions/checkout@v6
      - name: Build Android
        uses: ./.github/actions/build-android
        with:
          release-type: ${{ needs.set_release_type.outputs.RELEASE_TYPE }}
          gradle-cache-encryption-key: ${{ secrets.GRADLE_CACHE_ENCRYPTION_KEY }}

  build_npm_package:
    runs-on: 8-core-ubuntu
    needs:
      [
        set_release_type,
        build_android,
        prebuild_apple_dependencies,
        prebuild_react_native_core,
      ]
    container:
      image: reactnativecommunity/react-native-android:latest
      env:
        TERM: "dumb"
        GRADLE_OPTS: "-Dorg.gradle.daemon=false"
        # Set the encoding to resolve a known character encoding issue with decompressing tar.gz files in containers
        # via Gradle: https://github.com/gradle/gradle/issues/23391#issuecomment-1878979127
        LC_ALL: C.UTF8
        # By default we only build ARM64 to save time/resources. For release/nightlies, we override this value to build all archs.
        ORG_GRADLE_PROJECT_reactNativeArchitectures: "arm64-v8a"
        REACT_NATIVE_DOWNLOADS_DIR: /opt/react-native-downloads
    env:
      GHA_NPM_TOKEN: ${{ secrets.GHA_NPM_TOKEN }}
      ORG_GRADLE_PROJECT_SIGNING_PWD: ${{ secrets.ORG_GRADLE_PROJECT_SIGNING_PWD }}
      ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.ORG_GRADLE_PROJECT_SIGNING_KEY }}
      ORG_GRADLE_PROJECT_SONATYPE_USERNAME: ${{ secrets.ORG_GRADLE_PROJECT_SONATYPE_USERNAME }}
      ORG_GRADLE_PROJECT_SONATYPE_PASSWORD: ${{ secrets.ORG_GRADLE_PROJECT_SONATYPE_PASSWORD }}
    steps:
      - name: Checkout
        uses: actions/checkout@v6
      - name: Build and Publish NPM Package
        uses: ./.github/actions/build-npm-package
        with:
          release-type: ${{ needs.set_release_type.outputs.RELEASE_TYPE }}
          gha-npm-token: ${{ env.GHA_NPM_TOKEN }}
          gradle-cache-encryption-key: ${{ secrets.GRADLE_CACHE_ENCRYPTION_KEY }}


================================================
FILE: .github/workflows/on-issue-labeled.yml
================================================
name: On Issue Labeled
# This workflow is triggered when a label is added to an issue.
on:
  issues:
    types: [labeled]

permissions:
  contents: write
  issues: write

jobs:
  # Runs automatic checks on issues labeled with "Needs: Triage",
  # then invokes actOnLabel to react to any added labels
  triage-issue:
    runs-on: ubuntu-latest
    if: "${{ github.repository == 'facebook/react-native' && contains(github.event.label.name, 'Needs: Triage :mag:') }}"
    steps:
      - name: Checkout code
        uses: actions/checkout@v6

      - name: Verify RN version
        uses: actions/github-script@v8
        with:
          github-token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          script: |
            const verifyVersion = require('./.github/workflow-scripts/verifyVersion.js')
            const labelWithContext = await verifyVersion(github, context);

            if(labelWithContext && labelWithContext.label) {
              await github.rest.issues.addLabels({
                issue_number: context.issue.number,
                owner: context.repo.owner,
                repo: context.repo.repo,
                labels: [labelWithContext.label]
              })

              const actOnLabel = require('./.github/workflow-scripts/actOnLabel.js')
              await actOnLabel(github, context, labelWithContext)
            }

      - name: Add descriptive label
        uses: actions/github-script@v8
        with:
          github-token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          script: |
            const addDescriptiveLabel = require('./.github/workflow-scripts/addDescriptiveLabels.js')
            await addDescriptiveLabel(github, context);

  # Reacts to the label that triggered this workflow (added manually or via other workflows)
  act-on-label:
    runs-on: ubuntu-latest
    if: github.repository == 'facebook/react-native'
    steps:
      - uses: actions/checkout@v6
      - uses: actions/github-script@v8
        with:
          github-token: ${{ secrets.REACT_NATIVE_BOT_GITHUB_TOKEN }}
          script: |
            const actOnLabel = require('./.github/workflow-scripts/actOnLabel.js')
            await actOnLabel(github, context, {label: context.payload.label.name})


================================================
FILE: .github/workflows/prebuild-ios-core.yml
================================================
name: Prebuild iOS Core

on:
  workflow_call: # this directive allow us to call this workflow from other workflows
    inputs:
      version-type:
        description: 'The version type to set for the prebuild (nightly or release)'
        type: string
        required: false
        default: ''
      use-hermes-nightly:
        description: 'Whether to use the hermes nightly build or read the version from the versions.properties file'
        type: boolean
        required: false
        default: false

jobs:
  build-rn-slice:
    runs-on: macos-15
    strategy:
      fail-fast: false
      matrix:
        flavor: ['Debug', 'Release']
        slice: [
          'ios',
          'ios-simulator',
          'mac-catalyst',
        ]
    steps:
      - name: Checkout
        uses: actions/checkout@v6
      - name: Restore cache if present
        id: restore-ios-slice
        uses: actions/cache/restore@v5
        with:
          key: v3-ios-core-${{ matrix.slice }}-${{ matrix.flavor }}-${{ hashFiles('packages/react-native/Package.swift', 'packages/react-native/scripts/ios-prebuild/*.js', 'packages/react-native/scripts/ios-prebuild.js', 'packages/react-native/React/**/*', 'packages/react-native/ReactCommon/**/*', 'packages/react-native/Libraries/**/*') }}
          path: packages/react-native/
      - name: Setup node.js
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        uses: ./.github/actions/setup-node
      - name: Setup xcode
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        uses: ./.github/actions/setup-xcode
      - name: Yarn Install
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        uses: ./.github/actions/yarn-install
      - name: Set Hermes version
        shell: bash
        run: |
          if [ "${{ inputs.use-hermes-nightly }}" == "true" ]; then
            # We are not publishing nightly versions of Hermes V1 yet.
            # For now, we can use the latest version of Hermes V1 published on maven and npm.
            HERMES_VERSION="latest-v1"
          else
            HERMES_VERSION=$(sed -n 's/^HERMES_V1_VERSION_NAME=//p' packages/react-native/sdks/hermes-engine/version.properties)
          fi
          echo "Using Hermes version: $HERMES_VERSION"
          echo "HERMES_VERSION=$HERMES_VERSION" >> $GITHUB_ENV
      - name: Set React Native version
        shell: bash
        run: |
          if [ "${{ inputs.version-type }}" != "" ]; then
            node ./scripts/releases/set-rn-artifacts-version.js --build-type "${{ inputs.version-type }}"
          fi
      - name: Download ReactNativeDependencies
        uses: actions/download-artifact@v7
        with:
          name: ReactNativeDependencies${{ matrix.flavor }}.xcframework.tar.gz
          path: /tmp/third-party/
      - name: Extract ReactNativeDependencies
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        shell: bash
        run: |
          # Extract ReactNativeDependencies
          tar -xzf /tmp/third-party/ReactNativeDependencies${{ matrix.flavor }}.xcframework.tar.gz -C /tmp/third-party/

          # Create destination folder
          mkdir -p packages/react-native/third-party/

          # Move the XCFramework in the destination directory
          mv /tmp/third-party/packages/react-native/third-party/ReactNativeDependencies.xcframework packages/react-native/third-party/ReactNativeDependencies.xcframework

          VERSION=$(jq -r '.version' packages/react-native/package.json)
          echo "$VERSION-${{matrix.flavor}}" > "packages/react-native/third-party/version.txt"
          cat "packages/react-native/third-party/version.txt"
          # Check destination directory
          ls -lR packages/react-native/third-party/
      - name: Setup the workspace
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        shell: bash
        run: |
          cd packages/react-native
          node scripts/ios-prebuild.js -s -f "${{ matrix.flavor }}"
      - name: Build React Native
        if: steps.restore-ios-slice.outputs.cache-hit != 'true'
        shell: bash
        run: |
          # This is going to be replaced by a CLI script
          cd packages/react-native
          node scripts/ios-prebuild -b -f "${{ matrix.flavor }}" -p "${{ matrix.slice }}"
      - name: Upload headers
        uses: actions/upload-artifact@v6
        with:
          name: prebuild-ios-core-headers-${{ matrix.flavor }}-${{ matrix.slice }}
          path:
            packages/react-native/.build/headers
      - name: Upload artifacts
        uses: actions/upload-artifact@v6
        with:
          name: prebuild-ios-core-slice-${{ matrix.flavor }}-${{ matrix.slice }}
          path: |
            packages/react-native/.build/output/spm/${{ matrix.flavor }}/Build/Products
      - name: Save Cache
        uses: actions/cache/save@v5
        if: ${{ github.ref == 'refs/heads/main' }} # To avoid that the cache explode
        with:
          key: v3-ios-core-${{ matrix.slice }}-${{ matrix.flavor }}-${{ hashFiles('packages/react-native/Package.swift', 'packages/react-native/scripts/ios-prebuild/*.js', 'packages/react-native/scripts/ios-prebuild.js', 'packages/react-native/React/**/*', 'packages/react-native/ReactCommon/**/*', 'packages/react-native/Libraries/**/*') }}
          path: |
            packages/react-native/.build/output/spm/${{ matrix.flavor }}/Build/Products
            packages/react-native/.build/headers

  compose-xcframework:
    runs-on: macos-15
    needs: [build-rn-slice]
    strategy:
      fail-fast: false
      matrix:
        flavor: ['Debug', 'Release']
    env:
      REACT_ORG_CODE_SIGNING_P12_CERT: ${{ secrets.REACT_ORG_CODE_SIGNING_P12_CERT }}
      REACT_ORG_CODE_SIGNING_P12_CERT_PWD: ${{ secrets.REACT_ORG_CODE_SIGNING_P12_CERT_PWD }}
    steps:
      - name: Checkout
        uses: actions/checkout@v6
      - name: Restore cache if present
        id: restore-ios-xcframework
        uses: actions/cache/restore@v5
        with:
          path: packages/react-native/.build/output/xcframeworks
          key: v2-ios-core-xcframework-${{ matrix.flavor }}-${{ hashFiles('packages/react-native/Package.swift', 'packages/react-native/scripts/ios-prebuild/*.js', 'packages/react-native/scripts/ios-prebuild.js', 'packages/react-native/React/**/*', 'packages/react-native/ReactCommon/**/*', 'packages/react-native/Libraries/**/*') }}
      - name: Setup node.js
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        uses: ./.github/actions/setup-node
      - name: Setup xcode
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        uses: ./.github/actions/setup-xcode
      - name: Yarn Install
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        uses: ./.github/actions/yarn-install
      - name: Download slice artifacts
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        uses: actions/download-artifact@v7
        with:
          pattern: prebuild-ios-core-slice-${{ matrix.flavor }}-*
          path: packages/react-native/.build/output/spm/${{ matrix.flavor }}/Build/Products
          merge-multiple: true
      - name: Download headers
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        uses: actions/download-artifact@v7
        with:
          pattern: prebuild-ios-core-headers-${{ matrix.flavor }}-*
          path: packages/react-native/.build/headers
          merge-multiple: true
      - name: Setup Keychain
        if: ${{ steps.restore-ios-xcframework.outputs.cache-hit != 'true' && env.REACT_ORG_CODE_SIGNING_P12_CERT != '' }}
        uses: apple-actions/import-codesign-certs@v3 # https://github.com/marketplace/actions/import-code-signing-certificates
        with:
          p12-file-base64: ${{ secrets.REACT_ORG_CODE_SIGNING_P12_CERT }}
          p12-password: ${{ secrets.REACT_ORG_CODE_SIGNING_P12_CERT_PWD }}
      - name: Create XCFramework
        if: ${{ steps.restore-ios-xcframework.outputs.cache-hit != 'true' && env.REACT_ORG_CODE_SIGNING_P12_CERT == '' }}
        run: |
          cd packages/react-native
          node scripts/ios-prebuild -c -f "${{ matrix.flavor }}"
      - name: Create and Sign XCFramework
        if: ${{ steps.restore-ios-xcframework.outputs.cache-hit != 'true' && env.REACT_ORG_CODE_SIGNING_P12_CERT != '' }}
        run: |
          cd packages/react-native
          node scripts/ios-prebuild -c -f "${{ matrix.flavor }}" -i "React Org"
      - name: Compress and Rename XCFramework
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        run: |
          cd packages/react-native/.build/output/xcframeworks/${{matrix.flavor}}
          tar -cz -f ../ReactCore${{matrix.flavor}}.xcframework.tar.gz React.xcframework
      - name: Compress and Rename dSYM
        if: steps.restore-ios-xcframework.outputs.cache-hit != 'true'
        run: |
          cd packages/react-native/.build/output/xcframeworks/${{matrix.flavor}}/Symbols
          tar -cz -f ../../ReactCore${{ matrix.flavor }}.framework.dSYM.tar.gz .
      - name: Upload XCFramework Artifact
        uses: actions/upload-artifact@v6
        with:
          name: ReactCore${{ matrix.flavo
Download .txt
Showing preview only (608K chars total). Download the full file or copy to clipboard to get everything.
gitextract_q2tq5gs6/

├── .babelrc
├── .bundle/
│   └── config
├── .clang-format
├── .editorconfig
├── .eslintignore
├── .eslintrc.js
├── .flowconfig
├── .gitattributes
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.yml
│   │   ├── config.yml
│   │   ├── debugger_bug_report.yml
│   │   └── new_architecture_bug_report.yml
│   ├── ISSUE_TEMPLATE.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── RELEASE_TEMPLATE.md
│   ├── SUPPORT.md
│   ├── actions/
│   │   ├── build-android/
│   │   │   └── action.yml
│   │   ├── build-fantom-runner/
│   │   │   └── action.yml
│   │   ├── build-npm-package/
│   │   │   └── action.yml
│   │   ├── create-release/
│   │   │   └── action.yml
│   │   ├── diff-js-api-changes/
│   │   │   └── action.yml
│   │   ├── maestro-android/
│   │   │   └── action.yml
│   │   ├── maestro-ios/
│   │   │   └── action.yml
│   │   ├── post-pr-comment/
│   │   │   └── action.yml
│   │   ├── prepare-hermes-v1-app/
│   │   │   └── action.yml
│   │   ├── prepare-ios-tests/
│   │   │   └── action.yml
│   │   ├── run-fantom-tests/
│   │   │   └── action.yml
│   │   ├── setup-gradle/
│   │   │   └── action.yml
│   │   ├── setup-node/
│   │   │   └── action.yml
│   │   ├── setup-xcode/
│   │   │   └── action.yml
│   │   ├── test-ios-helloworld/
│   │   │   └── action.yml
│   │   ├── test-ios-rntester/
│   │   │   └── action.yml
│   │   ├── test-js/
│   │   │   └── action.yml
│   │   └── yarn-install/
│   │       └── action.yml
│   ├── workflow-scripts/
│   │   ├── __tests__/
│   │   │   ├── createDraftRelease-test.js
│   │   │   ├── extractIssueOncalls-test.js
│   │   │   ├── generateChangelog-test.js
│   │   │   ├── publishTemplate-test.js
│   │   │   ├── verifyArtifactsAreOnMaven-test.js
│   │   │   ├── verifyPublishedPackage-test.js
│   │   │   └── verifyReleaseOnNpm-test.js
│   │   ├── actOnLabel.js
│   │   ├── addDescriptiveLabels.js
│   │   ├── analyze_scripts.sh
│   │   ├── checkBranchTarget.js
│   │   ├── checkForReproducer.js
│   │   ├── createDraftRelease.js
│   │   ├── exec_swallow_error.sh
│   │   ├── extractIssueOncalls.js
│   │   ├── generateChangelog.js
│   │   ├── hermes-v1.patch
│   │   ├── lint_files.sh
│   │   ├── maestro-android.js
│   │   ├── maestro-ios.js
│   │   ├── publishTemplate.js
│   │   ├── selectLatestHermesV1Version.js
│   │   ├── utils.js
│   │   ├── validatePRBody.js
│   │   ├── verifyArtifactsAreOnMaven.js
│   │   ├── verifyPublishedPackage.js
│   │   ├── verifyReleaseOnNpm.js
│   │   └── verifyVersion.js
│   └── workflows/
│       ├── analyze-pr.yml
│       ├── api-changes.yml
│       ├── autorebase.yml
│       ├── bump-podfile-lock.yml
│       ├── cache-reaper.yml
│       ├── check-for-reproducer.yml
│       ├── close-pr.yml
│       ├── create-draft-release.yml
│       ├── create-release.yml
│       ├── generate-changelog.yml
│       ├── monitor-new-issues.yml
│       ├── needs-attention.yml
│       ├── nightly.yml
│       ├── on-issue-labeled.yml
│       ├── prebuild-ios-core.yml
│       ├── prebuild-ios-dependencies.yml
│       ├── publish-bumped-packages.yml
│       ├── publish-release.yml
│       ├── retry-workflow.yml
│       ├── stale-bot.yml
│       ├── test-all.yml
│       ├── validate-cxx-api-snapshots.yml
│       └── validate-dotslash-artifacts.yml
├── .gitignore
├── .markdownlint-cli2.mjs
├── .prettierignore
├── .prettierrc.js
├── CHANGELOG-0.5x.md
├── CHANGELOG-0.6x.md
├── CHANGELOG-0.7x.md
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── ECOSYSTEM.md
├── Gemfile
├── LICENSE
├── README.md
├── __docs__/
│   ├── GUIDELINES.md
│   ├── README-template.md
│   └── README.md
├── build.gradle.kts
├── flow-typed/
│   ├── environment/
│   │   └── node.js
│   └── npm/
│       ├── @expo/
│       │   └── spawn-async_v1.x.x.js
│       ├── @isaacs/
│       │   └── ttlcache_1.x.x.js
│       ├── @octokit/
│       │   └── rest_v22.x.x.js
│       ├── @react-native-community/
│       │   ├── cli-server-api_v19.x.x.js
│       │   └── cli-types_v19.x.x.js
│       ├── @tsconfig/
│       │   └── node22_v22.x.x.js
│       ├── actual-request-url_v1.x.x.js
│       ├── ansi-regex_v5.x.x.js
│       ├── babel-traverse_v7.x.x.js
│       ├── babel-types_v7.x.x.js
│       ├── babel_v7.x.x.js
│       ├── base64-js_v1.x.x.js
│       ├── chrome-launcher_v0.15.x.js
│       ├── chromium-edge-launcher_v0.2.x.js
│       ├── commander_v12.x.x.js
│       ├── connect_v3.x.x.js
│       ├── cross-spawn_v7.x.x.js
│       ├── debug_v4.4.x.js
│       ├── deep-equal_v1.x.x.js
│       ├── electron-packager_v18.x.x.js
│       ├── electron_v36.x.x.js
│       ├── execa_v5.x.x.js
│       ├── fb-dotslash_v0.x.x.js
│       ├── ini_v5.x.x.js
│       ├── jest-diff_v29.x.x.js
│       ├── jest-snapshot_v29.x.x.js
│       ├── jest.js
│       ├── jsonc-parser_v2.2.x.js
│       ├── listr2_v8.x.x.js
│       ├── listr_v14.x.x.js
│       ├── node-fetch_v2.x.x.js
│       ├── open_v7.x.x.js
│       ├── pretty-format_v29.x.x.js
│       ├── promise_v8.x.x.js
│       ├── react-dom_v17.x.x.js
│       ├── react-test-renderer_v16.x.x.js
│       ├── rxjs_v6.x.x.js
│       ├── selfsigned_v2.x.x.js
│       ├── semver_v7.x.x.js
│       ├── serve-static_v1.x.x.js
│       ├── shelljs_v0.x.x.js
│       ├── signedsource_v1.x.x.js
│       ├── stacktrace-parser_v0.1.x.js
│       ├── tinybench_v4.1.x.js
│       ├── tinyglobby_v0.2.x.js
│       ├── typescript_v5.x.x.js
│       ├── undici_v6.x.x.js
│       ├── wait-for-expect_v3.x.x.js
│       ├── ws_v7.x.x.js
│       └── yargs_v17.x.x.js
├── gradle/
│   └── wrapper/
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── jest/
│   └── preprocessor.js
├── jest.config.js
├── package.json
├── packages/
│   ├── assets/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── path-support-test.js
│   │   ├── package.json
│   │   ├── path-support.js
│   │   └── registry.js
│   ├── babel-plugin-codegen/
│   │   ├── README.md
│   │   ├── __test_fixtures__/
│   │   │   ├── failures.js
│   │   │   └── fixtures.js
│   │   ├── __tests__/
│   │   │   ├── __snapshots__/
│   │   │   │   └── index-test.js.snap
│   │   │   └── index-test.js
│   │   ├── index.js
│   │   └── package.json
│   ├── community-cli-plugin/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── commands/
│   │       │   ├── bundle/
│   │       │   │   ├── __mocks__/
│   │       │   │   │   └── sign.js
│   │       │   │   ├── __tests__/
│   │       │   │   │   ├── filterPlatformAssetScales-test.js
│   │       │   │   │   ├── getAssetDestPathAndroid-test.js
│   │       │   │   │   └── getAssetDestPathIOS-test.js
│   │       │   │   ├── assetCatalogIOS.js
│   │       │   │   ├── assetPathUtils.js
│   │       │   │   ├── buildBundle.js
│   │       │   │   ├── createKeepFileAsync.js
│   │       │   │   ├── filterPlatformAssetScales.js
│   │       │   │   ├── getAssetDestPathAndroid.js
│   │       │   │   ├── getAssetDestPathIOS.js
│   │       │   │   ├── index.js
│   │       │   │   └── saveAssets.js
│   │       │   └── start/
│   │       │       ├── OpenDebuggerKeyboardHandler.js
│   │       │       ├── attachKeyHandlers.js
│   │       │       ├── index.js
│   │       │       ├── middleware.js
│   │       │       └── runServer.js
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       └── utils/
│   │           ├── createDevMiddlewareLogger.js
│   │           ├── errors.js
│   │           ├── isDevServerRunning.js
│   │           ├── loadMetroConfig.js
│   │           ├── metroPlatformResolver.js
│   │           ├── parseKeyValueParamArray.js
│   │           └── version.js
│   ├── core-cli-utils/
│   │   ├── .eslintrc.json
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       ├── private/
│   │       │   ├── android.js
│   │       │   ├── app.js
│   │       │   ├── apple.js
│   │       │   ├── clean.js
│   │       │   ├── types.js
│   │       │   └── utils.js
│   │       └── public/
│   │           ├── version.flow.js
│   │           └── version.js
│   ├── debugger-frontend/
│   │   ├── BUILD_INFO
│   │   ├── README.md
│   │   ├── dist/
│   │   │   └── third-party/
│   │   │       ├── LICENSE
│   │   │       └── front_end/
│   │   │           ├── Images/
│   │   │           │   ├── Images.js
│   │   │           │   ├── chromeLeft.avif
│   │   │           │   ├── chromeMiddle.avif
│   │   │           │   ├── chromeRight.avif
│   │   │           │   ├── cssoverview_icons_2x.avif
│   │   │           │   └── nodeIcon.avif
│   │   │           ├── Tests.js
│   │   │           ├── application_tokens.css
│   │   │           ├── core/
│   │   │           │   ├── common/
│   │   │           │   │   └── common.js
│   │   │           │   ├── dom_extension/
│   │   │           │   │   └── dom_extension.js
│   │   │           │   ├── host/
│   │   │           │   │   └── host.js
│   │   │           │   ├── i18n/
│   │   │           │   │   ├── i18n.js
│   │   │           │   │   └── locales/
│   │   │           │   │       ├── en-US.json
│   │   │           │   │       └── zh.json
│   │   │           │   ├── platform/
│   │   │           │   │   └── platform.js
│   │   │           │   ├── protocol_client/
│   │   │           │   │   └── protocol_client.js
│   │   │           │   ├── rn_experiments/
│   │   │           │   │   └── rn_experiments.js
│   │   │           │   ├── root/
│   │   │           │   │   └── root.js
│   │   │           │   └── sdk/
│   │   │           │       ├── sdk-meta.js
│   │   │           │       └── sdk.js
│   │   │           ├── design_system_tokens.css
│   │   │           ├── device_mode_emulation_frame.html
│   │   │           ├── devtools_app.html
│   │   │           ├── devtools_compatibility.js
│   │   │           ├── emulated_devices/
│   │   │           │   └── optimized/
│   │   │           │       ├── MotoG4-landscape.avif
│   │   │           │       ├── MotoG4-portrait.avif
│   │   │           │       ├── Nexus5X-landscape.avif
│   │   │           │       ├── Nexus5X-portrait.avif
│   │   │           │       ├── Nexus6P-landscape.avif
│   │   │           │       ├── Nexus6P-portrait.avif
│   │   │           │       ├── google-nest-hub-horizontal.avif
│   │   │           │       ├── google-nest-hub-max-horizontal.avif
│   │   │           │       ├── google-nexus-5-horizontal-default-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-default-2x.avif
│   │   │           │       ├── google-nexus-5-horizontal-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5-horizontal-navigation-1x.avif
│   │   │           │       ├── google-nexus-5-horizontal-navigation-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-default-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-default-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5-vertical-navigation-1x.avif
│   │   │           │       ├── google-nexus-5-vertical-navigation-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-default-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-default-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-navigation-1x.avif
│   │   │           │       ├── google-nexus-5x-horizontal-navigation-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-default-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-default-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-keyboard-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-keyboard-2x.avif
│   │   │           │       ├── google-nexus-5x-vertical-navigation-1x.avif
│   │   │           │       ├── google-nexus-5x-vertical-navigation-2x.avif
│   │   │           │       ├── iPad-landscape.avif
│   │   │           │       ├── iPad-portrait.avif
│   │   │           │       ├── iPhone5-landscape.avif
│   │   │           │       ├── iPhone5-portrait.avif
│   │   │           │       ├── iPhone6-landscape.avif
│   │   │           │       ├── iPhone6-portrait.avif
│   │   │           │       ├── iPhone6Plus-landscape.avif
│   │   │           │       └── iPhone6Plus-portrait.avif
│   │   │           ├── entrypoints/
│   │   │           │   ├── device_mode_emulation_frame/
│   │   │           │   │   └── device_mode_emulation_frame.js
│   │   │           │   ├── devtools_app/
│   │   │           │   │   └── devtools_app.js
│   │   │           │   ├── formatter_worker/
│   │   │           │   │   ├── FormatterActions.js
│   │   │           │   │   ├── formatter_worker-entrypoint.js
│   │   │           │   │   └── formatter_worker.js
│   │   │           │   ├── heap_snapshot_worker/
│   │   │           │   │   ├── heap_snapshot_worker-entrypoint.js
│   │   │           │   │   └── heap_snapshot_worker.js
│   │   │           │   ├── inspector/
│   │   │           │   │   └── inspector.js
│   │   │           │   ├── inspector_main/
│   │   │           │   │   ├── inspector_main-meta.js
│   │   │           │   │   └── inspector_main.js
│   │   │           │   ├── js_app/
│   │   │           │   │   └── js_app.js
│   │   │           │   ├── lighthouse_worker/
│   │   │           │   │   └── lighthouse_worker.js
│   │   │           │   ├── main/
│   │   │           │   │   ├── main-meta.js
│   │   │           │   │   └── main.js
│   │   │           │   ├── ndb_app/
│   │   │           │   │   └── ndb_app.js
│   │   │           │   ├── node_app/
│   │   │           │   │   └── node_app.js
│   │   │           │   ├── rehydrated_devtools_app/
│   │   │           │   │   └── rehydrated_devtools_app.js
│   │   │           │   ├── rn_fusebox/
│   │   │           │   │   └── rn_fusebox.js
│   │   │           │   ├── shell/
│   │   │           │   │   └── shell.js
│   │   │           │   ├── wasmparser_worker/
│   │   │           │   │   ├── wasmparser_worker-entrypoint.js
│   │   │           │   │   └── wasmparser_worker.js
│   │   │           │   └── worker_app/
│   │   │           │       └── worker_app.js
│   │   │           ├── inspector.html
│   │   │           ├── integration_test_runner.html
│   │   │           ├── js_app.html
│   │   │           ├── legacy_test_runner/
│   │   │           │   ├── legacy_test_runner.js
│   │   │           │   └── test_runner/
│   │   │           │       └── test_runner.js
│   │   │           ├── models/
│   │   │           │   ├── ai_assistance/
│   │   │           │   │   └── ai_assistance.js
│   │   │           │   ├── autofill_manager/
│   │   │           │   │   └── autofill_manager.js
│   │   │           │   ├── bindings/
│   │   │           │   │   └── bindings.js
│   │   │           │   ├── breakpoints/
│   │   │           │   │   └── breakpoints.js
│   │   │           │   ├── cpu_profile/
│   │   │           │   │   └── cpu_profile.js
│   │   │           │   ├── crux-manager/
│   │   │           │   │   └── crux-manager.js
│   │   │           │   ├── emulation/
│   │   │           │   │   └── emulation.js
│   │   │           │   ├── extensions/
│   │   │           │   │   └── extensions.js
│   │   │           │   ├── formatter/
│   │   │           │   │   └── formatter.js
│   │   │           │   ├── har/
│   │   │           │   │   └── har.js
│   │   │           │   ├── heap_snapshot_model/
│   │   │           │   │   └── heap_snapshot_model.js
│   │   │           │   ├── issues_manager/
│   │   │           │   │   ├── descriptions/
│   │   │           │   │   │   ├── CoepCoopSandboxedIframeCannotNavigateToCoopPage.md
│   │   │           │   │   │   ├── CoepCorpNotSameOrigin.md
│   │   │           │   │   │   ├── CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md
│   │   │           │   │   │   ├── CoepCorpNotSameSite.md
│   │   │           │   │   │   ├── CoepFrameResourceNeedsCoepHeader.md
│   │   │           │   │   │   ├── CompatibilityModeQuirks.md
│   │   │           │   │   │   ├── CookieAttributeValueExceedsMaxSize.md
│   │   │           │   │   │   ├── LowTextContrast.md
│   │   │           │   │   │   ├── SameSiteExcludeContextDowngradeRead.md
│   │   │           │   │   │   ├── SameSiteExcludeContextDowngradeSet.md
│   │   │           │   │   │   ├── SameSiteExcludeNavigationContextDowngrade.md
│   │   │           │   │   │   ├── SameSiteInvalidSameParty.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureErrorRead.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureErrorSet.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureWarnRead.md
│   │   │           │   │   │   ├── SameSiteNoneInsecureWarnSet.md
│   │   │           │   │   │   ├── SameSiteUnspecifiedLaxAllowUnsafeRead.md
│   │   │           │   │   │   ├── SameSiteUnspecifiedLaxAllowUnsafeSet.md
│   │   │           │   │   │   ├── SameSiteWarnCrossDowngradeRead.md
│   │   │           │   │   │   ├── SameSiteWarnCrossDowngradeSet.md
│   │   │           │   │   │   ├── SameSiteWarnStrictLaxDowngradeStrict.md
│   │   │           │   │   │   ├── arInsecureContext.md
│   │   │           │   │   │   ├── arInvalidInfoHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterOsSourceHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterOsTriggerHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterSourceHeader.md
│   │   │           │   │   │   ├── arInvalidRegisterTriggerHeader.md
│   │   │           │   │   │   ├── arNavigationRegistrationUniqueScopeAlreadySet.md
│   │   │           │   │   │   ├── arNavigationRegistrationWithoutTransientUserActivation.md
│   │   │           │   │   │   ├── arNoRegisterOsSourceHeader.md
│   │   │           │   │   │   ├── arNoRegisterOsTriggerHeader.md
│   │   │           │   │   │   ├── arNoRegisterSourceHeader.md
│   │   │           │   │   │   ├── arNoRegisterTriggerHeader.md
│   │   │           │   │   │   ├── arNoWebOrOsSupport.md
│   │   │           │   │   │   ├── arOsSourceIgnored.md
│   │   │           │   │   │   ├── arOsTriggerIgnored.md
│   │   │           │   │   │   ├── arPermissionPolicyDisabled.md
│   │   │           │   │   │   ├── arSourceAndTriggerHeaders.md
│   │   │           │   │   │   ├── arSourceIgnored.md
│   │   │           │   │   │   ├── arTriggerIgnored.md
│   │   │           │   │   │   ├── arUntrustworthyReportingOrigin.md
│   │   │           │   │   │   ├── arWebAndOsHeaders.md
│   │   │           │   │   │   ├── bounceTrackingMitigations.md
│   │   │           │   │   │   ├── clientHintMetaTagAllowListInvalidOrigin.md
│   │   │           │   │   │   ├── clientHintMetaTagModifiedHTML.md
│   │   │           │   │   │   ├── cookieCrossSiteRedirectDowngrade.md
│   │   │           │   │   │   ├── cookieExcludeBlockedWithinRelatedWebsiteSet.md
│   │   │           │   │   │   ├── cookieExcludeDomainNonAscii.md
│   │   │           │   │   │   ├── cookieExcludePortMismatch.md
│   │   │           │   │   │   ├── cookieExcludeSchemeMismatch.md
│   │   │           │   │   │   ├── cookieExcludeThirdPartyPhaseoutRead.md
│   │   │           │   │   │   ├── cookieExcludeThirdPartyPhaseoutSet.md
│   │   │           │   │   │   ├── cookieWarnDomainNonAscii.md
│   │   │           │   │   │   ├── cookieWarnMetadataGrantRead.md
│   │   │           │   │   │   ├── cookieWarnMetadataGrantSet.md
│   │   │           │   │   │   ├── cookieWarnThirdPartyPhaseoutRead.md
│   │   │           │   │   │   ├── cookieWarnThirdPartyPhaseoutSet.md
│   │   │           │   │   │   ├── corsAllowCredentialsRequired.md
│   │   │           │   │   │   ├── corsDisabledScheme.md
│   │   │           │   │   │   ├── corsDisallowedByMode.md
│   │   │           │   │   │   ├── corsHeaderDisallowedByPreflightResponse.md
│   │   │           │   │   │   ├── corsInsecurePrivateNetwork.md
│   │   │           │   │   │   ├── corsInvalidHeaderValues.md
│   │   │           │   │   │   ├── corsLocalNetworkAccessPermissionDenied.md
│   │   │           │   │   │   ├── corsMethodDisallowedByPreflightResponse.md
│   │   │           │   │   │   ├── corsNoCorsRedirectModeNotFollow.md
│   │   │           │   │   │   ├── corsOriginMismatch.md
│   │   │           │   │   │   ├── corsPreflightAllowPrivateNetworkError.md
│   │   │           │   │   │   ├── corsPreflightResponseInvalid.md
│   │   │           │   │   │   ├── corsPrivateNetworkPermissionDenied.md
│   │   │           │   │   │   ├── corsRedirectContainsCredentials.md
│   │   │           │   │   │   ├── corsWildcardOriginNotAllowed.md
│   │   │           │   │   │   ├── cspEvalViolation.md
│   │   │           │   │   │   ├── cspInlineViolation.md
│   │   │           │   │   │   ├── cspTrustedTypesPolicyViolation.md
│   │   │           │   │   │   ├── cspTrustedTypesSinkViolation.md
│   │   │           │   │   │   ├── cspURLViolation.md
│   │   │           │   │   │   ├── deprecation.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestAccountsNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestApprovalDeclined.md
│   │   │           │   │   │   ├── federatedAuthRequestCanceled.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestClientMetadataNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestErrorFetchingSignin.md
│   │   │           │   │   │   ├── federatedAuthRequestErrorIdToken.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenInvalidRequest.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestIdTokenNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestInvalidSigninResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestHttpNotFound.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestInvalidResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestManifestNoResponse.md
│   │   │           │   │   │   ├── federatedAuthRequestTooManyRequests.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestInvalidAccountsResponse.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoAccountSharingPermission.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoApiPermission.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotIframe.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotSameOrigin.md
│   │   │           │   │   │   ├── federatedAuthUserInfoRequestNotSignedInWithIdp.md
│   │   │           │   │   │   ├── fetchingPartitionedBlobURL.md
│   │   │           │   │   │   ├── genericFormAriaLabelledByToNonExistingId.md
│   │   │           │   │   │   ├── genericFormAutocompleteAttributeEmptyError.md
│   │   │           │   │   │   ├── genericFormDuplicateIdForInputError.md
│   │   │           │   │   │   ├── genericFormEmptyIdAndNameAttributesForInputError.md
│   │   │           │   │   │   ├── genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md
│   │   │           │   │   │   ├── genericFormInputHasWrongButWellIntendedAutocompleteValueError.md
│   │   │           │   │   │   ├── genericFormInputWithNoLabelError.md
│   │   │           │   │   │   ├── genericFormLabelForMatchesNonExistingIdError.md
│   │   │           │   │   │   ├── genericFormLabelForNameError.md
│   │   │           │   │   │   ├── genericFormLabelHasNeitherForNorNestedInput.md
│   │   │           │   │   │   ├── genericResponseWasBlockedByORB.md
│   │   │           │   │   │   ├── heavyAd.md
│   │   │           │   │   │   ├── mixedContent.md
│   │   │           │   │   │   ├── navigatingPartitionedBlobURL.md
│   │   │           │   │   │   ├── placeholderDescriptionForInvisibleIssues.md
│   │   │           │   │   │   ├── propertyRuleInvalidNameIssue.md
│   │   │           │   │   │   ├── propertyRuleIssue.md
│   │   │           │   │   │   ├── selectElementAccessibilityDisallowedOptGroupChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityDisallowedSelectChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentLegendChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityInteractiveContentOptionChild.md
│   │   │           │   │   │   ├── selectElementAccessibilityNonPhrasingContentOptionChild.md
│   │   │           │   │   │   ├── sharedArrayBuffer.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorCrossOriginNoCorsRequest.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorDictionaryLoadFailure.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorMatchingDictionaryNotUsed.md
│   │   │           │   │   │   ├── sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorCossOriginNoCorsRequest.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorDisallowedBySettings.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorExpiredResponse.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorFeatureDisabled.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInsufficientResources.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInvalidMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorInvalidStructuredHeader.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNavigationRequest.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNoMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonListMatchDestField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonSecureContext.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringIdField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringInMatchDestList.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonStringMatchField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorNonTokenTypeField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorRequestAborted.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorShuttingDown.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorTooLongIdField.md
│   │   │           │   │   │   ├── sharedDictionaryWriteErrorUnsupportedType.md
│   │   │           │   │   │   ├── sriInvalidSignatureHeader.md
│   │   │           │   │   │   ├── sriInvalidSignatureInputHeader.md
│   │   │           │   │   │   ├── sriMissingSignatureHeader.md
│   │   │           │   │   │   ├── sriMissingSignatureInputHeader.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsIncorrectLength.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsNotByteSequence.md
│   │   │           │   │   │   ├── sriSignatureHeaderValueIsParameterized.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidComponentName.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidComponentType.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidDerivedComponentParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidHeaderComponentParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderInvalidParameter.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderKeyIdLength.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderMissingLabel.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderMissingRequiredParameters.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderValueMissingComponents.md
│   │   │           │   │   │   ├── sriSignatureInputHeaderValueNotInnerList.md
│   │   │           │   │   │   ├── sriValidationFailedIntegrityMismatch.md
│   │   │           │   │   │   ├── sriValidationFailedInvalidLength.md
│   │   │           │   │   │   ├── sriValidationFailedSignatureExpired.md
│   │   │           │   │   │   ├── sriValidationFailedSignatureMismatch.md
│   │   │           │   │   │   ├── stylesheetLateImport.md
│   │   │           │   │   │   └── stylesheetRequestFailed.md
│   │   │           │   │   └── issues_manager.js
│   │   │           │   ├── javascript_metadata/
│   │   │           │   │   └── javascript_metadata.js
│   │   │           │   ├── live-metrics/
│   │   │           │   │   ├── live-metrics.js
│   │   │           │   │   └── web-vitals-injected/
│   │   │           │   │       ├── spec/
│   │   │           │   │       │   └── spec.js
│   │   │           │   │       └── web-vitals-injected.generated.js
│   │   │           │   ├── logs/
│   │   │           │   │   ├── logs-meta.js
│   │   │           │   │   └── logs.js
│   │   │           │   ├── persistence/
│   │   │           │   │   ├── persistence-meta.js
│   │   │           │   │   └── persistence.js
│   │   │           │   ├── project_settings/
│   │   │           │   │   └── project_settings.js
│   │   │           │   ├── react_native/
│   │   │           │   │   └── react_native.js
│   │   │           │   ├── source_map_scopes/
│   │   │           │   │   └── source_map_scopes.js
│   │   │           │   ├── text_utils/
│   │   │           │   │   └── text_utils.js
│   │   │           │   ├── trace/
│   │   │           │   │   ├── extras/
│   │   │           │   │   │   └── extras.js
│   │   │           │   │   ├── handlers/
│   │   │           │   │   │   └── handlers.js
│   │   │           │   │   ├── helpers/
│   │   │           │   │   │   └── helpers.js
│   │   │           │   │   ├── insights/
│   │   │           │   │   │   └── insights.js
│   │   │           │   │   ├── lantern/
│   │   │           │   │   │   ├── core/
│   │   │           │   │   │   │   └── core.js
│   │   │           │   │   │   ├── graph/
│   │   │           │   │   │   │   └── graph.js
│   │   │           │   │   │   ├── lantern.js
│   │   │           │   │   │   ├── metrics/
│   │   │           │   │   │   │   └── metrics.js
│   │   │           │   │   │   ├── simulation/
│   │   │           │   │   │   │   └── simulation.js
│   │   │           │   │   │   └── types/
│   │   │           │   │   │       └── types.js
│   │   │           │   │   ├── trace.js
│   │   │           │   │   └── types/
│   │   │           │   │       └── types.js
│   │   │           │   ├── workspace/
│   │   │           │   │   └── workspace.js
│   │   │           │   └── workspace_diff/
│   │   │           │       └── workspace_diff.js
│   │   │           ├── ndb_app.html
│   │   │           ├── node_app.html
│   │   │           ├── panels/
│   │   │           │   ├── accessibility/
│   │   │           │   │   ├── accessibility-meta.js
│   │   │           │   │   └── accessibility.js
│   │   │           │   ├── ai_assistance/
│   │   │           │   │   ├── ai_assistance-meta.js
│   │   │           │   │   └── ai_assistance.js
│   │   │           │   ├── animation/
│   │   │           │   │   ├── animation-meta.js
│   │   │           │   │   └── animation.js
│   │   │           │   ├── application/
│   │   │           │   │   ├── application-meta.js
│   │   │           │   │   ├── application.js
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   └── preloading/
│   │   │           │   │       ├── components/
│   │   │           │   │       │   └── components.js
│   │   │           │   │       └── helper/
│   │   │           │   │           └── helper.js
│   │   │           │   ├── autofill/
│   │   │           │   │   ├── autofill-meta.js
│   │   │           │   │   └── autofill.js
│   │   │           │   ├── browser_debugger/
│   │   │           │   │   ├── browser_debugger-meta.js
│   │   │           │   │   └── browser_debugger.js
│   │   │           │   ├── changes/
│   │   │           │   │   ├── changes-meta.js
│   │   │           │   │   └── changes.js
│   │   │           │   ├── common/
│   │   │           │   │   └── common.js
│   │   │           │   ├── console/
│   │   │           │   │   ├── console-meta.js
│   │   │           │   │   └── console.js
│   │   │           │   ├── console_counters/
│   │   │           │   │   ├── console_counters-meta.js
│   │   │           │   │   └── console_counters.js
│   │   │           │   ├── coverage/
│   │   │           │   │   ├── coverage-meta.js
│   │   │           │   │   └── coverage.js
│   │   │           │   ├── css_overview/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── css_overview-meta.js
│   │   │           │   │   └── css_overview.js
│   │   │           │   ├── developer_resources/
│   │   │           │   │   ├── developer_resources-meta.js
│   │   │           │   │   └── developer_resources.js
│   │   │           │   ├── elements/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── elements-meta.js
│   │   │           │   │   └── elements.js
│   │   │           │   ├── emulation/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── emulation-meta.js
│   │   │           │   │   └── emulation.js
│   │   │           │   ├── event_listeners/
│   │   │           │   │   └── event_listeners.js
│   │   │           │   ├── explain/
│   │   │           │   │   ├── explain-meta.js
│   │   │           │   │   └── explain.js
│   │   │           │   ├── issues/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── issues-meta.js
│   │   │           │   │   └── issues.js
│   │   │           │   ├── js_timeline/
│   │   │           │   │   ├── js_timeline-meta.js
│   │   │           │   │   └── js_timeline.js
│   │   │           │   ├── layer_viewer/
│   │   │           │   │   ├── layer_viewer-meta.js
│   │   │           │   │   └── layer_viewer.js
│   │   │           │   ├── layers/
│   │   │           │   │   ├── layers-meta.js
│   │   │           │   │   └── layers.js
│   │   │           │   ├── lighthouse/
│   │   │           │   │   ├── lighthouse-meta.js
│   │   │           │   │   └── lighthouse.js
│   │   │           │   ├── linear_memory_inspector/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── linear_memory_inspector-meta.js
│   │   │           │   │   └── linear_memory_inspector.js
│   │   │           │   ├── media/
│   │   │           │   │   ├── media-meta.js
│   │   │           │   │   └── media.js
│   │   │           │   ├── mobile_throttling/
│   │   │           │   │   ├── mobile_throttling-meta.js
│   │   │           │   │   └── mobile_throttling.js
│   │   │           │   ├── network/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── forward/
│   │   │           │   │   │   └── forward.js
│   │   │           │   │   ├── network-meta.js
│   │   │           │   │   └── network.js
│   │   │           │   ├── performance_monitor/
│   │   │           │   │   ├── performance_monitor-meta.js
│   │   │           │   │   └── performance_monitor.js
│   │   │           │   ├── profiler/
│   │   │           │   │   ├── profiler-meta.js
│   │   │           │   │   └── profiler.js
│   │   │           │   ├── protocol_monitor/
│   │   │           │   │   ├── protocol_monitor-meta.js
│   │   │           │   │   └── protocol_monitor.js
│   │   │           │   ├── react_devtools/
│   │   │           │   │   ├── react_devtools.js
│   │   │           │   │   ├── react_devtools_components-meta.js
│   │   │           │   │   └── react_devtools_profiler-meta.js
│   │   │           │   ├── recorder/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── controllers/
│   │   │           │   │   │   └── controllers.js
│   │   │           │   │   ├── converters/
│   │   │           │   │   │   └── converters.js
│   │   │           │   │   ├── extensions/
│   │   │           │   │   │   └── extensions.js
│   │   │           │   │   ├── injected/
│   │   │           │   │   │   ├── injected.generated.js
│   │   │           │   │   │   └── injected.js
│   │   │           │   │   ├── models/
│   │   │           │   │   │   └── models.js
│   │   │           │   │   ├── recorder-actions/
│   │   │           │   │   │   └── recorder-actions.js
│   │   │           │   │   ├── recorder-meta.js
│   │   │           │   │   ├── recorder.js
│   │   │           │   │   └── util/
│   │   │           │   │       └── util.js
│   │   │           │   ├── rn_welcome/
│   │   │           │   │   ├── rn_welcome-meta.js
│   │   │           │   │   └── rn_welcome.js
│   │   │           │   ├── screencast/
│   │   │           │   │   ├── screencast-meta.js
│   │   │           │   │   └── screencast.js
│   │   │           │   ├── search/
│   │   │           │   │   └── search.js
│   │   │           │   ├── security/
│   │   │           │   │   ├── security-meta.js
│   │   │           │   │   └── security.js
│   │   │           │   ├── sensors/
│   │   │           │   │   ├── sensors-meta.js
│   │   │           │   │   └── sensors.js
│   │   │           │   ├── settings/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── emulation/
│   │   │           │   │   │   ├── components/
│   │   │           │   │   │   │   └── components.js
│   │   │           │   │   │   ├── emulation-meta.js
│   │   │           │   │   │   ├── emulation.js
│   │   │           │   │   │   └── utils/
│   │   │           │   │   │       └── utils.js
│   │   │           │   │   ├── settings-meta.js
│   │   │           │   │   └── settings.js
│   │   │           │   ├── snippets/
│   │   │           │   │   └── snippets.js
│   │   │           │   ├── sources/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   └── components.js
│   │   │           │   │   ├── sources-meta.js
│   │   │           │   │   └── sources.js
│   │   │           │   ├── timeline/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   ├── components.js
│   │   │           │   │   │   └── insights/
│   │   │           │   │   │       └── insights.js
│   │   │           │   │   ├── extensions/
│   │   │           │   │   │   └── extensions.js
│   │   │           │   │   ├── overlays/
│   │   │           │   │   │   ├── components/
│   │   │           │   │   │   │   └── components.js
│   │   │           │   │   │   └── overlays.js
│   │   │           │   │   ├── timeline-meta.js
│   │   │           │   │   ├── timeline.js
│   │   │           │   │   └── utils/
│   │   │           │   │       └── utils.js
│   │   │           │   ├── utils/
│   │   │           │   │   └── utils.js
│   │   │           │   ├── web_audio/
│   │   │           │   │   ├── graph_visualizer/
│   │   │           │   │   │   └── graph_visualizer.js
│   │   │           │   │   ├── web_audio-meta.js
│   │   │           │   │   └── web_audio.js
│   │   │           │   ├── webauthn/
│   │   │           │   │   ├── webauthn-meta.js
│   │   │           │   │   └── webauthn.js
│   │   │           │   └── whats_new/
│   │   │           │       ├── resources/
│   │   │           │       │   └── WNDT.md
│   │   │           │       ├── whats_new-meta.js
│   │   │           │       └── whats_new.js
│   │   │           ├── rehydrated_devtools_app.html
│   │   │           ├── rn_fusebox.html
│   │   │           ├── services/
│   │   │           │   ├── puppeteer/
│   │   │           │   │   └── puppeteer.js
│   │   │           │   ├── trace_bounds/
│   │   │           │   │   └── trace_bounds.js
│   │   │           │   ├── tracing/
│   │   │           │   │   └── tracing.js
│   │   │           │   └── window_bounds/
│   │   │           │       └── window_bounds.js
│   │   │           ├── third_party/
│   │   │           │   ├── acorn/
│   │   │           │   │   └── acorn.js
│   │   │           │   ├── chromium/
│   │   │           │   │   └── client-variations/
│   │   │           │   │       └── client-variations.js
│   │   │           │   ├── codemirror.next/
│   │   │           │   │   ├── chunk/
│   │   │           │   │   │   ├── angular.js
│   │   │           │   │   │   ├── codemirror.js
│   │   │           │   │   │   ├── cpp.js
│   │   │           │   │   │   ├── java.js
│   │   │           │   │   │   ├── legacy.js
│   │   │           │   │   │   ├── less.js
│   │   │           │   │   │   ├── markdown.js
│   │   │           │   │   │   ├── php.js
│   │   │           │   │   │   ├── python.js
│   │   │           │   │   │   ├── sass.js
│   │   │           │   │   │   ├── svelte.js
│   │   │           │   │   │   ├── vue.js
│   │   │           │   │   │   ├── wast.js
│   │   │           │   │   │   └── xml.js
│   │   │           │   │   └── codemirror.next.js
│   │   │           │   ├── csp_evaluator/
│   │   │           │   │   └── csp_evaluator.js
│   │   │           │   ├── diff/
│   │   │           │   │   └── diff.js
│   │   │           │   ├── i18n/
│   │   │           │   │   └── i18n.js
│   │   │           │   ├── intl-messageformat/
│   │   │           │   │   └── intl-messageformat.js
│   │   │           │   ├── json5/
│   │   │           │   │   └── json5.js
│   │   │           │   ├── legacy-javascript/
│   │   │           │   │   └── legacy-javascript.js
│   │   │           │   ├── lighthouse/
│   │   │           │   │   ├── lighthouse-dt-bundle.js
│   │   │           │   │   └── report/
│   │   │           │   │       └── report.js
│   │   │           │   ├── lit/
│   │   │           │   │   └── lit.js
│   │   │           │   ├── marked/
│   │   │           │   │   └── marked.js
│   │   │           │   ├── puppeteer/
│   │   │           │   │   └── puppeteer.js
│   │   │           │   ├── puppeteer-replay/
│   │   │           │   │   └── puppeteer-replay.js
│   │   │           │   ├── react-devtools/
│   │   │           │   │   └── react-devtools.js
│   │   │           │   ├── third-party-web/
│   │   │           │   │   └── third-party-web.js
│   │   │           │   ├── wasmparser/
│   │   │           │   │   └── wasmparser.js
│   │   │           │   └── web-vitals/
│   │   │           │       └── web-vitals.js
│   │   │           ├── ui/
│   │   │           │   ├── components/
│   │   │           │   │   ├── adorners/
│   │   │           │   │   │   └── adorners.js
│   │   │           │   │   ├── buttons/
│   │   │           │   │   │   └── buttons.js
│   │   │           │   │   ├── cards/
│   │   │           │   │   │   └── cards.js
│   │   │           │   │   ├── chrome_link/
│   │   │           │   │   │   └── chrome_link.js
│   │   │           │   │   ├── code_highlighter/
│   │   │           │   │   │   └── code_highlighter.js
│   │   │           │   │   ├── dialogs/
│   │   │           │   │   │   └── dialogs.js
│   │   │           │   │   ├── diff_view/
│   │   │           │   │   │   └── diff_view.js
│   │   │           │   │   ├── expandable_list/
│   │   │           │   │   │   └── expandable_list.js
│   │   │           │   │   ├── floating_button/
│   │   │           │   │   │   └── floating_button.js
│   │   │           │   │   ├── helpers/
│   │   │           │   │   │   └── helpers.js
│   │   │           │   │   ├── highlighting/
│   │   │           │   │   │   └── highlighting.js
│   │   │           │   │   ├── icon_button/
│   │   │           │   │   │   └── icon_button.js
│   │   │           │   │   ├── input/
│   │   │           │   │   │   └── input.js
│   │   │           │   │   ├── issue_counter/
│   │   │           │   │   │   └── issue_counter.js
│   │   │           │   │   ├── legacy_wrapper/
│   │   │           │   │   │   └── legacy_wrapper.js
│   │   │           │   │   ├── linkifier/
│   │   │           │   │   │   └── linkifier.js
│   │   │           │   │   ├── markdown_view/
│   │   │           │   │   │   └── markdown_view.js
│   │   │           │   │   ├── menus/
│   │   │           │   │   │   └── menus.js
│   │   │           │   │   ├── node_text/
│   │   │           │   │   │   └── node_text.js
│   │   │           │   │   ├── panel_feedback/
│   │   │           │   │   │   └── panel_feedback.js
│   │   │           │   │   ├── panel_introduction_steps/
│   │   │           │   │   │   └── panel_introduction_steps.js
│   │   │           │   │   ├── render_coordinator/
│   │   │           │   │   │   └── render_coordinator.js
│   │   │           │   │   ├── report_view/
│   │   │           │   │   │   └── report_view.js
│   │   │           │   │   ├── request_link_icon/
│   │   │           │   │   │   └── request_link_icon.js
│   │   │           │   │   ├── settings/
│   │   │           │   │   │   └── settings.js
│   │   │           │   │   ├── spinners/
│   │   │           │   │   │   └── spinners.js
│   │   │           │   │   ├── srgb_overlay/
│   │   │           │   │   │   └── srgb_overlay.js
│   │   │           │   │   ├── suggestion_input/
│   │   │           │   │   │   └── suggestion_input.js
│   │   │           │   │   ├── survey_link/
│   │   │           │   │   │   └── survey_link.js
│   │   │           │   │   ├── switch/
│   │   │           │   │   │   └── switch.js
│   │   │           │   │   ├── text_editor/
│   │   │           │   │   │   └── text_editor.js
│   │   │           │   │   ├── text_prompt/
│   │   │           │   │   │   └── text_prompt.js
│   │   │           │   │   ├── tooltips/
│   │   │           │   │   │   └── tooltips.js
│   │   │           │   │   └── tree_outline/
│   │   │           │   │       └── tree_outline.js
│   │   │           │   ├── legacy/
│   │   │           │   │   ├── components/
│   │   │           │   │   │   ├── color_picker/
│   │   │           │   │   │   │   └── color_picker.js
│   │   │           │   │   │   ├── cookie_table/
│   │   │           │   │   │   │   └── cookie_table.js
│   │   │           │   │   │   ├── data_grid/
│   │   │           │   │   │   │   └── data_grid.js
│   │   │           │   │   │   ├── inline_editor/
│   │   │           │   │   │   │   └── inline_editor.js
│   │   │           │   │   │   ├── object_ui/
│   │   │           │   │   │   │   ├── object_ui-meta.js
│   │   │           │   │   │   │   └── object_ui.js
│   │   │           │   │   │   ├── perf_ui/
│   │   │           │   │   │   │   ├── perf_ui-meta.js
│   │   │           │   │   │   │   └── perf_ui.js
│   │   │           │   │   │   ├── quick_open/
│   │   │           │   │   │   │   ├── quick_open-meta.js
│   │   │           │   │   │   │   └── quick_open.js
│   │   │           │   │   │   ├── source_frame/
│   │   │           │   │   │   │   ├── source_frame-meta.js
│   │   │           │   │   │   │   └── source_frame.js
│   │   │           │   │   │   └── utils/
│   │   │           │   │   │       └── utils.js
│   │   │           │   │   ├── legacy.js
│   │   │           │   │   └── theme_support/
│   │   │           │   │       └── theme_support.js
│   │   │           │   ├── lit/
│   │   │           │   │   └── lit.js
│   │   │           │   └── visual_logging/
│   │   │           │       └── visual_logging.js
│   │   │           └── worker_app.html
│   │   ├── index.js
│   │   └── package.json
│   ├── debugger-shell/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── __snapshots__/
│   │   │   │   └── dotslash-test.js.snap
│   │   │   ├── dotslash-file-simulating-data-corruption.jsonc
│   │   │   ├── dotslash-file-simulating-network-error.jsonc
│   │   │   ├── dotslash-file-with-missing-platforms.jsonc
│   │   │   ├── dotslash-test.js
│   │   │   └── electron-dependency-test.js
│   │   ├── bin/
│   │   │   └── react-native-devtools
│   │   ├── package.json
│   │   └── src/
│   │       ├── electron/
│   │       │   ├── BuildInfo.js
│   │       │   ├── BuildInfo.js.tpl
│   │       │   ├── MainInstanceEntryPoint.js
│   │       │   ├── SettingsStore.js
│   │       │   ├── index.flow.js
│   │       │   ├── index.js
│   │       │   ├── preload.js
│   │       │   └── resources/
│   │       │       └── icon.icns
│   │       ├── index.js
│   │       └── node/
│   │           ├── __tests__/
│   │           │   └── debugger-shell-test.js
│   │           ├── index.flow.js
│   │           ├── index.js
│   │           └── private/
│   │               └── LaunchUtils.js
│   ├── dev-middleware/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── __tests__/
│   │       │   ├── FetchUtils.js
│   │       │   ├── InspectorDebuggerUtils.js
│   │       │   ├── InspectorDeviceUtils.js
│   │       │   ├── InspectorProtocolUtils.js
│   │       │   ├── InspectorProxyCdpRewritingHacks-test.js
│   │       │   ├── InspectorProxyCdpTransport-test.js
│   │       │   ├── InspectorProxyConcurrentSessions-test.js
│   │       │   ├── InspectorProxyCustomMessageHandler-test.js
│   │       │   ├── InspectorProxyDeviceHandoff-test.js
│   │       │   ├── InspectorProxyHttpApi-test.js
│   │       │   ├── InspectorProxyReactNativeReloads-test.js
│   │       │   ├── ResourceUtils.js
│   │       │   ├── ServerUtils.js
│   │       │   ├── StandaloneFuseboxShell-test.js
│   │       │   ├── __snapshots__/
│   │       │   │   └── InspectorProxyHttpApi-test.js.snap
│   │       │   ├── embedderScriptStub-test.js
│   │       │   ├── getBaseUrlFromRequest-test.js
│   │       │   └── getDevToolsFrontendUrl-test.js
│   │       ├── createDevMiddleware.js
│   │       ├── index.flow.js
│   │       ├── index.js
│   │       ├── inspector-proxy/
│   │       │   ├── CdpDebugLogging.js
│   │       │   ├── CustomMessageHandler.js
│   │       │   ├── Device.js
│   │       │   ├── DeviceEventReporter.js
│   │       │   ├── EventLoopPerfTracker.js
│   │       │   ├── InspectorProxy.js
│   │       │   ├── InspectorProxyHeartbeat.js
│   │       │   ├── __docs__/
│   │       │   │   └── README.md
│   │       │   ├── cdp-types/
│   │       │   │   ├── messages.js
│   │       │   │   └── protocol.js
│   │       │   └── types.js
│   │       ├── middleware/
│   │       │   └── openDebuggerMiddleware.js
│   │       ├── types/
│   │       │   ├── DevToolLauncher.js
│   │       │   ├── EventReporter.js
│   │       │   ├── Experiments.js
│   │       │   ├── Logger.js
│   │       │   └── ReadonlyURL.js
│   │       └── utils/
│   │           ├── DefaultToolLauncher.js
│   │           ├── __mocks__/
│   │           │   └── DefaultToolLauncher.js
│   │           ├── getBaseUrlFromRequest.js
│   │           └── getDevToolsFrontendUrl.js
│   ├── eslint-config-react-native/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── prettier-config-test.js
│   │   ├── flat.js
│   │   ├── index.js
│   │   ├── package.json
│   │   └── shared.js
│   ├── eslint-plugin-react-native/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── eslint-tester.js
│   │   │   ├── no-deep-imports-test.js
│   │   │   └── platform-colors-test.js
│   │   ├── index.js
│   │   ├── no-deep-imports.js
│   │   ├── package.json
│   │   ├── platform-colors.js
│   │   └── utils.js
│   ├── eslint-plugin-specs/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── eslint-tester.js
│   │   │   └── react-native-modules-test.js
│   │   ├── index.js
│   │   ├── package.json
│   │   ├── postpack.js
│   │   ├── prepack.js
│   │   ├── react-native-modules.js
│   │   └── with-babel-register/
│   │       ├── disk-cache.js
│   │       └── index.js
│   ├── gradle-plugin/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── build.gradle.kts
│   │   ├── gradle/
│   │   │   ├── libs.versions.toml
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── package.json
│   │   ├── react-native-gradle-plugin/
│   │   │   ├── README.md
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── ReactExtension.kt
│   │   │       │                   ├── ReactPlugin.kt
│   │   │       │                   ├── ReactRootProjectPlugin.kt
│   │   │       │                   ├── TaskConfiguration.kt
│   │   │       │                   ├── internal/
│   │   │       │                   │   └── PrivateReactExtension.kt
│   │   │       │                   ├── tasks/
│   │   │       │                   │   ├── BundleHermesCTask.kt
│   │   │       │                   │   ├── GenerateAutolinkingNewArchitecturesFileTask.kt
│   │   │       │                   │   ├── GenerateCodegenArtifactsTask.kt
│   │   │       │                   │   ├── GenerateCodegenSchemaTask.kt
│   │   │       │                   │   ├── GenerateEntryPointTask.kt
│   │   │       │                   │   ├── GeneratePackageListTask.kt
│   │   │       │                   │   └── internal/
│   │   │       │                   │       ├── BuildCodegenCLITask.kt
│   │   │       │                   │       ├── CustomExecTask.kt
│   │   │       │                   │       ├── PrepareBoostTask.kt
│   │   │       │                   │       ├── PrepareGflagsTask.kt
│   │   │       │                   │       ├── PrepareGlogTask.kt
│   │   │       │                   │       ├── PreparePrefabHeadersTask.kt
│   │   │       │                   │       └── utils/
│   │   │       │                   │           └── PrefabPreprocessingEntry.kt
│   │   │       │                   └── utils/
│   │   │       │                       ├── AgpConfiguratorUtils.kt
│   │   │       │                       ├── BackwardCompatUtils.kt
│   │   │       │                       ├── DependencyUtils.kt
│   │   │       │                       ├── FileUtils.kt
│   │   │       │                       ├── JdkConfiguratorUtils.kt
│   │   │       │                       ├── NdkConfiguratorUtils.kt
│   │   │       │                       ├── PathUtils.kt
│   │   │       │                       ├── ProjectUtils.kt
│   │   │       │                       └── PropertyUtils.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           ├── ReactExtensionTest.kt
│   │   │                           ├── TestReactExtension.kt
│   │   │                           ├── model/
│   │   │                           │   └── ModelAutolinkingDependenciesJsonTest.kt
│   │   │                           ├── tasks/
│   │   │                           │   ├── BundleHermesCTaskTest.kt
│   │   │                           │   ├── GenerateAutolinkingNewArchitecturesFileTaskTest.kt
│   │   │                           │   ├── GenerateCodegenArtifactsTaskTest.kt
│   │   │                           │   ├── GenerateCodegenSchemaTaskTest.kt
│   │   │                           │   ├── GenerateEntryPointTaskTest.kt
│   │   │                           │   ├── GeneratePackageListTaskTest.kt
│   │   │                           │   └── internal/
│   │   │                           │       ├── BuildCodegenCLITaskTest.kt
│   │   │                           │       ├── CustomExecTaskTest.kt
│   │   │                           │       ├── PrepareBoostTaskTest.kt
│   │   │                           │       ├── PrepareGflagsTaskTest.kt
│   │   │                           │       ├── PrepareGlogTaskTest.kt
│   │   │                           │       ├── PreparePrefabHeadersTaskTest.kt
│   │   │                           │       └── utils/
│   │   │                           │           └── PrefabPreprocessingEntryTest.kt
│   │   │                           ├── tests/
│   │   │                           │   └── TaskTestUtils.kt
│   │   │                           └── utils/
│   │   │                               ├── AgpConfiguratorUtilsTest.kt
│   │   │                               ├── BackwardCompatUtilsTest.kt
│   │   │                               ├── DependencyUtilsTest.kt
│   │   │                               ├── FileUtilsTest.kt
│   │   │                               ├── NdkConfiguratorUtilsTest.kt
│   │   │                               ├── PathUtilsTest.kt
│   │   │                               └── ProjectUtilsTest.kt
│   │   ├── settings-plugin/
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── ReactSettingsExtension.kt
│   │   │       │                   └── ReactSettingsPlugin.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           └── ReactSettingsExtensionTest.kt
│   │   ├── settings.gradle.kts
│   │   ├── shared/
│   │   │   ├── build.gradle.kts
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   └── kotlin/
│   │   │       │       └── com/
│   │   │       │           └── facebook/
│   │   │       │               └── react/
│   │   │       │                   ├── model/
│   │   │       │                   │   ├── ModelAutolinkingAndroidProjectJson.kt
│   │   │       │                   │   ├── ModelAutolinkingConfigJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesPlatformAndroidJson.kt
│   │   │       │                   │   ├── ModelAutolinkingDependenciesPlatformJson.kt
│   │   │       │                   │   ├── ModelAutolinkingProjectJson.kt
│   │   │       │                   │   ├── ModelCodegenConfig.kt
│   │   │       │                   │   ├── ModelCodegenConfigAndroid.kt
│   │   │       │                   │   └── ModelPackageJson.kt
│   │   │       │                   └── utils/
│   │   │       │                       ├── JsonUtils.kt
│   │   │       │                       ├── KotlinStdlibCompatUtils.kt
│   │   │       │                       ├── Os.kt
│   │   │       │                       └── TaskUtils.kt
│   │   │       └── test/
│   │   │           └── kotlin/
│   │   │               └── com/
│   │   │                   └── facebook/
│   │   │                       └── react/
│   │   │                           └── utils/
│   │   │                               ├── JsonUtilsTest.kt
│   │   │                               ├── KotlinStdlibCompatUtilsTest.kt
│   │   │                               ├── OsTest.kt
│   │   │                               └── TaskUtilsTest.kt
│   │   └── shared-testutil/
│   │       ├── build.gradle.kts
│   │       └── src/
│   │           └── main/
│   │               └── kotlin/
│   │                   └── com/
│   │                       └── facebook/
│   │                           └── react/
│   │                               └── tests/
│   │                                   ├── OsRule.kt
│   │                                   └── WithOs.kt
│   ├── jest-preset/
│   │   ├── README.md
│   │   ├── jest/
│   │   │   ├── MockNativeMethods.js
│   │   │   ├── RefreshControlMock.js
│   │   │   ├── __tests__/
│   │   │   │   └── setup-test.js
│   │   │   ├── assetFileTransformer.js
│   │   │   ├── local-setup.js
│   │   │   ├── mock.js
│   │   │   ├── mockComponent.js
│   │   │   ├── mockNativeComponent.js
│   │   │   ├── mocks/
│   │   │   │   ├── AccessibilityInfo.js
│   │   │   │   ├── ActivityIndicator.js
│   │   │   │   ├── AppState.js
│   │   │   │   ├── Clipboard.js
│   │   │   │   ├── Image.js
│   │   │   │   ├── InitializeCore.js
│   │   │   │   ├── Linking.js
│   │   │   │   ├── Modal.js
│   │   │   │   ├── NativeComponentRegistry.js
│   │   │   │   ├── NativeModules.js
│   │   │   │   ├── RefreshControl.js
│   │   │   │   ├── RendererProxy.js
│   │   │   │   ├── ScrollView.js
│   │   │   │   ├── Text.js
│   │   │   │   ├── TextInput.js
│   │   │   │   ├── UIManager.js
│   │   │   │   ├── Vibration.js
│   │   │   │   ├── View.js
│   │   │   │   ├── ViewNativeComponent.js
│   │   │   │   ├── requireNativeComponent.js
│   │   │   │   └── useColorScheme.js
│   │   │   ├── react-native-env.js
│   │   │   ├── renderer.js
│   │   │   ├── resolver.js
│   │   │   └── setup.js
│   │   ├── jest-preset.js
│   │   └── package.json
│   ├── metro-config/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── index.flow.js
│   │       └── index.js
│   ├── new-app-screen/
│   │   ├── README.md
│   │   ├── package.json
│   │   └── src/
│   │       ├── Links.js
│   │       ├── NewAppScreen.js
│   │       ├── Theme.js
│   │       ├── index.d.ts
│   │       └── index.js
│   ├── normalize-color/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   └── normalizeColor-test.js
│   │   ├── index.js
│   │   ├── index.js.flow
│   │   └── package.json
│   ├── polyfills/
│   │   ├── README.md
│   │   ├── __tests__/
│   │   │   ├── consoleTable-itest.js
│   │   │   └── consoleTimeStamp-itest.js
│   │   ├── console.js
│   │   ├── error-guard.js
│   │   ├── index.js
│   │   └── package.json
│   ├── react-native/
│   │   ├── .doxygen.config.template
│   │   ├── LICENSE
│   │   ├── Libraries/
│   │   │   ├── ActionSheetIOS/
│   │   │   │   ├── ActionSheetIOS.d.ts
│   │   │   │   ├── ActionSheetIOS.js
│   │   │   │   ├── NativeActionSheetManager.js
│   │   │   │   └── React-RCTActionSheet.podspec
│   │   │   ├── Alert/
│   │   │   │   ├── Alert.d.ts
│   │   │   │   ├── Alert.js
│   │   │   │   ├── NativeAlertManager.js
│   │   │   │   ├── RCTAlertManager.android.js
│   │   │   │   ├── RCTAlertManager.ios.js
│   │   │   │   ├── RCTAlertManager.js
│   │   │   │   └── RCTAlertManager.js.flow
│   │   │   ├── Animated/
│   │   │   │   ├── Animated.d.ts
│   │   │   │   ├── Animated.js
│   │   │   │   ├── Animated.js.flow
│   │   │   │   ├── AnimatedEvent.js
│   │   │   │   ├── AnimatedExports.js
│   │   │   │   ├── AnimatedExports.js.flow
│   │   │   │   ├── AnimatedImplementation.js
│   │   │   │   ├── AnimatedMock.js
│   │   │   │   ├── AnimatedPlatformConfig.js
│   │   │   │   ├── Easing.d.ts
│   │   │   │   ├── Easing.js
│   │   │   │   ├── NativeAnimatedAllowlist.js
│   │   │   │   ├── NativeAnimatedModule.js
│   │   │   │   ├── NativeAnimatedTurboModule.js
│   │   │   │   ├── SpringConfig.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── Animated-benchmark-itest.js
│   │   │   │   │   ├── Animated-itest.js
│   │   │   │   │   ├── Animated-test.js
│   │   │   │   │   ├── Animated-web-test.js
│   │   │   │   │   ├── AnimatedBackend-benchmark-itest.js
│   │   │   │   │   ├── AnimatedBackend-itest.js
│   │   │   │   │   ├── AnimatedBackendSuspense-itest.js
│   │   │   │   │   ├── AnimatedMock-test.js
│   │   │   │   │   ├── AnimatedObject-test.js
│   │   │   │   │   ├── AnimatedProps-test.js
│   │   │   │   │   ├── AnimatedValue-test.js
│   │   │   │   │   ├── Easing-test.js
│   │   │   │   │   ├── Interpolation-test.js
│   │   │   │   │   ├── NativeAnimatedAllowlist-test.js
│   │   │   │   │   ├── TimingAnimation-test.js
│   │   │   │   │   └── bezier-test.js
│   │   │   │   ├── animations/
│   │   │   │   │   ├── Animation.js
│   │   │   │   │   ├── DecayAnimation.js
│   │   │   │   │   ├── SpringAnimation.js
│   │   │   │   │   └── TimingAnimation.js
│   │   │   │   ├── bezier.js
│   │   │   │   ├── components/
│   │   │   │   │   ├── AnimatedFlatList.js
│   │   │   │   │   ├── AnimatedImage.js
│   │   │   │   │   ├── AnimatedScrollView.js
│   │   │   │   │   ├── AnimatedSectionList.js
│   │   │   │   │   ├── AnimatedText.js
│   │   │   │   │   └── AnimatedView.js
│   │   │   │   ├── createAnimatedComponent.js
│   │   │   │   ├── nodes/
│   │   │   │   │   ├── AnimatedAddition.js
│   │   │   │   │   ├── AnimatedColor.js
│   │   │   │   │   ├── AnimatedDiffClamp.js
│   │   │   │   │   ├── AnimatedDivision.js
│   │   │   │   │   ├── AnimatedInterpolation.js
│   │   │   │   │   ├── AnimatedModulo.js
│   │   │   │   │   ├── AnimatedMultiplication.js
│   │   │   │   │   ├── AnimatedNode.js
│   │   │   │   │   ├── AnimatedObject.js
│   │   │   │   │   ├── AnimatedProps.js
│   │   │   │   │   ├── AnimatedStyle.js
│   │   │   │   │   ├── AnimatedSubtraction.js
│   │   │   │   │   ├── AnimatedTracking.js
│   │   │   │   │   ├── AnimatedTransform.js
│   │   │   │   │   ├── AnimatedValue.js
│   │   │   │   │   ├── AnimatedValueXY.js
│   │   │   │   │   └── AnimatedWithChildren.js
│   │   │   │   ├── shouldUseTurboAnimatedModule.js
│   │   │   │   ├── useAnimatedColor.d.ts
│   │   │   │   ├── useAnimatedColor.js
│   │   │   │   ├── useAnimatedProps.js
│   │   │   │   ├── useAnimatedValue.d.ts
│   │   │   │   ├── useAnimatedValue.js
│   │   │   │   ├── useAnimatedValueXY.d.ts
│   │   │   │   └── useAnimatedValueXY.js
│   │   │   ├── AppDelegate/
│   │   │   │   ├── RCTAppDelegate.h
│   │   │   │   ├── RCTAppDelegate.mm
│   │   │   │   ├── RCTAppSetupUtils.h
│   │   │   │   ├── RCTAppSetupUtils.mm
│   │   │   │   ├── RCTArchConfiguratorProtocol.h
│   │   │   │   ├── RCTDefaultReactNativeFactoryDelegate.h
│   │   │   │   ├── RCTDefaultReactNativeFactoryDelegate.mm
│   │   │   │   ├── RCTDependencyProvider.h
│   │   │   │   ├── RCTJSRuntimeConfiguratorProtocol.h
│   │   │   │   ├── RCTReactNativeFactory.h
│   │   │   │   ├── RCTReactNativeFactory.mm
│   │   │   │   ├── RCTRootViewFactory.h
│   │   │   │   ├── RCTRootViewFactory.mm
│   │   │   │   ├── RCTUIConfiguratorProtocol.h
│   │   │   │   └── React-RCTAppDelegate.podspec
│   │   │   ├── AppState/
│   │   │   │   ├── AppState.d.ts
│   │   │   │   ├── AppState.js
│   │   │   │   └── NativeAppState.js
│   │   │   ├── BatchedBridge/
│   │   │   │   ├── BatchedBridge.js
│   │   │   │   ├── MessageQueue.js
│   │   │   │   ├── NativeModules.d.ts
│   │   │   │   ├── NativeModules.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── MessageQueueTestConfig.js
│   │   │   │   │   └── MessageQueueTestModule.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── MessageQueue-test.js
│   │   │   │       └── NativeModules-test.js
│   │   │   ├── Blob/
│   │   │   │   ├── Blob.js
│   │   │   │   ├── BlobManager.js
│   │   │   │   ├── BlobRegistry.js
│   │   │   │   ├── BlobTypes.js
│   │   │   │   ├── File.js
│   │   │   │   ├── FileReader.js
│   │   │   │   ├── NativeBlobModule.js
│   │   │   │   ├── NativeFileReaderModule.js
│   │   │   │   ├── RCTBlobCollector.h
│   │   │   │   ├── RCTBlobCollector.mm
│   │   │   │   ├── RCTBlobManager.h
│   │   │   │   ├── RCTBlobManager.mm
│   │   │   │   ├── RCTBlobPlugins.h
│   │   │   │   ├── RCTBlobPlugins.mm
│   │   │   │   ├── RCTFileReaderModule.h
│   │   │   │   ├── RCTFileReaderModule.mm
│   │   │   │   ├── React-RCTBlob.podspec
│   │   │   │   ├── URL.js
│   │   │   │   ├── URLSearchParams.js
│   │   │   │   ├── URLSearchParams.js.flow
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── BlobModule.js
│   │   │   │   │   └── FileReaderModule.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Blob-test.js
│   │   │   │       ├── BlobManager-test.js
│   │   │   │       ├── BlobRegistry-test.js
│   │   │   │       ├── File-test.js
│   │   │   │       ├── FileReader-test.js
│   │   │   │       └── URL-test.js
│   │   │   ├── Components/
│   │   │   │   ├── AccessibilityInfo/
│   │   │   │   │   ├── AccessibilityInfo.d.ts
│   │   │   │   │   ├── AccessibilityInfo.js
│   │   │   │   │   ├── NativeAccessibilityInfo.js
│   │   │   │   │   ├── NativeAccessibilityManager.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── AccessibilityInfo-test.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.android.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.ios.js
│   │   │   │   │   ├── legacySendAccessibilityEvent.js
│   │   │   │   │   └── legacySendAccessibilityEvent.js.flow
│   │   │   │   ├── ActivityIndicator/
│   │   │   │   │   ├── ActivityIndicator.d.ts
│   │   │   │   │   ├── ActivityIndicator.js
│   │   │   │   │   ├── ActivityIndicatorViewNativeComponent.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── ActivityIndicator-itest.js
│   │   │   │   │       ├── ActivityIndicator-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── ActivityIndicator-test.js.snap
│   │   │   │   ├── Button.d.ts
│   │   │   │   ├── Button.js
│   │   │   │   ├── Clipboard/
│   │   │   │   │   ├── Clipboard.d.ts
│   │   │   │   │   ├── Clipboard.js
│   │   │   │   │   └── NativeClipboard.js
│   │   │   │   ├── DrawerAndroid/
│   │   │   │   │   ├── AndroidDrawerLayoutNativeComponent.js
│   │   │   │   │   ├── DrawerLayoutAndroid.android.js
│   │   │   │   │   ├── DrawerLayoutAndroid.d.ts
│   │   │   │   │   ├── DrawerLayoutAndroid.ios.js
│   │   │   │   │   ├── DrawerLayoutAndroid.js
│   │   │   │   │   ├── DrawerLayoutAndroid.js.flow
│   │   │   │   │   ├── DrawerLayoutAndroidFallback.js
│   │   │   │   │   ├── DrawerLayoutAndroidTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── DrawerAndroid-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── DrawerAndroid-test.js.snap
│   │   │   │   ├── Keyboard/
│   │   │   │   │   ├── Keyboard.d.ts
│   │   │   │   │   ├── Keyboard.js
│   │   │   │   │   ├── KeyboardAvoidingView.d.ts
│   │   │   │   │   ├── KeyboardAvoidingView.js
│   │   │   │   │   ├── NativeKeyboardObserver.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── Keyboard-test.js
│   │   │   │   ├── LayoutConformance/
│   │   │   │   │   ├── LayoutConformance.d.ts
│   │   │   │   │   ├── LayoutConformance.js
│   │   │   │   │   └── LayoutConformanceNativeComponent.js
│   │   │   │   ├── Pressable/
│   │   │   │   │   ├── Pressable.d.ts
│   │   │   │   │   ├── Pressable.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── Pressable-itest.js
│   │   │   │   │   │   ├── Pressable-test.js
│   │   │   │   │   │   └── __snapshots__/
│   │   │   │   │   │       └── Pressable-test.js.snap
│   │   │   │   │   └── useAndroidRippleForView.js
│   │   │   │   ├── ProgressBarAndroid/
│   │   │   │   │   ├── ProgressBarAndroid.android.js
│   │   │   │   │   ├── ProgressBarAndroid.d.ts
│   │   │   │   │   ├── ProgressBarAndroid.js
│   │   │   │   │   ├── ProgressBarAndroidNativeComponent.js
│   │   │   │   │   ├── ProgressBarAndroidTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── ProgressBarAndroid-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── ProgressBarAndroid-test.js.snap
│   │   │   │   ├── RefreshControl/
│   │   │   │   │   ├── AndroidSwipeRefreshLayoutNativeComponent.js
│   │   │   │   │   ├── PullToRefreshViewNativeComponent.js
│   │   │   │   │   ├── RefreshControl.d.ts
│   │   │   │   │   └── RefreshControl.js
│   │   │   │   ├── SafeAreaView/
│   │   │   │   │   ├── RCTSafeAreaViewNativeComponent.js
│   │   │   │   │   ├── SafeAreaView.d.ts
│   │   │   │   │   ├── SafeAreaView.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── SafeAreaView-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           └── SafeAreaView-test.js.snap
│   │   │   │   ├── ScrollView/
│   │   │   │   │   ├── AndroidHorizontalScrollContentViewNativeComponent.js
│   │   │   │   │   ├── AndroidHorizontalScrollViewNativeComponent.js
│   │   │   │   │   ├── ScrollContentViewNativeComponent.js
│   │   │   │   │   ├── ScrollView.d.ts
│   │   │   │   │   ├── ScrollView.js
│   │   │   │   │   ├── ScrollViewCommands.js
│   │   │   │   │   ├── ScrollViewContext.js
│   │   │   │   │   ├── ScrollViewNativeComponent.js
│   │   │   │   │   ├── ScrollViewNativeComponentType.js
│   │   │   │   │   ├── ScrollViewStickyHeader.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── ScrollView-itest.js
│   │   │   │   │   │   ├── ScrollView-test.js
│   │   │   │   │   │   ├── ScrollView-viewCulling-itest.js
│   │   │   │   │   │   └── __snapshots__/
│   │   │   │   │   │       └── ScrollView-test.js.snap
│   │   │   │   │   └── processDecelerationRate.js
│   │   │   │   ├── Sound/
│   │   │   │   │   ├── NativeSoundManager.js
│   │   │   │   │   └── SoundManager.js
│   │   │   │   ├── StaticRenderer.js
│   │   │   │   ├── StatusBar/
│   │   │   │   │   ├── NativeStatusBarManagerAndroid.js
│   │   │   │   │   ├── NativeStatusBarManagerIOS.js
│   │   │   │   │   ├── StatusBar.d.ts
│   │   │   │   │   ├── StatusBar.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── StatusBar-test.js
│   │   │   │   ├── Switch/
│   │   │   │   │   ├── AndroidSwitchNativeComponent.js
│   │   │   │   │   ├── Switch.d.ts
│   │   │   │   │   ├── Switch.js
│   │   │   │   │   ├── SwitchNativeComponent.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       └── Switch-itest.js
│   │   │   │   ├── TextInput/
│   │   │   │   │   ├── AndroidTextInputNativeComponent.js
│   │   │   │   │   ├── InputAccessoryView.d.ts
│   │   │   │   │   ├── InputAccessoryView.js
│   │   │   │   │   ├── RCTInputAccessoryViewNativeComponent.js
│   │   │   │   │   ├── RCTMultilineTextInputNativeComponent.js
│   │   │   │   │   ├── RCTSingelineTextInputNativeComponent.js
│   │   │   │   │   ├── RCTTextInputViewConfig.js
│   │   │   │   │   ├── TextInput.d.ts
│   │   │   │   │   ├── TextInput.flow.js
│   │   │   │   │   ├── TextInput.js
│   │   │   │   │   ├── TextInputNativeCommands.js
│   │   │   │   │   ├── TextInputState.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── InputAccessoryView-test.js
│   │   │   │   │       ├── TextInput-itest.js
│   │   │   │   │       ├── TextInput-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── InputAccessoryView-test.js.snap
│   │   │   │   │           └── TextInput-test.js.snap
│   │   │   │   ├── ToastAndroid/
│   │   │   │   │   ├── NativeToastAndroid.js
│   │   │   │   │   ├── ToastAndroid.android.js
│   │   │   │   │   ├── ToastAndroid.d.ts
│   │   │   │   │   ├── ToastAndroid.ios.js
│   │   │   │   │   ├── ToastAndroid.js
│   │   │   │   │   ├── ToastAndroid.js.flow
│   │   │   │   │   └── ToastAndroidFallback.js
│   │   │   │   ├── Touchable/
│   │   │   │   │   ├── BoundingDimensions.js
│   │   │   │   │   ├── PooledClass.js
│   │   │   │   │   ├── Position.js
│   │   │   │   │   ├── Touchable.d.ts
│   │   │   │   │   ├── Touchable.js
│   │   │   │   │   ├── TouchableBounce.js
│   │   │   │   │   ├── TouchableHighlight.d.ts
│   │   │   │   │   ├── TouchableHighlight.js
│   │   │   │   │   ├── TouchableNativeFeedback.d.ts
│   │   │   │   │   ├── TouchableNativeFeedback.js
│   │   │   │   │   ├── TouchableOpacity.d.ts
│   │   │   │   │   ├── TouchableOpacity.js
│   │   │   │   │   ├── TouchableWithoutFeedback.d.ts
│   │   │   │   │   ├── TouchableWithoutFeedback.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── TouchableHighlight-itest.js
│   │   │   │   │       ├── TouchableNativeFeedback-test.js
│   │   │   │   │       ├── TouchableOpacity-itest.js
│   │   │   │   │       ├── TouchableOpacity-test.js
│   │   │   │   │       ├── TouchableWithoutFeedback-itest.js
│   │   │   │   │       ├── TouchableWithoutFeedback-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── TouchableNativeFeedback-test.js.snap
│   │   │   │   │           ├── TouchableOpacity-test.js.snap
│   │   │   │   │           └── TouchableWithoutFeedback-test.js.snap
│   │   │   │   ├── UnimplementedViews/
│   │   │   │   │   ├── UnimplementedNativeViewNativeComponent.js
│   │   │   │   │   └── UnimplementedView.js
│   │   │   │   ├── View/
│   │   │   │   │   ├── ReactNativeStyleAttributes.js
│   │   │   │   │   ├── View.d.ts
│   │   │   │   │   ├── View.js
│   │   │   │   │   ├── ViewAccessibility.d.ts
│   │   │   │   │   ├── ViewAccessibility.js
│   │   │   │   │   ├── ViewNativeComponent.js
│   │   │   │   │   ├── ViewPropTypes.d.ts
│   │   │   │   │   ├── ViewPropTypes.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── FantomEventHandlers-itest.js
│   │   │   │   │       ├── View-benchmark-itest.js
│   │   │   │   │       ├── View-itest.js
│   │   │   │   │       ├── View-test.js
│   │   │   │   │       └── View-vs-ViewNativeComponent-benchmark-itest.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Button-itest.js
│   │   │   │       ├── Button-test.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── Button-test.js.snap
│   │   │   ├── Core/
│   │   │   │   ├── Devtools/
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── loadBundleFromServer-test.js
│   │   │   │   │   │   ├── parseErrorStack-test.js
│   │   │   │   │   │   └── parseHermesStack-test.js
│   │   │   │   │   ├── getDevServer.js
│   │   │   │   │   ├── loadBundleFromServer.js
│   │   │   │   │   ├── openFileInEditor.js
│   │   │   │   │   ├── openURLInBrowser.js
│   │   │   │   │   ├── parseErrorStack.js
│   │   │   │   │   ├── parseHermesStack.js
│   │   │   │   │   └── symbolicateStackTrace.js
│   │   │   │   ├── ExceptionsManager.js
│   │   │   │   ├── ExtendedError.js
│   │   │   │   ├── InitializeCore.js
│   │   │   │   ├── NativeExceptionsManager.js
│   │   │   │   ├── RawEventEmitter.js
│   │   │   │   ├── ReactFiberErrorDialog.js
│   │   │   │   ├── ReactNativeVersion.js
│   │   │   │   ├── ReactNativeVersionCheck.js
│   │   │   │   ├── SegmentFetcher/
│   │   │   │   │   └── NativeSegmentFetcher.js
│   │   │   │   ├── Timers/
│   │   │   │   │   ├── JSTimers.js
│   │   │   │   │   ├── NativeTiming.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── JSTimers-test.js
│   │   │   │   │   ├── immediateShim.js
│   │   │   │   │   └── queueMicrotask.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   └── NativeExceptionsManager.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── ExceptionsManager-test.js
│   │   │   │   │   └── ReactNativeVersionCheck-test.js
│   │   │   │   ├── checkNativeVersion.js
│   │   │   │   ├── polyfillPromise.js
│   │   │   │   ├── registerCallableModule.d.ts
│   │   │   │   ├── registerCallableModule.js
│   │   │   │   ├── setUpAlert.js
│   │   │   │   ├── setUpBatchedBridge.js
│   │   │   │   ├── setUpDeveloperTools.js
│   │   │   │   ├── setUpErrorHandling.js
│   │   │   │   ├── setUpGlobals.js
│   │   │   │   ├── setUpNavigator.js
│   │   │   │   ├── setUpPerformance.js
│   │   │   │   ├── setUpReactDevTools.js
│   │   │   │   ├── setUpReactRefresh.js
│   │   │   │   ├── setUpRegeneratorRuntime.js
│   │   │   │   ├── setUpSegmentFetcher.js
│   │   │   │   ├── setUpTimers.js
│   │   │   │   └── setUpXHR.js
│   │   │   ├── Debugging/
│   │   │   │   ├── DebuggingOverlay.js
│   │   │   │   ├── DebuggingOverlayNativeComponent.js
│   │   │   │   ├── DebuggingOverlayRegistry.js
│   │   │   │   └── useSubscribeToDebuggingOverlayRegistry.js
│   │   │   ├── EventEmitter/
│   │   │   │   ├── NativeEventEmitter.d.ts
│   │   │   │   ├── NativeEventEmitter.js
│   │   │   │   ├── RCTDeviceEventEmitter.d.ts
│   │   │   │   ├── RCTDeviceEventEmitter.js
│   │   │   │   ├── RCTEventEmitter.js
│   │   │   │   ├── RCTNativeAppEventEmitter.d.ts
│   │   │   │   ├── RCTNativeAppEventEmitter.js
│   │   │   │   └── __mocks__/
│   │   │   │       └── NativeEventEmitter.js
│   │   │   ├── FBLazyVector/
│   │   │   │   ├── FBLazyVector/
│   │   │   │   │   ├── FBLazyIterator.h
│   │   │   │   │   └── FBLazyVector.h
│   │   │   │   └── FBLazyVector.podspec
│   │   │   ├── Image/
│   │   │   │   ├── AssetRegistry.js
│   │   │   │   ├── AssetSourceResolver.js
│   │   │   │   ├── AssetUtils.js
│   │   │   │   ├── Image.android.js
│   │   │   │   ├── Image.d.ts
│   │   │   │   ├── Image.ios.js
│   │   │   │   ├── Image.js
│   │   │   │   ├── Image.js.flow
│   │   │   │   ├── ImageAnalyticsTagContext.js
│   │   │   │   ├── ImageBackground.js
│   │   │   │   ├── ImageInjection.js
│   │   │   │   ├── ImageProps.js
│   │   │   │   ├── ImageResizeMode.d.ts
│   │   │   │   ├── ImageResizeMode.js
│   │   │   │   ├── ImageSource.d.ts
│   │   │   │   ├── ImageSource.js
│   │   │   │   ├── ImageSourceUtils.js
│   │   │   │   ├── ImageTypes.flow.js
│   │   │   │   ├── ImageUtils.js
│   │   │   │   ├── ImageViewNativeComponent.js
│   │   │   │   ├── NativeImageEditor.js
│   │   │   │   ├── NativeImageLoaderAndroid.js
│   │   │   │   ├── NativeImageLoaderIOS.js
│   │   │   │   ├── NativeImageStoreAndroid.js
│   │   │   │   ├── NativeImageStoreIOS.js
│   │   │   │   ├── RCTAnimatedImage.h
│   │   │   │   ├── RCTAnimatedImage.mm
│   │   │   │   ├── RCTBundleAssetImageLoader.h
│   │   │   │   ├── RCTBundleAssetImageLoader.mm
│   │   │   │   ├── RCTDisplayWeakRefreshable.h
│   │   │   │   ├── RCTDisplayWeakRefreshable.mm
│   │   │   │   ├── RCTGIFImageDecoder.h
│   │   │   │   ├── RCTGIFImageDecoder.mm
│   │   │   │   ├── RCTImageBlurUtils.h
│   │   │   │   ├── RCTImageBlurUtils.mm
│   │   │   │   ├── RCTImageCache.h
│   │   │   │   ├── RCTImageCache.mm
│   │   │   │   ├── RCTImageDataDecoder.h
│   │   │   │   ├── RCTImageEditingManager.h
│   │   │   │   ├── RCTImageEditingManager.mm
│   │   │   │   ├── RCTImageLoader.h
│   │   │   │   ├── RCTImageLoader.mm
│   │   │   │   ├── RCTImageLoaderLoggable.h
│   │   │   │   ├── RCTImageLoaderProtocol.h
│   │   │   │   ├── RCTImageLoaderWithAttributionProtocol.h
│   │   │   │   ├── RCTImagePlugins.h
│   │   │   │   ├── RCTImagePlugins.mm
│   │   │   │   ├── RCTImageShadowView.h
│   │   │   │   ├── RCTImageShadowView.mm
│   │   │   │   ├── RCTImageStoreManager.h
│   │   │   │   ├── RCTImageStoreManager.mm
│   │   │   │   ├── RCTImageURLLoader.h
│   │   │   │   ├── RCTImageURLLoaderWithAttribution.h
│   │   │   │   ├── RCTImageURLLoaderWithAttribution.mm
│   │   │   │   ├── RCTImageUtils.h
│   │   │   │   ├── RCTImageUtils.mm
│   │   │   │   ├── RCTImageView.h
│   │   │   │   ├── RCTImageView.mm
│   │   │   │   ├── RCTImageViewManager.h
│   │   │   │   ├── RCTImageViewManager.mm
│   │   │   │   ├── RCTLocalAssetImageLoader.h
│   │   │   │   ├── RCTLocalAssetImageLoader.mm
│   │   │   │   ├── RCTResizeMode.h
│   │   │   │   ├── RCTResizeMode.mm
│   │   │   │   ├── RCTUIImageViewAnimated.h
│   │   │   │   ├── RCTUIImageViewAnimated.mm
│   │   │   │   ├── React-RCTImage.podspec
│   │   │   │   ├── RelativeImageStub.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── AssetUtils-test.js
│   │   │   │   │   ├── Image-benchmark-itest.js
│   │   │   │   │   ├── Image-itest.js
│   │   │   │   │   ├── Image-test.js
│   │   │   │   │   ├── ImageBackground-itest.js
│   │   │   │   │   ├── ImageBackground-test.js
│   │   │   │   │   ├── ImageSourceUtils-test.js
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   ├── Image-test.js.snap
│   │   │   │   │   │   ├── ImageBackground-test.js.snap
│   │   │   │   │   │   └── assetRelativePathInSnapshot-test.js.snap
│   │   │   │   │   ├── assetRelativePathInSnapshot-test.js
│   │   │   │   │   └── resolveAssetSource-test.js
│   │   │   │   ├── nativeImageSource.js
│   │   │   │   └── resolveAssetSource.js
│   │   │   ├── Interaction/
│   │   │   │   ├── FrameRateLogger.js
│   │   │   │   ├── InteractionManager.d.ts
│   │   │   │   ├── InteractionManager.js
│   │   │   │   ├── NativeFrameRateLogger.js
│   │   │   │   ├── PanResponder.d.ts
│   │   │   │   ├── PanResponder.js
│   │   │   │   └── TouchHistoryMath.js
│   │   │   ├── LayoutAnimation/
│   │   │   │   ├── LayoutAnimation.d.ts
│   │   │   │   └── LayoutAnimation.js
│   │   │   ├── Linking/
│   │   │   │   ├── Linking.d.ts
│   │   │   │   ├── Linking.js
│   │   │   │   ├── NativeIntentAndroid.js
│   │   │   │   └── NativeLinkingManager.js
│   │   │   ├── LinkingIOS/
│   │   │   │   ├── RCTLinkingManager.h
│   │   │   │   ├── RCTLinkingManager.mm
│   │   │   │   ├── RCTLinkingPlugins.h
│   │   │   │   ├── RCTLinkingPlugins.mm
│   │   │   │   └── React-RCTLinking.podspec
│   │   │   ├── Lists/
│   │   │   │   ├── FillRateHelper.js
│   │   │   │   ├── FlatList.d.ts
│   │   │   │   ├── FlatList.js
│   │   │   │   ├── SectionList.d.ts
│   │   │   │   ├── SectionList.js
│   │   │   │   ├── SectionListModern.js
│   │   │   │   ├── ViewabilityHelper.js
│   │   │   │   ├── VirtualizeUtils.js
│   │   │   │   ├── VirtualizedList.js
│   │   │   │   ├── VirtualizedListContext.js
│   │   │   │   ├── VirtualizedSectionList.js
│   │   │   │   ├── __flowtests__/
│   │   │   │   │   ├── FlatList-flowtest.js
│   │   │   │   │   └── SectionList-flowtest.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── FlatList-itest.js
│   │   │   │       ├── FlatList-test.js
│   │   │   │       ├── SectionList-itest.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── FlatList-test.js.snap
│   │   │   ├── LogBox/
│   │   │   │   ├── Data/
│   │   │   │   │   ├── LogBoxData.js
│   │   │   │   │   ├── LogBoxLog.js
│   │   │   │   │   ├── LogBoxSymbolication.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── LogBoxData-test.js
│   │   │   │   │   │   ├── LogBoxLog-test.js
│   │   │   │   │   │   ├── LogBoxSymbolication-test.js
│   │   │   │   │   │   └── parseLogBoxLog-test.js
│   │   │   │   │   └── parseLogBoxLog.js
│   │   │   │   ├── LogBox.d.ts
│   │   │   │   ├── LogBox.js
│   │   │   │   ├── LogBoxInspectorContainer.js
│   │   │   │   ├── LogBoxNotificationContainer.js
│   │   │   │   ├── UI/
│   │   │   │   │   ├── AnsiHighlight.js
│   │   │   │   │   ├── LogBoxButton.js
│   │   │   │   │   ├── LogBoxInspector.js
│   │   │   │   │   ├── LogBoxInspectorBody.js
│   │   │   │   │   ├── LogBoxInspectorCodeFrame.js
│   │   │   │   │   ├── LogBoxInspectorFooter.js
│   │   │   │   │   ├── LogBoxInspectorFooterButton.js
│   │   │   │   │   ├── LogBoxInspectorHeader.js
│   │   │   │   │   ├── LogBoxInspectorHeaderButton.js
│   │   │   │   │   ├── LogBoxInspectorMessageHeader.js
│   │   │   │   │   ├── LogBoxInspectorReactFrames.js
│   │   │   │   │   ├── LogBoxInspectorSection.js
│   │   │   │   │   ├── LogBoxInspectorSourceMapStatus.js
│   │   │   │   │   ├── LogBoxInspectorStackFrame.js
│   │   │   │   │   ├── LogBoxInspectorStackFrames.js
│   │   │   │   │   ├── LogBoxMessage.js
│   │   │   │   │   ├── LogBoxNotification.js
│   │   │   │   │   ├── LogBoxNotificationCountBadge.js
│   │   │   │   │   ├── LogBoxNotificationDismissButton.js
│   │   │   │   │   ├── LogBoxNotificationMessage.js
│   │   │   │   │   ├── LogBoxStyle.js
│   │   │   │   │   └── __tests__/
│   │   │   │   │       ├── LogBoxButton-test.js
│   │   │   │   │       ├── LogBoxInspector-test.js
│   │   │   │   │       ├── LogBoxInspectorCodeFrame-test.js
│   │   │   │   │       ├── LogBoxInspectorFooter-test.js
│   │   │   │   │       ├── LogBoxInspectorHeader-test.js
│   │   │   │   │       ├── LogBoxInspectorMessageHeader-test.js
│   │   │   │   │       ├── LogBoxInspectorReactFrames-test.js
│   │   │   │   │       ├── LogBoxInspectorSection-test.js
│   │   │   │   │       ├── LogBoxInspectorSourceMapStatus-test.js
│   │   │   │   │       ├── LogBoxInspectorStackFrame-test.js
│   │   │   │   │       ├── LogBoxInspectorStackFrames-test.js
│   │   │   │   │       ├── LogBoxMessage-test.js
│   │   │   │   │       ├── LogBoxNotification-test.js
│   │   │   │   │       └── __snapshots__/
│   │   │   │   │           ├── LogBoxButton-test.js.snap
│   │   │   │   │           ├── LogBoxInspector-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorCodeFrame-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorFooter-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorHeader-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorMessageHeader-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorReactFrames-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorSection-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorSourceMapStatus-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorStackFrame-test.js.snap
│   │   │   │   │           ├── LogBoxInspectorStackFrames-test.js.snap
│   │   │   │   │           ├── LogBoxMessage-test.js.snap
│   │   │   │   │           └── LogBoxNotification-test.js.snap
│   │   │   │   └── __tests__/
│   │   │   │       ├── LogBox-test.js
│   │   │   │       ├── LogBoxInspectorContainer-test.js
│   │   │   │       ├── LogBoxNotificationContainer-test.js
│   │   │   │       ├── __snapshots__/
│   │   │   │       │   ├── LogBoxInspectorContainer-test.js.snap
│   │   │   │       │   └── LogBoxNotificationContainer-test.js.snap
│   │   │   │       └── fantomHelpers.js
│   │   │   ├── Modal/
│   │   │   │   ├── Modal.d.ts
│   │   │   │   ├── Modal.js
│   │   │   │   ├── NativeModalManager.js
│   │   │   │   ├── RCTModalHostViewNativeComponent.js
│   │   │   │   └── __tests__/
│   │   │   │       ├── Modal-itest.js
│   │   │   │       ├── Modal-test.js
│   │   │   │       └── __snapshots__/
│   │   │   │           └── Modal-test.js.snap
│   │   │   ├── NativeAnimation/
│   │   │   │   ├── Drivers/
│   │   │   │   │   ├── RCTAnimationDriver.h
│   │   │   │   │   ├── RCTDecayAnimation.h
│   │   │   │   │   ├── RCTDecayAnimation.mm
│   │   │   │   │   ├── RCTEventAnimation.h
│   │   │   │   │   ├── RCTEventAnimation.mm
│   │   │   │   │   ├── RCTFrameAnimation.h
│   │   │   │   │   ├── RCTFrameAnimation.mm
│   │   │   │   │   ├── RCTSpringAnimation.h
│   │   │   │   │   └── RCTSpringAnimation.mm
│   │   │   │   ├── Nodes/
│   │   │   │   │   ├── RCTAdditionAnimatedNode.h
│   │   │   │   │   ├── RCTAdditionAnimatedNode.mm
│   │   │   │   │   ├── RCTAnimatedNode.h
│   │   │   │   │   ├── RCTAnimatedNode.mm
│   │   │   │   │   ├── RCTColorAnimatedNode.h
│   │   │   │   │   ├── RCTColorAnimatedNode.mm
│   │   │   │   │   ├── RCTDiffClampAnimatedNode.h
│   │   │   │   │   ├── RCTDiffClampAnimatedNode.mm
│   │   │   │   │   ├── RCTDivisionAnimatedNode.h
│   │   │   │   │   ├── RCTDivisionAnimatedNode.mm
│   │   │   │   │   ├── RCTInterpolationAnimatedNode.h
│   │   │   │   │   ├── RCTInterpolationAnimatedNode.mm
│   │   │   │   │   ├── RCTModuloAnimatedNode.h
│   │   │   │   │   ├── RCTModuloAnimatedNode.mm
│   │   │   │   │   ├── RCTMultiplicationAnimatedNode.h
│   │   │   │   │   ├── RCTMultiplicationAnimatedNode.mm
│   │   │   │   │   ├── RCTObjectAnimatedNode.h
│   │   │   │   │   ├── RCTObjectAnimatedNode.mm
│   │   │   │   │   ├── RCTPropsAnimatedNode.h
│   │   │   │   │   ├── RCTPropsAnimatedNode.mm
│   │   │   │   │   ├── RCTStyleAnimatedNode.h
│   │   │   │   │   ├── RCTStyleAnimatedNode.mm
│   │   │   │   │   ├── RCTSubtractionAnimatedNode.h
│   │   │   │   │   ├── RCTSubtractionAnimatedNode.mm
│   │   │   │   │   ├── RCTTrackingAnimatedNode.h
│   │   │   │   │   ├── RCTTrackingAnimatedNode.mm
│   │   │   │   │   ├── RCTTransformAnimatedNode.h
│   │   │   │   │   ├── RCTTransformAnimatedNode.mm
│   │   │   │   │   ├── RCTValueAnimatedNode.h
│   │   │   │   │   └── RCTValueAnimatedNode.mm
│   │   │   │   ├── RCTAnimationPlugins.h
│   │   │   │   ├── RCTAnimationPlugins.mm
│   │   │   │   ├── RCTAnimationUtils.h
│   │   │   │   ├── RCTAnimationUtils.mm
│   │   │   │   ├── RCTNativeAnimatedModule.h
│   │   │   │   ├── RCTNativeAnimatedModule.mm
│   │   │   │   ├── RCTNativeAnimatedNodesManager.h
│   │   │   │   ├── RCTNativeAnimatedNodesManager.mm
│   │   │   │   ├── RCTNativeAnimatedTurboModule.h
│   │   │   │   ├── RCTNativeAnimatedTurboModule.mm
│   │   │   │   └── React-RCTAnimation.podspec
│   │   │   ├── NativeComponent/
│   │   │   │   ├── BaseViewConfig.android.js
│   │   │   │   ├── BaseViewConfig.ios.js
│   │   │   │   ├── BaseViewConfig.js
│   │   │   │   ├── BaseViewConfig.js.flow
│   │   │   │   ├── NativeComponentRegistry.d.ts
│   │   │   │   ├── NativeComponentRegistry.js
│   │   │   │   ├── NativeComponentRegistryUnstable.js
│   │   │   │   ├── PlatformBaseViewConfig.js
│   │   │   │   ├── StaticViewConfigValidator.js
│   │   │   │   ├── ViewConfig.js
│   │   │   │   ├── ViewConfigIgnore.js
│   │   │   │   └── __tests__/
│   │   │   │       └── StaticViewConfigValidator-test.js
│   │   │   ├── NativeModules/
│   │   │   │   └── specs/
│   │   │   │       ├── NativeDevMenu.js
│   │   │   │       ├── NativeDevSettings.js
│   │   │   │       ├── NativeDeviceEventManager.js
│   │   │   │       ├── NativeDialogManagerAndroid.js
│   │   │   │       ├── NativeLogBox.js
│   │   │   │       ├── NativeRedBox.js
│   │   │   │       └── NativeSourceCode.js
│   │   │   ├── Network/
│   │   │   │   ├── FormData.js
│   │   │   │   ├── NativeNetworkingAndroid.js
│   │   │   │   ├── NativeNetworkingIOS.js
│   │   │   │   ├── RCTDataRequestHandler.h
│   │   │   │   ├── RCTDataRequestHandler.mm
│   │   │   │   ├── RCTFileRequestHandler.h
│   │   │   │   ├── RCTFileRequestHandler.mm
│   │   │   │   ├── RCTHTTPRequestHandler.h
│   │   │   │   ├── RCTHTTPRequestHandler.mm
│   │   │   │   ├── RCTInspectorNetworkReporter.h
│   │   │   │   ├── RCTInspectorNetworkReporter.mm
│   │   │   │   ├── RCTNetworkConversions.h
│   │   │   │   ├── RCTNetworkPlugins.h
│   │   │   │   ├── RCTNetworkPlugins.mm
│   │   │   │   ├── RCTNetworkTask.h
│   │   │   │   ├── RCTNetworkTask.mm
│   │   │   │   ├── RCTNetworking+Internal.h
│   │   │   │   ├── RCTNetworking.android.js
│   │   │   │   ├── RCTNetworking.h
│   │   │   │   ├── RCTNetworking.ios.js
│   │   │   │   ├── RCTNetworking.js
│   │   │   │   ├── RCTNetworking.js.flow
│   │   │   │   ├── RCTNetworking.mm
│   │   │   │   ├── RCTNetworkingEventDefinitions.flow.js
│   │   │   │   ├── React-RCTNetwork.podspec
│   │   │   │   ├── XMLHttpRequest.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── FormData-test.js
│   │   │   │   │   └── XMLHttpRequest-test.js
│   │   │   │   ├── convertRequestBody.js
│   │   │   │   └── fetch.js
│   │   │   ├── Performance/
│   │   │   │   ├── Systrace.d.ts
│   │   │   │   └── Systrace.js
│   │   │   ├── PermissionsAndroid/
│   │   │   │   ├── NativePermissionsAndroid.js
│   │   │   │   ├── PermissionsAndroid.d.ts
│   │   │   │   └── PermissionsAndroid.js
│   │   │   ├── Pressability/
│   │   │   │   ├── HoverState.js
│   │   │   │   ├── Pressability.js
│   │   │   │   ├── PressabilityDebug.js
│   │   │   │   ├── PressabilityPerformanceEventEmitter.js
│   │   │   │   ├── PressabilityTypes.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── Pressability-itest.js
│   │   │   │   │   └── Pressability-test.js
│   │   │   │   └── usePressability.js
│   │   │   ├── Promise.js
│   │   │   ├── PushNotificationIOS/
│   │   │   │   ├── NativePushNotificationManagerIOS.js
│   │   │   │   ├── PushNotificationIOS.d.ts
│   │   │   │   ├── PushNotificationIOS.js
│   │   │   │   ├── RCTPushNotificationManager.h
│   │   │   │   ├── RCTPushNotificationManager.mm
│   │   │   │   ├── RCTPushNotificationPlugins.h
│   │   │   │   ├── RCTPushNotificationPlugins.mm
│   │   │   │   └── React-RCTPushNotification.podspec
│   │   │   ├── ReactNative/
│   │   │   │   ├── AppContainer-dev.js
│   │   │   │   ├── AppContainer-prod.js
│   │   │   │   ├── AppContainer.js
│   │   │   │   ├── AppRegistry.d.ts
│   │   │   │   ├── AppRegistry.flow.js
│   │   │   │   ├── AppRegistry.js
│   │   │   │   ├── AppRegistry.js.flow
│   │   │   │   ├── AppRegistryImpl.js
│   │   │   │   ├── BridgelessUIManager.js
│   │   │   │   ├── DisplayMode.js
│   │   │   │   ├── FabricUIManager.js
│   │   │   │   ├── HeadlessJsTaskError.js
│   │   │   │   ├── I18nManager.d.ts
│   │   │   │   ├── I18nManager.js
│   │   │   │   ├── NativeHeadlessJsTaskSupport.js
│   │   │   │   ├── NativeI18nManager.js
│   │   │   │   ├── NativeUIManager.js
│   │   │   │   ├── PaperUIManager.js
│   │   │   │   ├── ReactFabricPublicInstance/
│   │   │   │   │   ├── ReactFabricPublicInstance.js
│   │   │   │   │   ├── ReactFabricPublicInstanceUtils.js
│   │   │   │   │   ├── ReactNativeAttributePayload.js
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   └── ReactNativeAttributePayload-test.js
│   │   │   │   │   └── warnForStyleProps.js
│   │   │   │   ├── ReactNativeRuntimeDiagnostics.js
│   │   │   │   ├── RendererImplementation.js
│   │   │   │   ├── RendererProxy.d.ts
│   │   │   │   ├── RendererProxy.js
│   │   │   │   ├── RootTag.d.ts
│   │   │   │   ├── RootTag.js
│   │   │   │   ├── UIManager.d.ts
│   │   │   │   ├── UIManager.js
│   │   │   │   ├── UIManagerProperties.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── FabricUIManager-test.js
│   │   │   │   │   ├── StaleEventHandlersFromInterruptedRender-itest.js
│   │   │   │   │   ├── State-ForcedCloneCommitHook-itest.js
│   │   │   │   │   └── SyncOnCommit-itest.js
│   │   │   │   ├── getCachedComponentWithDebugName.js
│   │   │   │   ├── getNativeComponentAttributes.js
│   │   │   │   ├── renderApplication.js
│   │   │   │   ├── requireNativeComponent.d.ts
│   │   │   │   └── requireNativeComponent.js
│   │   │   ├── ReactNativeDependencies/
│   │   │   │   └── Package.swift
│   │   │   ├── ReactPrivate/
│   │   │   │   ├── README
│   │   │   │   ├── ReactNativePrivateInitializeCore.js
│   │   │   │   ├── ReactNativePrivateInterface.js
│   │   │   │   └── ReactNativePrivateInterface.js.flow
│   │   │   ├── Renderer/
│   │   │   │   ├── README.md
│   │   │   │   ├── implementations/
│   │   │   │   │   ├── ReactFabric-dev.js
│   │   │   │   │   ├── ReactFabric-prod.js
│   │   │   │   │   ├── ReactFabric-profiling.js
│   │   │   │   │   ├── ReactNativeRenderer-dev.js
│   │   │   │   │   ├── ReactNativeRenderer-prod.js
│   │   │   │   │   └── ReactNativeRenderer-profiling.js
│   │   │   │   └── shims/
│   │   │   │       ├── ReactFabric.js
│   │   │   │       ├── ReactFeatureFlags.js
│   │   │   │       ├── ReactNative.js
│   │   │   │       ├── ReactNativeTypes.js
│   │   │   │       ├── ReactNativeViewConfigRegistry.js
│   │   │   │       └── createReactNativeComponentClass.js
│   │   │   ├── Required/
│   │   │   │   ├── RCTRequired.h
│   │   │   │   └── RCTRequired.podspec
│   │   │   ├── Settings/
│   │   │   │   ├── NativeSettingsManager.js
│   │   │   │   ├── RCTSettingsManager.h
│   │   │   │   ├── RCTSettingsManager.mm
│   │   │   │   ├── RCTSettingsPlugins.h
│   │   │   │   ├── RCTSettingsPlugins.mm
│   │   │   │   ├── React-RCTSettings.podspec
│   │   │   │   ├── Settings.d.ts
│   │   │   │   ├── Settings.ios.js
│   │   │   │   ├── Settings.js
│   │   │   │   └── SettingsFallback.js
│   │   │   ├── Share/
│   │   │   │   ├── NativeShareModule.js
│   │   │   │   ├── Share.d.ts
│   │   │   │   └── Share.js
│   │   │   ├── StyleSheet/
│   │   │   │   ├── EdgeInsetsPropType.js
│   │   │   │   ├── PlatformColorValueTypes.android.js
│   │   │   │   ├── PlatformColorValueTypes.d.ts
│   │   │   │   ├── PlatformColorValueTypes.ios.js
│   │   │   │   ├── PlatformColorValueTypes.js
│   │   │   │   ├── PlatformColorValueTypes.js.flow
│   │   │   │   ├── PlatformColorValueTypesIOS.d.ts
│   │   │   │   ├── PlatformColorValueTypesIOS.ios.js
│   │   │   │   ├── PlatformColorValueTypesIOS.js
│   │   │   │   ├── PointPropType.js
│   │   │   │   ├── Rect.js
│   │   │   │   ├── StyleSheet.d.ts
│   │   │   │   ├── StyleSheet.js
│   │   │   │   ├── StyleSheet.js.flow
│   │   │   │   ├── StyleSheetExports.js
│   │   │   │   ├── StyleSheetExports.js.flow
│   │   │   │   ├── StyleSheetTypes.d.ts
│   │   │   │   ├── StyleSheetTypes.js
│   │   │   │   ├── __flowtests__/
│   │   │   │   │   └── StyleSheet-flowtest.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── StyleSheet-test.js
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   ├── processAspectRatio-test.js.snap
│   │   │   │   │   │   ├── processTransform-test.js.snap
│   │   │   │   │   │   └── processTransformOrigin-test.js.snap
│   │   │   │   │   ├── flattenStyle-test.js
│   │   │   │   │   ├── normalizeColor-test.js
│   │   │   │   │   ├── processAspectRatio-test.js
│   │   │   │   │   ├── processBackgroundImage-test.js
│   │   │   │   │   ├── processBackgroundPosition-test.js
│   │   │   │   │   ├── processBackgroundRepeat-test.js
│   │   │   │   │   ├── processBackgroundSize-test.js
│   │   │   │   │   ├── processBoxShadow-itest.js
│   │   │   │   │   ├── processColor-test.js
│   │   │   │   │   ├── processColorArray-test.js
│   │   │   │   │   ├── processFilter-test.js
│   │   │   │   │   ├── processFontVariant-test.js
│   │   │   │   │   ├── processTransform-test.js
│   │   │   │   │   ├── processTransformOrigin-test.js
│   │   │   │   │   ├── setNormalizedColorAlpha-test.js
│   │   │   │   │   └── splitLayoutProps-test.js
│   │   │   │   ├── flattenStyle.js
│   │   │   │   ├── normalizeColor.js
│   │   │   │   ├── private/
│   │   │   │   │   ├── _StyleSheetTypesOverrides.js
│   │   │   │   │   └── _TransformStyle.js
│   │   │   │   ├── processAspectRatio.js
│   │   │   │   ├── processBackgroundImage.js
│   │   │   │   ├── processBackgroundPosition.js
│   │   │   │   ├── processBackgroundRepeat.js
│   │   │   │   ├── processBackgroundSize.js
│   │   │   │   ├── processBoxShadow.js
│   │   │   │   ├── processColor.d.ts
│   │   │   │   ├── processColor.js
│   │   │   │   ├── processColorArray.js
│   │   │   │   ├── processFilter.js
│   │   │   │   ├── processFontVariant.js
│   │   │   │   ├── processTransform.js
│   │   │   │   ├── processTransformOrigin.js
│   │   │   │   ├── setNormalizedColorAlpha.js
│   │   │   │   └── splitLayoutProps.js
│   │   │   ├── Text/
│   │   │   │   ├── BaseText/
│   │   │   │   │   ├── RCTBaseTextShadowView.h
│   │   │   │   │   ├── RCTBaseTextShadowView.mm
│   │   │   │   │   ├── RCTBaseTextViewManager.h
│   │   │   │   │   └── RCTBaseTextViewManager.mm
│   │   │   │   ├── RCTConvert+Text.h
│   │   │   │   ├── RCTConvert+Text.mm
│   │   │   │   ├── RCTTextAttributes.h
│   │   │   │   ├── RCTTextAttributes.mm
│   │   │   │   ├── RCTTextTransform.h
│   │   │   │   ├── RawText/
│   │   │   │   │   ├── RCTRawTextShadowView.h
│   │   │   │   │   ├── RCTRawTextShadowView.mm
│   │   │   │   │   ├── RCTRawTextViewManager.h
│   │   │   │   │   └── RCTRawTextViewManager.mm
│   │   │   │   ├── React-RCTText.podspec
│   │   │   │   ├── Text/
│   │   │   │   │   ├── NSTextStorage+FontScaling.h
│   │   │   │   │   ├── NSTextStorage+FontScaling.m
│   │   │   │   │   ├── RCTDynamicTypeRamp.h
│   │   │   │   │   ├── RCTDynamicTypeRamp.mm
│   │   │   │   │   ├── RCTTextShadowView.h
│   │   │   │   │   ├── RCTTextShadowView.mm
│   │   │   │   │   ├── RCTTextView.h
│   │   │   │   │   ├── RCTTextView.mm
│   │   │   │   │   ├── RCTTextViewManager.h
│   │   │   │   │   └── RCTTextViewManager.mm
│   │   │   │   ├── Text.d.ts
│   │   │   │   ├── Text.js
│   │   │   │   ├── TextAncestor.js
│   │   │   │   ├── TextAncestorContext.js
│   │   │   │   ├── TextInput/
│   │   │   │   │   ├── Multiline/
│   │   │   │   │   │   ├── RCTMultilineTextInputView.h
│   │   │   │   │   │   ├── RCTMultilineTextInputView.mm
│   │   │   │   │   │   ├── RCTMultilineTextInputViewManager.h
│   │   │   │   │   │   ├── RCTMultilineTextInputViewManager.mm
│   │   │   │   │   │   ├── RCTUITextView.h
│   │   │   │   │   │   └── RCTUITextView.mm
│   │   │   │   │   ├── RCTBackedTextInputDelegate.h
│   │   │   │   │   ├── RCTBackedTextInputDelegateAdapter.h
│   │   │   │   │   ├── RCTBackedTextInputDelegateAdapter.mm
│   │   │   │   │   ├── RCTBackedTextInputViewProtocol.h
│   │   │   │   │   ├── RCTBaseTextInputShadowView.h
│   │   │   │   │   ├── RCTBaseTextInputShadowView.mm
│   │   │   │   │   ├── RCTBaseTextInputView.h
│   │   │   │   │   ├── RCTBaseTextInputView.mm
│   │   │   │   │   ├── RCTBaseTextInputViewManager.h
│   │   │   │   │   ├── RCTBaseTextInputViewManager.mm
│   │   │   │   │   ├── RCTInputAccessoryShadowView.h
│   │   │   │   │   ├── RCTInputAccessoryShadowView.mm
│   │   │   │   │   ├── RCTInputAccessoryView.h
│   │   │   │   │   ├── RCTInputAccessoryView.mm
│   │   │   │   │   ├── RCTInputAccessoryViewContent.h
│   │   │   │   │   ├── RCTInputAccessoryViewContent.mm
│   │   │   │   │   ├── RCTInputAccessoryViewManager.h
│   │   │   │   │   ├── RCTInputAccessoryViewManager.mm
│   │   │   │   │   ├── RCTTextSelection.h
│   │   │   │   │   ├── RCTTextSelection.mm
│   │   │   │   │   └── Singleline/
│   │   │   │   │       ├── RCTSinglelineTextInputView.h
│   │   │   │   │       ├── RCTSinglelineTextInputView.mm
│   │   │   │   │       ├── RCTSinglelineTextInputViewManager.h
│   │   │   │   │       ├── RCTSinglelineTextInputViewManager.mm
│   │   │   │   │       ├── RCTUITextField.h
│   │   │   │   │       └── RCTUITextField.mm
│   │   │   │   ├── TextNativeComponent.js
│   │   │   │   ├── TextProps.js
│   │   │   │   ├── VirtualText/
│   │   │   │   │   ├── RCTVirtualTextShadowView.h
│   │   │   │   │   ├── RCTVirtualTextShadowView.mm
│   │   │   │   │   ├── RCTVirtualTextView.h
│   │   │   │   │   ├── RCTVirtualTextView.mm
│   │   │   │   │   ├── RCTVirtualTextViewManager.h
│   │   │   │   │   └── RCTVirtualTextViewManager.mm
│   │   │   │   └── __tests__/
│   │   │   │       ├── Text-benchmark-itest.js
│   │   │   │       ├── Text-itest.js
│   │   │   │       └── Text-test.js
│   │   │   ├── TurboModule/
│   │   │   │   ├── RCTExport.d.ts
│   │   │   │   ├── RCTExport.js
│   │   │   │   ├── TurboModuleRegistry.d.ts
│   │   │   │   ├── TurboModuleRegistry.js
│   │   │   │   └── samples/
│   │   │   │       └── NativeSampleTurboModule.js
│   │   │   ├── TypeSafety/
│   │   │   │   ├── RCTConvertHelpers.h
│   │   │   │   ├── RCTConvertHelpers.mm
│   │   │   │   ├── RCTTypeSafety.podspec
│   │   │   │   ├── RCTTypedModuleConstants.h
│   │   │   │   └── RCTTypedModuleConstants.mm
│   │   │   ├── Types/
│   │   │   │   ├── CodegenTypes.js
│   │   │   │   ├── CodegenTypesNamespace.d.ts
│   │   │   │   ├── CodegenTypesNamespace.js
│   │   │   │   ├── CoreEventTypes.d.ts
│   │   │   │   ├── CoreEventTypes.js
│   │   │   │   ├── ReactDevToolsTypes.js
│   │   │   │   ├── RootTagTypes.js
│   │   │   │   └── UIManagerJSInterface.js
│   │   │   ├── UTFSequence.js
│   │   │   ├── Utilities/
│   │   │   │   ├── Appearance.d.ts
│   │   │   │   ├── Appearance.js
│   │   │   │   ├── BackHandler.android.js
│   │   │   │   ├── BackHandler.d.ts
│   │   │   │   ├── BackHandler.ios.js
│   │   │   │   ├── BackHandler.js
│   │   │   │   ├── BackHandler.js.flow
│   │   │   │   ├── DevLoadingView.js
│   │   │   │   ├── DevSettings.d.ts
│   │   │   │   ├── DevSettings.js
│   │   │   │   ├── DeviceInfo.js
│   │   │   │   ├── Dimensions.d.ts
│   │   │   │   ├── Dimensions.js
│   │   │   │   ├── FeatureDetection.js
│   │   │   │   ├── GlobalPerformanceLogger.js
│   │   │   │   ├── HMRClient.js
│   │   │   │   ├── HMRClientProdShim.js
│   │   │   │   ├── HardwareBackPressEvent.js
│   │   │   │   ├── IPerformanceLogger.d.ts
│   │   │   │   ├── IPerformanceLogger.js
│   │   │   │   ├── NativeAppearance.js
│   │   │   │   ├── NativeDevLoadingView.js
│   │   │   │   ├── NativeDeviceInfo.js
│   │   │   │   ├── NativePlatformConstantsAndroid.js
│   │   │   │   ├── NativePlatformConstantsIOS.js
│   │   │   │   ├── PerformanceLoggerContext.js
│   │   │   │   ├── PixelRatio.d.ts
│   │   │   │   ├── PixelRatio.js
│   │   │   │   ├── Platform.android.js
│   │   │   │   ├── Platform.d.ts
│   │   │   │   ├── Platform.ios.js
│   │   │   │   ├── Platform.js
│   │   │   │   ├── Platform.js.flow
│   │   │   │   ├── PlatformTypes.js
│   │   │   │   ├── PolyfillFunctions.js
│   │   │   │   ├── RCTLog.js
│   │   │   │   ├── ReactNativeTestTools.js
│   │   │   │   ├── SceneTracker.js
│   │   │   │   ├── __mocks__/
│   │   │   │   │   ├── BackHandler.js
│   │   │   │   │   ├── GlobalPerformanceLogger.js
│   │   │   │   │   └── PixelRatio.js
│   │   │   │   ├── __tests__/
│   │   │   │   │   ├── BackHandler-itest.js
│   │   │   │   │   ├── DeviceInfo-test.js
│   │   │   │   │   ├── Dimensions-test.js
│   │   │   │   │   ├── HardwareBackPressEvent-itest.js
│   │   │   │   │   ├── PerformanceLogger-test.js
│   │   │   │   │   ├── PixelRatio-test.js
│   │   │   │   │   ├── Platform-test.js
│   │   │   │   │   ├── ReactNativeTestTools-test.js
│   │   │   │   │   ├── SceneTracker-test.js
│   │   │   │   │   ├── binaryToBase64-test.js
│   │   │   │   │   ├── codegenNativeComponent-test.js
│   │   │   │   │   ├── deepFreezeAndThrowOnMutationInDev-test.js
│   │   │   │   │   ├── logError-test.js
│   │   │   │   │   ├── mapWithSeparator-test.js
│   │   │   │   │   ├── stringifySafe-test.js
│   │   │   │   │   ├── useColorScheme-test.js
│   │   │   │   │   ├── useMergeRefs-test.js
│   │   │   │   │   ├── useRefEffect-test.js
│   │   │   │   │   └── warnOnce-test.js
│   │   │   │   ├── binaryToBase64.js
│   │   │   │   ├── codegenNativeCommands.d.ts
│   │   │   │   ├── codegenNativeCommands.js
│   │   │   │   ├── codegenNativeComponent.d.ts
│   │   │   │   ├── codegenNativeComponent.js
│   │   │   │   ├── createPerformanceLogger.js
│   │   │   │   ├── deepFreezeAndThrowOnMutationInDev.js
│   │   │   │   ├── defineLazyObjectProperty.js
│   │   │   │   ├── differ/
│   │   │   │   │   ├── __tests__/
│   │   │   │   │   │   ├── deepDiffer-test.js
│   │   │   │   │   │   └── matricesDiffer-test.js
│   │   │   │   │   ├── deepDiffer.js
│   │   │   │   │   ├── insetsDiffer.js
│   │   │   │   │   ├── matricesDiffer.js
│   │   │   │   │   ├── pointsDiffer.js
│   │   │   │   │   └── sizesDiffer.js
│   │   │   │   ├── dismissKeyboard.js
│   │   │   │   ├── logError.js
│   │   │   │   ├── mapWithSeparator.js
│   │   │   │   ├── stringifySafe.js
│   │   │   │   ├── stringifyViewConfig.js
│   │   │   │   ├── useColorScheme.js
│   │   │   │   ├── useMergeRefs.js
│   │   │   │   ├── useRefEffect.js
│   │   │   │   ├── useWindowDimensions.js
│   │   │   │   └── warnOnce.js
│   │   │   ├── Vibration/
│   │   │   │   ├── NativeVibration.js
│   │   │   │   ├── RCTVibration.h
│   │   │   │   ├── RCTVibration.mm
│   │   │   │   ├── RCTVibrationPlugins.h
│   │   │   │   ├── RCTVibrationPlugins.mm
│   │   │   │   ├── React-RCTVibration.podspec
│   │   │   │   ├── Vibration.d.ts
│   │   │   │   └── Vibration.js
│   │   │   ├── WebSocket/
│   │   │   │   ├── NativeWebSocketModule.js
│   │   │   │   ├── RCTReconnectingWebSocket.h
│   │   │   │   ├── RCTReconnectingWebSocket.m
│   │   │   │   ├── WebSocket.js
│   │   │   │   ├── WebSocketInterceptor.js
│   │   │   │   └── __tests__/
│   │   │   │       └── WebSocket-test.js
│   │   │   ├── Wrapper/
│   │   │   │   ├── Example/
│   │   │   │   │   ├── RCTWrapperExampleView.h
│   │   │   │   │   ├── RCTWrapperExampleView.m
│   │   │   │   │   ├── RCTWrapperExampleViewController.h
│   │   │   │   │   ├── RCTWrapperExampleViewController.m
│   │   │   │   │   ├── RCTWrapperReactRootViewController.h
│   │   │   │   │   ├── RCTWrapperReactRootViewController.m
│   │   │   │   │   ├── RCTWrapperReactRootViewManager.h
│   │   │   │   │   └── RCTWrapperReactRootViewManager.m
│   │   │   │   ├── RCTWrapper.h
│   │   │   │   ├── RCTWrapperShadowView.h
│   │   │   │   ├── RCTWrapperShadowView.m
│   │   │   │   ├── RCTWrapperView.h
│   │   │   │   ├── RCTWrapperView.m
│   │   │   │   ├── RCTWrapperViewControllerHostingView.h
│   │   │   │   ├── RCTWrapperViewControllerHostingView.m
│   │   │   │   ├── RCTWrapperViewManager.h
│   │   │   │   └── RCTWrapperViewManager.m
│   │   │   ├── __flowtests__/
│   │   │   │   └── ReactNativeTypes-flowtest.js
│   │   │   └── promiseRejectionTrackingOptions.js
│   │   ├── Package.swift
│   │   ├── README.md
│   │   ├── React/
│   │   │   ├── Base/
│   │   │   │   ├── RCTAssert.h
│   │   │   │   ├── RCTAssert.m
│   │   │   │   ├── RCTBridge+Inspector.h
│   │   │   │   ├── RCTBridge+Private.h
│   │   │   │   ├── RCTBridge.h
│   │   │   │   ├── RCTBridge.mm
│   │   │   │   ├── RCTBridgeConstants.h
│   │   │   │   ├── RCTBridgeConstants.m
│   │   │   │   ├── RCTBridgeDelegate.h
│   │   │   │   ├── RCTBridgeMethod.h
│   │   │   │   ├── RCTBridgeModule.h
│   │   │   │   ├── RCTBridgeModuleDecorator.h
│   │   │   │   ├── RCTBridgeModuleDecorator.m
│   │   │   │   ├── RCTBridgeProxy+Cxx.h
│   │   │   │   ├── RCTBridgeProxy.h
│   │   │   │   ├── RCTBridgeProxy.mm
│   │   │   │   ├── RCTBundleManager.h
│   │   │   │   ├── RCTBundleManager.m
│   │   │   │   ├── RCTBundleURLProvider.h
│   │   │   │   ├── RCTBundleURLProvider.mm
│   │   │   │   ├── RCTCallInvoker.h
│   │   │   │   ├── RCTCallInvoker.mm
│   │   │   │   ├── RCTCallInvokerModule.h
│   │   │   │   ├── RCTCallableJSModules.m
│   │   │   │   ├── RCTComponentEvent.h
│   │   │   │   ├── RCTComponentEvent.m
│   │   │   │   ├── RCTConstants.h
│   │   │   │   ├── RCTConstants.m
│   │   │   │   ├── RCTConvert.h
│   │   │   │   ├── RCTConvert.mm
│   │   │   │   ├── RCTCxxConvert.h
│   │   │   │   ├── RCTCxxConvert.m
│   │   │   │   ├── RCTDefines.h
│   │   │   │   ├── RCTDevSupportHttpHeaders.h
│   │   │   │   ├── RCTDevSupportHttpHeaders.m
│   │   │   │   ├── RCTDisplayLink.h
│   │   │   │   ├── RCTDisplayLink.m
│   │   │   │   ├── RCTErrorCustomizer.h
│   │   │   │   ├── RCTErrorInfo.h
│   │   │   │   ├── RCTErrorInfo.m
│   │   │   │   ├── RCTEventDispatcher.m
│   │   │   │   ├── RCTEventDispatcherProtocol.h
│   │   │   │   ├── RCTFrameUpdate.h
│   │   │   │   ├── RCTFrameUpdate.m
│   │   │   │   ├── RCTImageSource.h
│   │   │   │   ├── RCTImageSource.m
│   │   │   │   ├── RCTInitializing.h
│   │   │   │   ├── RCTInvalidating.h
│   │   │   │   ├── RCTJSStackFrame.h
│   │   │   │   ├── RCTJSStackFrame.m
│   │   │   │   ├── RCTJSThread.h
│   │   │   │   ├── RCTJSThread.m
│   │   │   │   ├── RCTJavaScriptExecutor.h
│   │   │   │   ├── RCTJavaScriptLoader.h
│   │   │   │   ├── RCTJavaScriptLoader.mm
│   │   │   │   ├── RCTKeyCommands.h
│   │   │   │   ├── RCTKeyCommands.m
│   │   │   │   ├── RCTLog.h
│   │   │   │   ├── RCTLog.mm
│   │   │   │   ├── RCTManagedPointer.h
│   │   │   │   ├── RCTManagedPointer.mm
│   │   │   │   ├── RCTMockDef.h
│   │   │   │   ├── RCTModuleData.h
│   │   │   │   ├── RCTModuleData.mm
│   │   │   │   ├── RCTModuleMethod.h
│   │   │   │   ├── RCTModuleMethod.mm
│   │   │   │   ├── RCTModuleRegistry.m
│   │   │   │   ├── RCTMultipartDataTask.h
│   │   │   │   ├── RCTMultipartDataTask.m
│   │   │   │   ├── RCTMultipartStreamReader.h
│   │   │   │   ├── RCTMultipartStreamReader.m
│   │   │   │   ├── RCTNullability.h
│   │   │   │   ├── RCTPLTag.h
│   │   │   │   ├── RCTParserUtils.h
│   │   │   │   ├── RCTParserUtils.m
│   │   │   │   ├── RCTPerformanceLogger.h
│   │   │   │   ├── RCTPerformanceLogger.mm
│   │   │   │   ├── RCTPerformanceLoggerLabels.h
│   │   │   │   ├── RCTPerformanceLoggerLabels.m
│   │   │   │   ├── RCTRedBoxSetEnabled.h
│   │   │   │   ├── RCTRedBoxSetEnabled.m
│   │   │   │   ├── RCTReloadCommand.h
│   │   │   │   ├── RCTReloadCommand.m
│   │   │   │   ├── RCTRootContentView.h
│   │   │   │   ├── RCTRootContentView.m
│   │   │   │   ├── RCTRootView.h
│   │   │   │   ├── RCTRootView.m
│   │   │   │   ├── RCTRootViewDelegate.h
│   │   │   │   ├── RCTRootViewInternal.h
│   │   │   │   ├── RCTTouchEvent.h
│   │   │   │   ├── RCTTouchEvent.m
│   │   │   │   ├── RCTTouchHandler.h
│   │   │   │   ├── RCTTouchHandler.m
│   │   │   │   ├── RCTTurboModuleRegistry.h
│   │   │   │   ├── RCTURLRequestDelegate.h
│   │   │   │   ├── RCTURLRequestHandler.h
│   │   │   │   ├── RCTUtils.h
│   │   │   │   ├── RCTUtils.mm
│   │   │   │   ├── RCTUtilsUIOverride.h
│   │   │   │   ├── RCTUtilsUIOverride.m
│   │   │   │   ├── RCTVersion.h
│   │   │   │   ├── RCTVersion.m
│   │   │   │   ├── RCTViewRegistry.m
│   │   │   │   └── Surface/
│   │   │   │       ├── RCTSurface.h
│   │   │   │       ├── RCTSurface.mm
│   │   │   │       ├── RCTSurfaceDelegate.h
│   │   │   │       ├── RCTSurfaceProtocol.h
│   │   │   │       ├── RCTSurfaceRootShadowView.h
│   │   │   │       ├── RCTSurfaceRootShadowView.m
│   │   │   │       ├── RCTSurfaceRootShadowViewDelegate.h
│   │   │   │       ├── RCTSurfaceRootView.h
│   │   │   │       ├── RCTSurfaceRootView.mm
│   │   │   │       ├── RCTSurfaceStage.h
│   │   │   │       ├── RCTSurfaceStage.m
│   │   │   │       ├── RCTSurfaceView+Internal.h
│   │   │   │       ├── RCTSurfaceView.h
│   │   │   │       ├── RCTSurfaceView.mm
│   │   │   │       └── SurfaceHostingView/
│   │   │   │           ├── RCTSurfaceHostingProxyRootView.h
│   │   │   │           ├── RCTSurfaceHostingProxyRootView.mm
│   │   │   │           ├── RCTSurfaceHostingView.h
│   │   │   │           ├── RCTSurfaceHostingView.mm
│   │   │   │           ├── RCTSurfaceSizeMeasureMode.h
│   │   │   │           └── RCTSurfaceSizeMeasureMode.mm
│   │   │   ├── CoreModules/
│   │   │   │   ├── CoreModulesPlugins.h
│   │   │   │   ├── CoreModulesPlugins.mm
│   │   │   │   ├── PlatformStubs/
│   │   │   │   │   └── RCTStatusBarManager.mm
│   │   │   │   ├── RCTAccessibilityManager+Internal.h
│   │   │   │   ├── RCTAccessibilityManager.h
│   │   │   │   ├── RCTAccessibilityManager.mm
│   │   │   │   ├── RCTActionSheetManager.h
│   │   │   │   ├── RCTActionSheetManager.mm
│   │   │   │   ├── RCTAlertController.h
│   │   │   │   ├── RCTAlertController.mm
│   │   │   │   ├── RCTAlertManager.h
│   │   │   │   ├── RCTAlertManager.mm
│   │   │   │   ├── RCTAppState.h
│   │   │   │   ├── RCTAppState.mm
│   │   │   │   ├── RCTAppearance.h
│   │   │   │   ├── RCTAppearance.mm
│   │   │   │   ├── RCTClipboard.h
│   │   │   │   ├── RCTClipboard.mm
│   │   │   │   ├── RCTDevLoadingView.h
│   │   │   │   ├── RCTDevLoadingView.mm
│   │   │   │   ├── RCTDevMenu.h
│   │   │   │   ├── RCTDevMenu.mm
│   │   │   │   ├── RCTDevMenuConfigurationDecorator.h
│   │   │   │   ├── RCTDevMenuConfigurationDecorator.mm
│   │   │   │   ├── RCTDevSettings.h
│   │   │   │   ├── RCTDevSettings.mm
│   │   │   │   ├── RCTDevToolsRuntimeSettingsModule.h
│   │   │   │   ├── RCTDevToolsRuntimeSettingsModule.mm
│   │   │   │   ├── RCTDeviceInfo.h
│   │   │   │   ├── RCTDeviceInfo.mm
│   │   │   │   ├── RCTEventDispatcher.h
│   │   │   │   ├── RCTEventDispatcher.mm
│   │   │   │   ├── RCTExceptionsManager.h
│   │   │   │   ├── RCTExceptionsManager.mm
│   │   │   │   ├── RCTFPSGraph.h
│   │   │   │   ├── RCTFPSGraph.mm
│   │   │   │   ├── RCTI18nManager.h
│   │   │   │   ├── RCTI18nManager.mm
│   │   │   │   ├── RCTKeyboardObserver.h
│   │   │   │   ├── RCTKeyboardObserver.mm
│   │   │   │   ├── RCTLogBox.h
│   │   │   │   ├── RCTLogBox.mm
│   │   │   │   ├── RCTLogBoxView.h
│   │   │   │   ├── RCTLogBoxView.mm
│   │   │   │   ├── RCTPerfMonitor.mm
│   │   │   │   ├── RCTPlatform.h
│   │   │   │   ├── RCTPlatform.mm
│   │   │   │   ├── RCTRedBox.h
│   │   │   │   ├── RCTRedBox.mm
│   │   │   │   ├── RCTSourceCode.h
│   │   │   │   ├── RCTSourceCode.mm
│   │   │   │   ├── RCTStatusBarManager.h
│   │   │   │   ├── RCTStatusBarManager.mm
│   │   │   │   ├── RCTTiming.h
│   │   │   │   ├── RCTTiming.mm
│   │   │   │   ├── RCTWebSocketModule.h
│   │   │   │   ├── RCTWebSocketModule.mm
│   │   │   │   └── React-CoreModules.podspec
│   │   │   ├── CxxBridge/
│   │   │   │   ├── NSDataBigString.h
│   │   │   │   ├── NSDataBigString.mm
│   │   │   │   ├── RCTCxxBridge.mm
│   │   │   │   ├── RCTCxxBridgeDelegate.h
│   │   │   │   ├── RCTJSIExecutorRuntimeInstaller.h
│   │   │   │   ├── RCTJSIExecutorRuntimeInstaller.mm
│   │   │   │   ├── RCTMessageThread.h
│   │   │   │   ├── RCTMessageThread.mm
│   │   │   │   ├── RCTObjcExecutor.h
│   │   │   │   └── RCTObjcExecutor.mm
│   │   │   ├── CxxLogUtils/
│   │   │   │   ├── RCTDefaultCxxLogFunction.h
│   │   │   │   └── RCTDefaultCxxLogFunction.mm
│   │   │   ├── CxxModule/
│   │   │   │   ├── DispatchMessageQueueThread.h
│   │   │   │   ├── RCTCxxMethod.h
│   │   │   │   ├── RCTCxxMethod.mm
│   │   │   │   ├── RCTCxxUtils.h
│   │   │   │   ├── RCTCxxUtils.mm
│   │   │   │   ├── RCTNativeModule.h
│   │   │   │   └── RCTNativeModule.mm
│   │   │   ├── CxxUtils/
│   │   │   │   └── RCTFollyConvert.h
│   │   │   ├── DevSupport/
│   │   │   │   ├── RCTDevLoadingViewProtocol.h
│   │   │   │   ├── RCTDevLoadingViewSetEnabled.h
│   │   │   │   ├── RCTDevLoadingViewSetEnabled.m
│   │   │   │   ├── RCTFrameTimingsObserver.h
│   │   │   │   ├── RCTFrameTimingsObserver.mm
│   │   │   │   ├── RCTInspectorDevServerHelper.h
│   │   │   │   ├── RCTInspectorDevServerHelper.mm
│   │   │   │   ├── RCTInspectorNetworkHelper.h
│   │   │   │   ├── RCTInspectorNetworkHelper.mm
│   │   │   │   ├── RCTInspectorUtils.h
│   │   │   │   ├── RCTInspectorUtils.mm
│   │   │   │   ├── RCTPackagerClient.h
│   │   │   │   ├── RCTPackagerClient.m
│   │   │   │   ├── RCTPackagerConnection.h
│   │   │   │   ├── RCTPackagerConnection.mm
│   │   │   │   ├── RCTPausedInDebuggerOverlayController.h
│   │   │   │   └── RCTPausedInDebuggerOverlayController.mm
│   │   │   ├── Fabric/
│   │   │   │   ├── AppleEventBeat.cpp
│   │   │   │   ├── AppleEventBeat.h
│   │   │   │   ├── Mounting/
│   │   │   │   │   ├── ComponentViews/
│   │   │   │   │   │   ├── ActivityIndicator/
│   │   │   │   │   │   │   ├── RCTActivityIndicatorViewComponentView.h
│   │   │   │   │   │   │   └── RCTActivityIndicatorViewComponentView.mm
│   │   │   │   │   │   ├── DebuggingOverlay/
│   │   │   │   │   │   │   ├── RCTDebuggingOverlayComponentView.h
│   │   │   │   │   │   │   └── RCTDebuggingOverlayComponentView.mm
│   │   │   │   │   │   ├── Image/
│   │   │   │   │   │   │   ├── RCTImageComponentView.h
│   │   │   │   │   │   │   └── RCTImageComponentView.mm
│   │   │   │   │   │   ├── InputAccessory/
│   │   │   │   │   │   │   ├── RCTInputAccessoryComponentView.h
│   │   │   │   │   │   │   ├── RCTInputAccessoryComponentView.mm
│   │   │   │   │   │   │   ├── RCTInputAccessoryContentView.h
│   │   │   │   │   │   │   └── RCTInputAccessoryContentView.mm
│   │   │   │   │   │   ├── LegacyViewManagerInterop/
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropComponentView.h
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropComponentView.mm
│   │   │   │   │   │   │   ├── RCTLegacyViewManagerInteropCoordinatorAdapter.h
│   │   │   │   │   │   │   └── RCTLegacyViewManagerInteropCoordinatorAdapter.mm
│   │   │   │   │   │   ├── Modal/
│   │   │   │   │   │   │   ├── RCTFabricModalHostViewController.h
│   │   │   │   │   │   │   ├── RCTFabricModalHostViewController.mm
│   │   │   │   │   │   │   ├── RCTModalHostViewComponentView.h
│   │   │   │   │   │   │   └── RCTModalHostViewComponentView.mm
│   │   │   │   │   │   ├── RCTFabricComponentsPlugins.h
│   │   │   │   │   │   ├── RCTFabricComponentsPlugins.mm
│   │   │   │   │   │   ├── Root/
│   │   │   │   │   │   │   ├── RCTRootComponentView.h
│   │   │   │   │   │   │   └── RCTRootComponentView.mm
│   │   │   │   │   │   ├── SafeAreaView/
│   │   │   │   │   │   │   ├── RCTSafeAreaViewComponentView.h
│   │   │   │   │   │   │   └── RCTSafeAreaViewComponentView.mm
│   │   │   │   │   │   ├── ScrollView/
│   │   │   │   │   │   │   ├── RCTCustomPullToRefreshViewProtocol.h
│   │   │   │   │   │   │   ├── RCTEnhancedScrollView.h
│   │   │   │   │   │   │   ├── RCTEnhancedScrollView.mm
│   │   │   │   │   │   │   ├── RCTPullToRefreshViewComponentView.h
│   │   │   │   │   │   │   ├── RCTPullToRefreshViewComponentView.mm
│   │   │   │   │   │   │   ├── RCTScrollViewComponentView.h
│   │   │   │   │   │   │   ├── RCTScrollViewComponentView.mm
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerProtocol.h
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerState.h
│   │   │   │   │   │   │   ├── RCTVirtualViewContainerState.mm
│   │   │   │   │   │   │   └── RCTVirtualViewProtocol.h
│   │   │   │   │   │   ├── Switch/
│   │   │   │   │   │   │   ├── RCTSwitchComponentView.h
│   │   │   │   │   │   │   └── RCTSwitchComponentView.mm
│   │   │   │   │   │   ├── Text/
│   │   │   │   │   │   │   ├── RCTAccessibilityElement.h
│   │   │   │   │   │   │   ├── RCTAccessibilityElement.mm
│   │   │   │   │   │   │   ├── RCTParagraphComponentAccessibilityProvider.h
│   │   │   │   │   │   │   ├── RCTParagraphComponentAccessibilityProvider.mm
│   │   │   │   │   │   │   ├── RCTParagraphComponentView.h
│   │   │   │   │   │   │   └── RCTParagraphComponentView.mm
│   │   │   │   │   │   ├── TextInput/
│   │   │   │   │   │   │   ├── RCTTextInputComponentView.h
│   │   │   │   │   │   │   ├── RCTTextInputComponentView.mm
│   │   │   │   │   │   │   ├── RCTTextInputNativeCommands.h
│   │   │   │   │   │   │   ├── RCTTextInputUtils.h
│   │   │   │   │   │   │   └── RCTTextInputUtils.mm
│   │   │   │   │   │   ├── UnimplementedComponent/
│   │   │   │   │   │   │   ├── RCTUnimplementedNativeComponentView.h
│   │   │   │   │   │   │   └── RCTUnimplementedNativeComponentView.mm
│   │   │   │   │   │   ├── UnimplementedView/
│   │   │   │   │   │   │   ├── RCTUnimplementedViewComponentView.h
│   │   │   │   │   │   │   └── RCTUnimplementedViewComponentView.mm
│   │   │   │   │   │   ├── View/
│   │   │   │   │   │   │   ├── RCTViewComponentView.h
│   │   │   │   │   │   │   └── RCTViewComponentView.mm
│   │   │   │   │   │   └── VirtualView/
│   │   │   │   │   │       ├── RCTVirtualViewComponentView.h
│   │   │   │   │   │       ├── RCTVirtualViewComponentView.mm
│   │   │   │   │   │       ├── RCTVirtualViewMode.h
│   │   │   │   │   │       └── RCTVirtualViewRenderState.h
│   │   │   │   │   ├── RCTComponentViewClassDescriptor.h
│   │   │   │   │   ├── RCTComponentViewDescriptor.h
│   │   │   │   │   ├── RCTComponentViewFactory.h
│   │   │   │   │   ├── RCTComponentViewFactory.mm
│   │   │   │   │   ├── RCTComponentViewProtocol.h
│   │   │   │   │   ├── RCTComponentViewRegistry.h
│   │   │   │   │   ├── RCTComponentViewRegistry.mm
│   │   │   │   │   ├── RCTMountingManager.h
│   │   │   │   │   ├── RCTMountingManager.mm
│   │   │   │   │   ├── RCTMountingManagerDelegate.h
│   │   │   │   │   ├── RCTMountingTransactionObserverCoordinator.h
│   │   │   │   │   ├── RCTMountingTransactionObserverCoordinator.mm
│   │   │   │   │   ├── RCTMountingTransactionObserving.h
│   │   │   │   │   ├── UIView+ComponentViewProtocol.h
│   │   │   │   │   └── UIView+ComponentViewProtocol.mm
│   │   │   │   ├── RCTConversions.h
│   │   │   │   ├── RCTImageResponseDelegate.h
│   │   │   │   ├── RCTImageResponseObserverProxy.h
│   │   │   │   ├── RCTImageResponseObserverProxy.mm
│   │   │   │   ├── RCTLocalizationProvider.h
│   │   │   │   ├── RCTLocalizationProvider.mm
│   │   │   │   ├── RCTPrimitives.h
│   │   │   │   ├── RCTScheduler.h
│   │   │   │   ├── RCTScheduler.mm
│   │   │   │   ├── RCTSurfacePointerHandler.h
│   │   │   │   ├── RCTSurfacePointerHandler.mm
│   │   │   │   ├── RCTSurfacePresenter.h
│   │   │   │   ├── RCTSurfacePresenter.mm
│   │   │   │   ├── RCTSurfacePresenterBridgeAdapter.h
│   │   │   │   ├── RCTSurfacePresenterBridgeAdapter.mm
│   │   │   │   ├── RCTSurfaceRegistry.h
│   │   │   │   ├── RCTSurfaceRegistry.mm
│   │   │   │   ├── RCTSurfaceTouchHandler.h
│   │   │   │   ├── RCTSurfaceTouchHandler.mm
│   │   │   │   ├── RCTTouchableComponentViewProtocol.h
│   │   │   │   ├── Surface/
│   │   │   │   │   ├── RCTFabricSurface.h
│   │   │   │   │   └── RCTFabricSurface.mm
│   │   │   │   └── Utils/
│   │   │   │       ├── PlatformRunLoopObserver.h
│   │   │   │       ├── PlatformRunLoopObserver.mm
│   │   │   │       ├── RCTBackgroundImageUtils.h
│   │   │   │       ├── RCTBackgroundImageUtils.mm
│   │   │   │       ├── RCTBoxShadow.h
│   │   │   │       ├── RCTBoxShadow.mm
│   │   │   │       ├── RCTColorSpaceUtils.h
│   │   │   │       ├── RCTColorSpaceUtils.mm
│   │   │   │       ├── RCTGenericDelegateSplitter.h
│   │   │   │       ├── RCTGenericDelegateSplitter.mm
│   │   │   │       ├── RCTGradientUtils.h
│   │   │   │       ├── RCTGradientUtils.mm
│   │   │   │       ├── RCTIdentifierPool.h
│   │   │   │       ├── RCTLinearGradient.h
│   │   │   │       ├── RCTLinearGradient.mm
│   │   │   │       ├── RCTRadialGradient.h
│   │   │   │       ├── RCTRadialGradient.mm
│   │   │   │       ├── RCTReactTaggedView.h
│   │   │   │       └── RCTReactTaggedView.mm
│   │   │   ├── I18n/
│   │   │   │   ├── .clang-format-ignore
│   │   │   │   ├── FBXXHashUtils.h
│   │   │   │   ├── RCTLocalizedString.h
│   │   │   │   ├── RCTLocalizedString.mm
│   │   │   │   └── strings/
│   │   │   │       ├── ar.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── cs.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── da.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── de.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── el.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── en-GB.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── en.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── es-ES.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── es.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── fi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── fr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── he.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── hu.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── id.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── it.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ja.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ko.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ms.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── nb.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── nl.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pl.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pt-PT.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── pt.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ro.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── ru.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── sk.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── sv.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── th.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── tr.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── uk.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── vi.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hans.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hant-HK.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       ├── zh-Hant.lproj/
│   │   │   │       │   └── Localizable.strings
│   │   │   │       └── zu.lproj/
│   │   │   │           └── Localizable.strings
│   │   │   ├── Inspector/
│   │   │   │   ├── RCTCxxInspectorPackagerConnection.h
│   │   │   │   ├── RCTCxxInspectorPackagerConnection.mm
│   │   │   │   ├── RCTCxxInspectorPackagerConnectionDelegate.h
│   │   │   │   ├── RCTCxxInspectorPackagerConnectionDelegate.mm
│   │   │   │   ├── RCTCxxInspectorWebSocketAdapter.h
│   │   │   │   ├── RCTCxxInspectorWebSocketAdapter.mm
│   │   │   │   ├── RCTInspector.h
│   │   │   │   ├── RCTInspector.mm
│   │   │   │   └── RCTInspectorPackagerConnection.h
│   │   │   ├── Modules/
│   │   │   │   ├── RCTEventEmitter.h
│   │   │   │   ├── RCTEventEmitter.m
│   │   │   │   ├── RCTI18nUtil.h
│   │   │   │   ├── RCTI18nUtil.m
│   │   │   │   ├── RCTLayoutAnimation.h
│   │   │   │   ├── RCTLayoutAnimation.m
│   │   │   │   ├── RCTLayoutAnimationGroup.h
│   │   │   │   ├── RCTLayoutAnimationGroup.m
│   │   │   │   ├── RCTRedBoxExtraDataViewController.h
│   │   │   │   ├── RCTRedBoxExtraDataViewController.m
│   │   │   │   ├── RCTSurfacePresenterStub.h
│   │   │   │   ├── RCTSurfacePresenterStub.m
│   │   │   │   ├── RCTUIManager.h
│   │   │   │   ├── RCTUIManager.mm
│   │   │   │   ├── RCTUIManagerObserverCoordinator.h
│   │   │   │   ├── RCTUIManagerObserverCoordinator.mm
│   │   │   │   ├── RCTUIManagerUtils.h
│   │   │   │   └── RCTUIManagerUtils.m
│   │   │   ├── Profiler/
│   │   │   │   ├── RCTMacros.h
│   │   │   │   ├── RCTProfile.h
│   │   │   │   ├── RCTProfile.m
│   │   │   │   ├── RCTProfileTrampoline-arm.S
│   │   │   │   ├── RCTProfileTrampoline-arm64.S
│   │   │   │   ├── RCTProfileTrampoline-i386.S
│   │   │   │   └── RCTProfileTrampoline-x86_64.S
│   │   │   ├── React-RCTFBReactNativeSpec.podspec
│   │   │   ├── React-RCTFabric.podspec
│   │   │   ├── Resources/
│   │   │   │   └── PrivacyInfo.xcprivacy
│   │   │   ├── Runtime/
│   │   │   │   ├── RCTHermesInstanceFactory.h
│   │   │   │   ├── RCTHermesInstanceFactory.mm
│   │   │   │   └── React-RCTRuntime.podspec
│   │   │   ├── Tests/
│   │   │   │   ├── Mounting/
│   │   │   │   │   ├── RCTComponentViewRegistryTests.mm
│   │   │   │   │   └── RCTViewComponentViewTests.mm
│   │   │   │   └── Text/
│   │   │   │       ├── RCTAttributedTextUtilsTest.mm
│   │   │   │       ├── RCTParagraphComponentViewTests.mm
│   │   │   │       └── RCTTextAttributesTest.mm
│   │   │   ├── Views/
│   │   │   │   ├── RCTActivityIndicatorView.h
│   │   │   │   ├── RCTActivityIndicatorView.m
│   │   │   │   ├── RCTActivityIndicatorViewManager.h
│   │   │   │   ├── RCTActivityIndicatorViewManager.m
│   │   │   │   ├── RCTAnimationType.h
│   │   │   │   ├── RCTAutoInsetsProtocol.h
│   │   │   │   ├── RCTBorderCurve.h
│   │   │   │   ├── RCTBorderDrawing.h
│   │   │   │   ├── RCTBorderDrawing.m
│   │   │   │   ├── RCTBorderStyle.h
│   │   │   │   ├── RCTComponent.h
│   │   │   │   ├── RCTComponentData.h
│   │   │   │   ├── RCTComponentData.mm
│   │   │   │   ├── RCTConvert+CoreLocation.h
│   │   │   │   ├── RCTConvert+CoreLocation.m
│   │   │   │   ├── RCTConvert+Transform.h
│   │   │   │   ├── RCTConvert+Transform.m
│   │   │   │   ├── RCTCursor.h
│   │   │   │   ├── RCTDebuggingOverlay.h
│   │   │   │   ├── RCTDebuggingOverlay.m
│   │   │   │   ├── RCTDebuggingOverlayManager.h
│   │   │   │   ├── RCTDebuggingOverlayManager.m
│   │   │   │   ├── RCTFont+Private.h
│   │   │   │   ├── RCTFont.h
│   │   │   │   ├── RCTFont.mm
│   │   │   │   ├── RCTLayout.h
│   │   │   │   ├── RCTLayout.m
│   │   │   │   ├── RCTModalHostView.h
│   │   │   │   ├── RCTModalHostView.m
│   │   │   │   ├── RCTModalHostViewController.h
│   │   │   │   ├── RCTModalHostViewController.m
│   │   │   │   ├── RCTModalHostViewManager.h
│   │   │   │   ├── RCTModalHostViewManager.m
│   │   │   │   ├── RCTModalManager.h
│   │   │   │   ├── RCTModalManager.m
│   │   │   │   ├── RCTPointerEvents.h
│   │   │   │   ├── RCTRootShadowView.h
│   │   │   │   ├── RCTRootShadowView.m
│   │   │   │   ├── RCTShadowView+Internal.h
│   │   │   │   ├── RCTShadowView+Internal.m
│   │   │   │   ├── RCTShadowView+Layout.h
│   │   │   │   ├── RCTShadowView+Layout.m
│   │   │   │   ├── RCTShadowView.h
│   │   │   │   ├── RCTShadowView.m
│   │   │   │   ├── RCTSwitch.h
│   │   │   │   ├── RCTSwitch.m
│   │   │   │   ├── RCTSwitchManager.h
│   │   │   │   ├── RCTSwitchManager.m
│   │   │   │   ├── RCTTextDecorationLineType.h
│   │   │   │   ├── RCTView.h
│   │   │   │   ├── RCTView.m
│   │   │   │   ├── RCTViewManager.h
│   │   │   │   ├── RCTViewManager.m
│   │   │   │   ├── RCTViewUtils.h
│   │   │   │   ├── RCTViewUtils.m
│   │   │   │   ├── RCTWrapperViewController.h
│   │   │   │   ├── RCTWrapperViewController.m
│   │   │   │   ├── RefreshControl/
│   │   │   │   │   ├── RCTRefreshControl.h
│   │   │   │   │   ├── RCTRefreshControl.m
│   │   │   │   │   ├── RCTRefreshControlManager.h
│   │   │   │   │   ├── RCTRefreshControlManager.m
│   │   │   │   │   └── RCTRefreshableProtocol.h
│   │   │   │   ├── SafeAreaView/
│   │   │   │   │   ├── RCTSafeAreaShadowView.h
│   │   │   │   │   ├── RCTSafeAreaShadowView.m
│   │   │   │   │   ├── RCTSafeAreaView.h
│   │   │   │   │   ├── RCTSafeAreaView.m
│   │   │   │   │   ├── RCTSafeAreaViewLocalData.h
│   │   │   │   │   ├── RCTSafeAreaViewLocalData.m
│   │   │   │   │   ├── RCTSafeAreaViewManager.h
│   │   │   │   │   └── RCTSafeAreaViewManager.m
│   │   │   │   ├── ScrollView/
│   │   │   │   │   ├── RCTScrollContentShadowView.h
│   │   │   │   │   ├── RCTScrollContentShadowView.m
│   │   │   │   │   ├── RCTScrollContentView.h
│   │   │   │   │   ├── RCTScrollContentView.m
│   │   │   │   │   ├── RCTScrollContentViewManager.h
│   │   │   │   │   ├── RCTScrollContentViewManager.m
│   │   │   │   │   ├── RCTScrollEvent.h
│   │   │   │   │   ├── RCTScrollEvent.m
│   │   │   │   │   ├── RCTScrollView.h
│   │   │   │   │   ├── RCTScrollView.m
│   │   │   │   │   ├── RCTScrollViewManager.h
│   │   │   │   │   ├── RCTScrollViewManager.m
│   │   │   │   │   └── RCTScrollableProtocol.h
│   │   │   │   ├── UIView+Private.h
│   │   │   │   ├── UIView+React.h
│   │   │   │   └── UIView+React.m
│   │   │   └── third-party.xcconfig
│   │   ├── React-Core-prebuilt.podspec
│   │   ├── React-Core.podspec
│   │   ├── React.podspec
│   │   ├── ReactAndroid/
│   │   │   ├── README.md
│   │   │   ├── api/
│   │   │   │   └── ReactAndroid.api
│   │   │   ├── build.gradle.kts
│   │   │   ├── cmake-utils/
│   │   │   │   ├── ReactNative-application.cmake
│   │   │   │   ├── default-app-setup/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   └── OnLoad.cpp
│   │   │   │   └── folly-flags.cmake
│   │   │   ├── external-artifacts/
│   │   │   │   └── build.gradle.kts
│   │   │   ├── gradle.properties
│   │   │   ├── hermes-engine/
│   │   │   │   ├── build.gradle.kts
│   │   │   │   └── gradle.properties
│   │   │   ├── proguard-rules.pro
│   │   │   ├── publish.gradle
│   │   │   └── src/
│   │   │       ├── debug/
│   │   │       │   └── AndroidManifest.xml
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── facebook/
│   │   │       │   │           ├── debug/
│   │   │       │   │           │   ├── debugoverlay/
│   │   │       │   │           │   │   └── model/
│   │   │       │   │           │   │       └── DebugOverlayTag.kt
│   │   │       │   │           │   ├── holder/
│   │   │       │   │           │   │   ├── NoopPrinter.kt
│   │   │       │   │           │   │   ├── Printer.kt
│   │   │       │   │           │   │   └── PrinterHolder.kt
│   │   │       │   │           │   └── tags/
│   │   │       │   │           │       └── ReactDebugOverlayTags.kt
│   │   │       │   │           ├── hermes/
│   │   │       │   │           │   ├── instrumentation/
│   │   │       │   │           │   │   ├── HermesMemoryDumper.kt
│   │   │       │   │           │   │   └── HermesSamplingProfiler.kt
│   │   │       │   │           │   └── reactexecutor/
│   │   │       │   │           │       ├── HermesExecutor.kt
│   │   │       │   │           │       ├── HermesExecutorFactory.kt
│   │   │       │   │           │       └── fbjni.pro
│   │   │       │   │           ├── react/
│   │   │       │   │           │   ├── BaseReactPackage.kt
│   │   │       │   │           │   ├── DebugCorePackage.kt
│   │   │       │   │           │   ├── HeadlessJsTaskService.kt
│   │   │       │   │           │   ├── MemoryPressureRouter.kt
│   │   │       │   │           │   ├── NativeModuleRegistryBuilder.kt
│   │   │       │   │           │   ├── ReactActivity.java
│   │   │       │   │           │   ├── ReactActivityDelegate.java
│   │   │       │   │           │   ├── ReactAndroidHWInputDeviceHelper.kt
│   │   │       │   │           │   ├── ReactApplication.kt
│   │   │       │   │           │   ├── ReactDelegate.kt
│   │   │       │   │           │   ├── ReactFragment.kt
│   │   │       │   │           │   ├── ReactHost.kt
│   │   │       │   │           │   ├── ReactInstanceEventListener.kt
│   │   │       │   │           │   ├── ReactInstanceManager.java
│   │   │       │   │           │   ├── ReactInstanceManagerBuilder.kt
│   │   │       │   │           │   ├── ReactNativeHost.java
│   │   │       │   │           │   ├── ReactPackage.kt
│   │   │       │   │           │   ├── ReactPackageHelper.kt
│   │   │       │   │           │   ├── ReactPackageTurboModuleManagerDelegate.kt
│   │   │       │   │           │   ├── ReactRootView.java
│   │   │       │   │           │   ├── TurboReactPackage.kt
│   │   │       │   │           │   ├── ViewManagerOnDemandReactPackage.kt
│   │   │       │   │           │   ├── animated/
│   │   │       │   │           │   │   ├── AdditionAnimatedNode.kt
│   │   │       │   │           │   │   ├── AnimatedNode.kt
│   │   │       │   │           │   │   ├── AnimatedNodeValueListener.kt
│   │   │       │   │           │   │   ├── AnimatedNodeWithUpdateableConfig.kt
│   │   │       │   │           │   │   ├── AnimationDriver.kt
│   │   │       │   │           │   │   ├── ColorAnimatedNode.kt
│   │   │       │   │           │   │   ├── DecayAnimation.kt
│   │   │       │   │           │   │   ├── DiffClampAnimatedNode.kt
│   │   │       │   │           │   │   ├── DivisionAnimatedNode.kt
│   │   │       │   │           │   │   ├── EventAnimationDriver.kt
│   │   │       │   │           │   │   ├── FrameBasedAnimationDriver.kt
│   │   │       │   │           │   │   ├── InterpolationAnimatedNode.kt
│   │   │       │   │           │   │   ├── ModulusAnimatedNode.kt
│   │   │       │   │           │   │   ├── MultiplicationAnimatedNode.kt
│   │   │       │   │           │   │   ├── NativeAnimatedModule.kt
│   │   │       │   │           │   │   ├── NativeAnimatedNodesManager.kt
│   │   │       │   │           │   │   ├── ObjectAnimatedNode.kt
│   │   │       │   │           │   │   ├── PropsAnimatedNode.kt
│   │   │       │   │           │   │   ├── SpringAnimation.kt
│   │   │       │   │           │   │   ├── StyleAnimatedNode.kt
│   │   │       │   │           │   │   ├── SubtractionAnimatedNode.kt
│   │   │       │   │           │   │   ├── TrackingAnimatedNode.kt
│   │   │       │   │           │   │   ├── TransformAnimatedNode.kt
│   │   │       │   │           │   │   └── ValueAnimatedNode.kt
│   │   │       │   │           │   ├── bridge/
│   │   │       │   │           │   │   ├── ActivityEventListener.kt
│   │   │       │   │           │   │   ├── Arguments.kt
│   │   │       │   │           │   │   ├── AssertionException.kt
│   │   │       │   │           │   │   ├── BaseActivityEventListener.kt
│   │   │       │   │           │   │   ├── BaseJavaModule.java
│   │   │       │   │           │   │   ├── BridgeReactContext.java
│   │   │       │   │           │   │   ├── Callback.kt
│   │   │       │   │           │   │   ├── CatalystInstance.kt
│   │   │       │   │           │   │   ├── ColorPropConverter.kt
│   │   │       │   │           │   │   ├── CxxCallbackImpl.kt
│   │   │       │   │           │   │   ├── DefaultJSExceptionHandler.kt
│   │   │       │   │           │   │   ├── DimensionPropConverter.kt
│   │   │       │   │           │   │   ├── Dynamic.kt
│   │   │       │   │           │   │   ├── DynamicFromArray.kt
│   │   │       │   │           │   │   ├── DynamicFromMap.kt
│   │   │       │   │           │   │   ├── DynamicFromObject.kt
│   │   │       │   │           │   │   ├── DynamicNative.kt
│   │   │       │   │           │   │   ├── GuardedAsyncTask.kt
│   │   │       │   │           │   │   ├── GuardedRunnable.kt
│   │   │       │   │           │   │   ├── JSApplicationCausedNativeException.kt
│   │   │       │   │           │   │   ├── JSApplicationIllegalArgumentException.kt
│   │   │       │   │           │   │   ├── JSBundleLoader.kt
│   │   │       │   │           │   │   ├── JSBundleLoaderDelegate.kt
│   │   │       │   │           │   │   ├── JSExceptionHandler.kt
│   │   │       │   │           │   │   ├── JSInstance.kt
│   │   │       │   │           │   │   ├── JavaMethodWrapper.kt
│   │   │       │   │           │   │   ├── JavaModuleWrapper.kt
│   │   │       │   │           │   │   ├── JavaOnlyArray.kt
│   │   │       │   │           │   │   ├── JavaOnlyMap.kt
│   │   │       │   │           │   │   ├── JavaScriptContextHolder.kt
│   │   │       │   │           │   │   ├── JavaScriptExecutor.kt
│   │   │       │   │           │   │   ├── JavaScriptExecutorFactory.kt
│   │   │       │   │           │   │   ├── JavaScriptModule.kt
│   │   │       │   │           │   │   ├── JavaScriptModuleRegistry.kt
│   │   │       │   │           │   │   ├── JsonWriterHelper.kt
│   │   │       │   │           │   │   ├── LifecycleEventListener.kt
│   │   │       │   │           │   │   ├── MemoryPressureListener.kt
│   │   │       │   │           │   │   ├── ModuleHolder.kt
│   │   │       │   │           │   │   ├── ModuleSpec.kt
│   │   │       │   │           │   │   ├── NativeArray.kt
│   │   │       │   │           │   │   ├── NativeArrayInterface.kt
│   │   │       │   │           │   │   ├── NativeMap.kt
│   │   │       │   │           │   │   ├── NativeModule.java
│   │   │       │   │           │   │   ├── NativeModuleRegistry.kt
│   │   │       │   │           │   │   ├── NoSuchKeyException.kt
│   │   │       │   │           │   │   ├── ObjectAlreadyConsumedException.kt
│   │   │       │   │           │   │   ├── PerformanceCounter.kt
│   │   │       │   │           │   │   ├── Promise.kt
│   │   │       │   │           │   │   ├── PromiseImpl.kt
│   │   │       │   │           │   │   ├── ReactApplicationContext.kt
│   │   │       │   │           │   │   ├── ReactContext.java
│   │   │       │   │           │   │   ├── ReactContextBaseJavaModule.kt
│   │   │       │   │           │   │   ├── ReactIgnorableMountingException.kt
│   │   │       │   │           │   │   ├── ReactMarker.kt
│   │   │       │   │           │   │   ├── ReactMarkerConstants.kt
│   │   │       │   │           │   │   ├── ReactMethod.kt
│   │   │       │   │           │   │   ├── ReactModuleWithSpec.kt
│   │   │       │   │           │   │   ├── ReactNativeJNISoLoader.kt
│   │   │       │   │           │   │   ├── ReactNativeJniCommonSoLoader.kt
│   │   │       │   │           │   │   ├── ReactNoCrashSoftException.kt
│   │   │       │   │           │   │   ├── ReactSoftExceptionLogger.kt
│   │   │       │   │           │   │   ├── ReadableArray.kt
│   │   │       │   │           │   │   ├── ReadableArrayBuilder.kt
│   │   │       │   │           │   │   ├── ReadableMap.kt
│   │   │       │   │           │   │   ├── ReadableMapBuilder.kt
│   │   │       │   │           │   │   ├── ReadableMapKeySetIterator.kt
│   │   │       │   │           │   │   ├── ReadableNativeArray.kt
│   │   │       │   │           │   │   ├── ReadableNativeMap.kt
│   │   │       │   │           │   │   ├── ReadableType.kt
│   │   │       │   │           │   │   ├── RetryableMountingLayerException.kt
│   │   │       │   │           │   │   ├── RuntimeExecutor.kt
│   │   │       │   │           │   │   ├── RuntimeScheduler.kt
│   │   │       │   │           │   │   ├── ScrollEndedListener.kt
│   │   │       │   │           │   │   ├── SoftAssertions.kt
│   │   │       │   │           │   │   ├── Systrace.kt
│   │   │       │   │           │   │   ├── UIManager.kt
│   │   │       │   │           │   │   ├── UIManagerListener.kt
│   │   │       │   │           │   │   ├── UIManagerProvider.kt
│   │   │       │   │           │   │   ├── UiThreadUtil.kt
│   │   │       │   │           │   │   ├── UnexpectedNativeTypeException.kt
│   │   │       │   │           │   │   ├── WindowFocusChangeListener.kt
│   │   │       │   │           │   │   ├── WritableArray.kt
│   │   │       │   │           │   │   ├── WritableMap.kt
│   │   │       │   │           │   │   ├── WritableNativeArray.kt
│   │   │       │   │           │   │   ├── WritableNativeMap.kt
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   └── InteropModuleRegistry.kt
│   │   │       │   │           │   │   ├── queue/
│   │   │       │   │           │   │   │   ├── MessageQueueThread.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadHandler.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadImpl.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadPerfStats.kt
│   │   │       │   │           │   │   │   ├── MessageQueueThreadSpec.kt
│   │   │       │   │           │   │   │   ├── QueueThreadExceptionHandler.kt
│   │   │       │   │           │   │   │   ├── ReactQueueConfiguration.kt
│   │   │       │   │           │   │   │   ├── ReactQueueConfigurationImpl.kt
│   │   │       │   │           │   │   │   └── ReactQueueConfigurationSpec.kt
│   │   │       │   │           │   │   └── reactnative.pro
│   │   │       │   │           │   ├── common/
│   │   │       │   │           │   │   ├── ClassFinder.kt
│   │   │       │   │           │   │   ├── ClearableSynchronizedPool.kt
│   │   │       │   │           │   │   ├── DebugServerException.kt
│   │   │       │   │           │   │   ├── JavascriptException.kt
│   │   │       │   │           │   │   ├── LifecycleState.kt
│   │   │       │   │           │   │   ├── MapBuilder.kt
│   │   │       │   │           │   │   ├── ReactConstants.kt
│   │   │       │   │           │   │   ├── ReleaseLevel.kt
│   │   │       │   │           │   │   ├── ShakeDetector.kt
│   │   │       │   │           │   │   ├── SurfaceDelegate.kt
│   │   │       │   │           │   │   ├── SurfaceDelegateFactory.kt
│   │   │       │   │           │   │   ├── SystemClock.kt
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── FrameworkAPI.kt
│   │   │       │   │           │   │   │   ├── LegacyArchitectureShadowNodeWithCxxImpl.kt
│   │   │       │   │           │   │   │   ├── StableReactNativeAPI.kt
│   │   │       │   │           │   │   │   ├── UnstableReactNativeAPI.kt
│   │   │       │   │           │   │   │   ├── VisibleForTesting.kt
│   │   │       │   │           │   │   │   └── internal/
│   │   │       │   │           │   │   │       ├── InteropLegacyArchitecture.kt
│   │   │       │   │           │   │   │       ├── LegacyArchitecture.kt
│   │   │       │   │           │   │   │       ├── LegacyArchitectureLogLevel.kt
│   │   │       │   │           │   │   │       └── LegacyArchitectureLogger.kt
│   │   │       │   │           │   │   ├── assets/
│   │   │       │   │           │   │   │   └── ReactFontManager.kt
│   │   │       │   │           │   │   ├── build/
│   │   │       │   │           │   │   │   └── ReactBuildConfig.kt
│   │   │       │   │           │   │   ├── futures/
│   │   │       │   │           │   │   │   └── SimpleSettableFuture.kt
│   │   │       │   │           │   │   ├── mapbuffer/
│   │   │       │   │           │   │   │   ├── MapBuffer.kt
│   │   │       │   │           │   │   │   ├── ReadableMapBuffer.kt
│   │   │       │   │           │   │   │   └── WritableMapBuffer.kt
│   │   │       │   │           │   │   └── network/
│   │   │       │   │           │   │       └── OkHttpCallUtil.kt
│   │   │       │   │           │   ├── config/
│   │   │       │   │           │   │   └── ReactFeatureFlags.kt
│   │   │       │   │           │   ├── defaults/
│   │   │       │   │           │   │   ├── DefaultComponentsRegistry.kt
│   │   │       │   │           │   │   ├── DefaultNewArchitectureEntryPoint.kt
│   │   │       │   │           │   │   ├── DefaultReactActivityDelegate.kt
│   │   │       │   │           │   │   ├── DefaultReactHost.kt
│   │   │       │   │           │   │   ├── DefaultReactHostDelegate.kt
│   │   │       │   │           │   │   ├── DefaultReactNativeHost.kt
│   │   │       │   │           │   │   ├── DefaultSoLoader.kt
│   │   │       │   │           │   │   └── DefaultTurboModuleManagerDelegate.kt
│   │   │       │   │           │   ├── devsupport/
│   │   │       │   │           │   │   ├── BridgelessDevSupportManager.kt
│   │   │       │   │           │   │   ├── BundleDownloader.kt
│   │   │       │   │           │   │   ├── ChangeBundleLocationDialog.kt
│   │   │       │   │           │   │   ├── CxxInspectorPackagerConnection.kt
│   │   │       │   │           │   │   ├── DebugOverlayController.kt
│   │   │       │   │           │   │   ├── DefaultDevLoadingViewImplementation.kt
│   │   │       │   │           │   │   ├── DefaultDevSupportManagerFactory.kt
│   │   │       │   │           │   │   ├── DevInternalSettings.kt
│   │   │       │   │           │   │   ├── DevMenuConfiguration.kt
│   │   │       │   │           │   │   ├── DevServerHelper.kt
│   │   │       │   │           │   │   ├── DevSettingsActivity.kt
│   │   │       │   │           │   │   ├── DevSupportManagerBase.kt
│   │   │       │   │           │   │   ├── DevSupportManagerFactory.kt
│   │   │       │   │           │   │   ├── DoubleTapReloadRecognizer.kt
│   │   │       │   │           │   │   ├── FpsView.kt
│   │   │       │   │           │   │   ├── HMRClient.kt
│   │   │       │   │           │   │   ├── IInspectorPackagerConnection.kt
│   │   │       │   │           │   │   ├── InspectorFlags.kt
│   │   │       │   │           │   │   ├── LogBoxDialog.kt
│   │   │       │   │           │   │   ├── LogBoxDialogSurfaceDelegate.kt
│   │   │       │   │           │   │   ├── LogBoxModule.kt
│   │   │       │   │           │   │   ├── MultipartStreamReader.kt
│   │   │       │   │           │   │   ├── PackagerStatusCheck.kt
│   │   │       │   │           │   │   ├── PausedInDebuggerOverlayDialogManager.kt
│   │   │       │   │           │   │   ├── PerftestDevSupportManager.kt
│   │   │       │   │           │   │   ├── ReactInstanceDevHelper.kt
│   │   │       │   │           │   │   ├── RedBoxContentView.kt
│   │   │       │   │           │   │   ├── RedBoxDialogSurfaceDelegate.kt
│   │   │       │   │           │   │   ├── ReleaseDevSupportManager.kt
│   │   │       │   │           │   │   ├── StackTraceHelper.kt
│   │   │       │   │           │   │   ├── WindowOverlayCompat.kt
│   │   │       │   │           │   │   ├── inspector/
│   │   │       │   │           │   │   │   ├── DevSupportHttpClient.kt
│   │   │       │   │           │   │   │   ├── FrameTimingSequence.kt
│   │   │       │   │           │   │   │   ├── FrameTimingsObserver.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkHelper.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkRequestListener.kt
│   │   │       │   │           │   │   │   ├── TracingState.kt
│   │   │       │   │           │   │   │   ├── TracingStateListener.kt
│   │   │       │   │           │   │   │   └── TracingStateProvider.kt
│   │   │       │   │           │   │   ├── interfaces/
│   │   │       │   │           │   │   │   ├── BundleLoadCallback.kt
│   │   │       │   │           │   │   │   ├── DebuggerFrontendPanelName.kt
│   │   │       │   │           │   │   │   ├── DevBundleDownloadListener.kt
│   │   │       │   │           │   │   │   ├── DevLoadingViewManager.kt
│   │   │       │   │           │   │   │   ├── DevOptionHandler.kt
│   │   │       │   │           │   │   │   ├── DevSupportManager.kt
│   │   │       │   │           │   │   │   ├── ErrorCustomizer.kt
│   │   │       │   │           │   │   │   ├── ErrorType.kt
│   │   │       │   │           │   │   │   ├── PackagerStatusCallback.kt
│   │   │       │   │           │   │   │   ├── PausedInDebuggerOverlayManager.kt
│   │   │       │   │           │   │   │   ├── RedBoxHandler.kt
│   │   │       │   │           │   │   │   └── StackFrame.kt
│   │   │       │   │           │   │   └── perfmonitor/
│   │   │       │   │           │   │       ├── PerfMonitorDevHelper.kt
│   │   │       │   │           │   │       ├── PerfMonitorEventDispatcher.kt
│   │   │       │   │           │   │       ├── PerfMonitorInspectorTarget.kt
│   │   │       │   │           │   │       ├── PerfMonitorInspectorTargetBinding.kt
│   │   │       │   │           │   │       ├── PerfMonitorOverlayManager.kt
│   │   │       │   │           │   │       ├── PerfMonitorOverlayView.kt
│   │   │       │   │           │   │       └── PerfMonitorUpdateListener.kt
│   │   │       │   │           │   ├── fabric/
│   │   │       │   │           │   │   ├── AnimationBackendChoreographer.kt
│   │   │       │   │           │   │   ├── ComponentFactory.kt
│   │   │       │   │           │   │   ├── DevToolsReactPerfLogger.kt
│   │   │       │   │           │   │   ├── FabricSoLoader.kt
│   │   │       │   │           │   │   ├── FabricUIManager.java
│   │   │       │   │           │   │   ├── FabricUIManagerBinding.kt
│   │   │       │   │           │   │   ├── FabricUIManagerProviderImpl.kt
│   │   │       │   │           │   │   ├── LongStreamingStats.kt
│   │   │       │   │           │   │   ├── StateWrapperImpl.kt
│   │   │       │   │           │   │   ├── SurfaceHandlerBinding.kt
│   │   │       │   │           │   │   ├── SynchronousEvent.kt
│   │   │       │   │           │   │   ├── events/
│   │   │       │   │           │   │   │   ├── EventBeatManager.kt
│   │   │       │   │           │   │   │   ├── EventEmitterWrapper.kt
│   │   │       │   │           │   │   │   ├── FabricEventEmitter.kt
│   │   │       │   │           │   │   │   └── __docs__/
│   │   │       │   │           │   │   │       └── README.md
│   │   │       │   │           │   │   ├── internal/
│   │   │       │   │           │   │   │   └── interop/
│   │   │       │   │           │   │   │       └── InteropUIBlockListener.kt
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   ├── UIBlock.kt
│   │   │       │   │           │   │   │   └── UIBlockViewResolver.kt
│   │   │       │   │           │   │   └── mounting/
│   │   │       │   │           │   │       ├── LayoutMetricsConversions.kt
│   │   │       │   │           │   │       ├── MountItemDispatcher.kt
│   │   │       │   │           │   │       ├── MountingManager.kt
│   │   │       │   │           │   │       ├── SurfaceMountingManager.kt
│   │   │       │   │           │   │       └── mountitems/
│   │   │       │   │           │   │           ├── BatchMountItem.kt
│   │   │       │   │           │   │           ├── DestroyUnmountedViewMountItem.kt
│   │   │       │   │           │   │           ├── DispatchCommandMountItem.kt
│   │   │       │   │           │   │           ├── DispatchIntCommandMountItem.kt
│   │   │       │   │           │   │           ├── DispatchStringCommandMountItem.kt
│   │   │       │   │           │   │           ├── FabricNameComponentMapping.kt
│   │   │       │   │           │   │           ├── IntBufferBatchMountItem.kt
│   │   │       │   │           │   │           ├── MountItem.kt
│   │   │       │   │           │   │           ├── MountItemFactory.kt
│   │   │       │   │           │   │           ├── PreAllocateViewMountItem.kt
│   │   │       │   │           │   │           ├── PrefetchResourcesMountItem.kt
│   │   │       │   │           │   │           ├── SendAccessibilityEventMountItem.kt
│   │   │       │   │           │   │           └── SynchronousMountItem.kt
│   │   │       │   │           │   ├── interfaces/
│   │   │       │   │           │   │   ├── TaskInterface.kt
│   │   │       │   │           │   │   ├── exceptionmanager/
│   │   │       │   │           │   │   │   └── ReactJsExceptionHandler.kt
│   │   │       │   │           │   │   └── fabric/
│   │   │       │   │           │   │       └── ReactSurface.kt
│   │   │       │   │           │   ├── internal/
│   │   │       │   │           │   │   ├── AndroidChoreographerProvider.kt
│   │   │       │   │           │   │   ├── ChoreographerProvider.kt
│   │   │       │   │           │   │   ├── SystraceSection.kt
│   │   │       │   │           │   │   ├── featureflags/
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlags.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsCxxAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsCxxInterop.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsDefaults.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsForTests.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsLocalAccessor.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt
│   │   │       │   │           │   │   │   ├── ReactNativeFeatureFlagsProvider.kt
│   │   │       │   │           │   │   │   ├── ReactNativeNewArchitectureFeatureFlags.kt
│   │   │       │   │           │   │   │   ├── ReactNativeNewArchitectureFeatureFlagsDefaults.kt
│   │   │       │   │           │   │   │   └── __docs__/
│   │   │       │   │           │   │   │       └── README.md
│   │   │       │   │           │   │   ├── interop/
│   │   │       │   │           │   │   │   ├── InteropEvent.kt
│   │   │       │   │           │   │   │   └── InteropEventEmitter.kt
│   │   │       │   │           │   │   ├── tracing/
│   │   │       │   │           │   │   │   └── PerformanceTracer.kt
│   │   │       │   │           │   │   └── turbomodule/
│   │   │       │   │           │   │       └── core/
│   │   │       │   │           │   │           ├── TurboModuleInteropUtils.kt
│   │   │       │   │           │   │           ├── TurboModuleManager.kt
│   │   │       │   │           │   │           ├── TurboModuleManagerDelegate.kt
│   │   │       │   │           │   │           ├── TurboModulePerfLogger.kt
│   │   │       │   │           │   │           └── interfaces/
│   │   │       │   │           │   │               └── TurboModuleRegistry.kt
│   │   │       │   │           │   ├── jstasks/
│   │   │       │   │           │   │   ├── HeadlessJsTaskConfig.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskContext.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskEventListener.kt
│   │   │       │   │           │   │   ├── HeadlessJsTaskRetryPolicy.kt
│   │   │       │   │           │   │   ├── LinearCountingRetryPolicy.kt
│   │   │       │   │           │   │   └── NoRetryPolicy.kt
│   │   │       │   │           │   ├── module/
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── ReactModule.kt
│   │   │       │   │           │   │   │   └── ReactModuleList.kt
│   │   │       │   │           │   │   └── model/
│   │   │       │   │           │   │       ├── ReactModuleInfo.kt
│   │   │       │   │           │   │       └── ReactModuleInfoProvider.kt
│   │   │       │   │           │   ├── modules/
│   │   │       │   │           │   │   ├── accessibilityinfo/
│   │   │       │   │           │   │   │   └── AccessibilityInfoModule.kt
│   │   │       │   │           │   │   ├── appearance/
│   │   │       │   │           │   │   │   └── AppearanceModule.kt
│   │   │       │   │           │   │   ├── appregistry/
│   │   │       │   │           │   │   │   └── AppRegistry.kt
│   │   │       │   │           │   │   ├── appstate/
│   │   │       │   │           │   │   │   └── AppStateModule.kt
│   │   │       │   │           │   │   ├── blob/
│   │   │       │   │           │   │   │   ├── BlobCollector.kt
│   │   │       │   │           │   │   │   ├── BlobModule.kt
│   │   │       │   │           │   │   │   ├── BlobProvider.kt
│   │   │       │   │           │   │   │   └── FileReaderModule.kt
│   │   │       │   │           │   │   ├── camera/
│   │   │       │   │           │   │   │   └── ImageStoreManager.kt
│   │   │       │   │           │   │   ├── clipboard/
│   │   │       │   │           │   │   │   └── ClipboardModule.kt
│   │   │       │   │           │   │   ├── common/
│   │   │       │   │           │   │   │   └── ModuleDataCleaner.kt
│   │   │       │   │           │   │   ├── core/
│   │   │       │   │           │   │   │   ├── DefaultHardwareBackBtnHandler.kt
│   │   │       │   │           │   │   │   ├── DeviceEventManagerModule.kt
│   │   │       │   │           │   │   │   ├── ExceptionsManagerModule.kt
│   │   │       │   │           │   │   │   ├── HeadlessJsTaskSupportModule.kt
│   │   │       │   │           │   │   │   ├── JSTimers.kt
│   │   │       │   │           │   │   │   ├── JavaScriptTimerExecutor.kt
│   │   │       │   │           │   │   │   ├── JavaTimerManager.kt
│   │   │       │   │           │   │   │   ├── PermissionAwareActivity.kt
│   │   │       │   │           │   │   │   ├── PermissionListener.kt
│   │   │       │   │           │   │   │   ├── RCTNativeAppEventEmitter.kt
│   │   │       │   │           │   │   │   ├── ReactChoreographer.kt
│   │   │       │   │           │   │   │   └── TimingModule.kt
│   │   │       │   │           │   │   ├── debug/
│   │   │       │   │           │   │   │   ├── DevMenuModule.kt
│   │   │       │   │           │   │   │   ├── DevSettingsModule.kt
│   │   │       │   │           │   │   │   ├── FpsDebugFrameCallback.kt
│   │   │       │   │           │   │   │   ├── SourceCodeModule.kt
│   │   │       │   │           │   │   │   └── interfaces/
│   │   │       │   │           │   │   │       └── DeveloperSettings.kt
│   │   │       │   │           │   │   ├── deviceinfo/
│   │   │       │   │           │   │   │   └── DeviceInfoModule.kt
│   │   │       │   │           │   │   ├── devloading/
│   │   │       │   │           │   │   │   └── DevLoadingModule.kt
│   │   │       │   │           │   │   ├── devtoolsruntimesettings/
│   │   │       │   │           │   │   │   └── ReactDevToolsRuntimeSettingsModule.kt
│   │   │       │   │           │   │   ├── dialog/
│   │   │       │   │           │   │   │   ├── AlertFragment.kt
│   │   │       │   │           │   │   │   ├── DialogModule.kt
│   │   │       │   │           │   │   │   └── DialogTitle.kt
│   │   │       │   │           │   │   ├── fresco/
│   │   │       │   │           │   │   │   ├── FrescoModule.kt
│   │   │       │   │           │   │   │   ├── ImageCacheControl.kt
│   │   │       │   │           │   │   │   ├── ReactNetworkImageRequest.kt
│   │   │       │   │           │   │   │   ├── ReactOkHttpNetworkFetcher.kt
│   │   │       │   │           │   │   │   └── SystraceRequestListener.kt
│   │   │       │   │           │   │   ├── i18nmanager/
│   │   │       │   │           │   │   │   ├── I18nManagerModule.kt
│   │   │       │   │           │   │   │   └── I18nUtil.kt
│   │   │       │   │           │   │   ├── image/
│   │   │       │   │           │   │   │   └── ImageLoaderModule.kt
│   │   │       │   │           │   │   ├── intent/
│   │   │       │   │           │   │   │   └── IntentModule.kt
│   │   │       │   │           │   │   ├── network/
│   │   │       │   │           │   │   │   ├── CookieJarContainer.kt
│   │   │       │   │           │   │   │   ├── CustomClientBuilder.kt
│   │   │       │   │           │   │   │   ├── ForwardingCookieHandler.kt
│   │   │       │   │           │   │   │   ├── HeaderUtil.kt
│   │   │       │   │           │   │   │   ├── InspectorNetworkReporter.kt
│   │   │       │   │           │   │   │   ├── NetworkEventUtil.kt
│   │   │       │   │           │   │   │   ├── NetworkInterceptorCreator.kt
│   │   │       │   │           │   │   │   ├── NetworkingModule.kt
│   │   │       │   │           │   │   │   ├── OkHttpClientFactory.kt
│   │   │       │   │           │   │   │   ├── OkHttpClientProvider.kt
│   │   │       │   │           │   │   │   ├── ProgressListener.kt
│   │   │       │   │           │   │   │   ├── ProgressRequestBody.kt
│   │   │       │   │           │   │   │   ├── ProgressResponseBody.kt
│   │   │       │   │           │   │   │   ├── ProgressiveStringDecoder.kt
│   │   │       │   │           │   │   │   ├── ReactCookieJarContainer.kt
│   │   │       │   │           │   │   │   └── RequestBodyUtil.kt
│   │   │       │   │           │   │   ├── permissions/
│   │   │       │   │           │   │   │   └── PermissionsModule.kt
│   │   │       │   │           │   │   ├── reactdevtoolssettings/
│   │   │       │   │           │   │   │   └── ReactDevToolsSettingsManagerModule.kt
│   │   │       │   │           │   │   ├── share/
│   │   │       │   │           │   │   │   └── ShareModule.kt
│   │   │       │   │           │   │   ├── sound/
│   │   │       │   │           │   │   │   └── SoundManagerModule.kt
│   │   │       │   │           │   │   ├── statusbar/
│   │   │       │   │           │   │   │   └── StatusBarModule.kt
│   │   │       │   │           │   │   ├── systeminfo/
│   │   │       │   │           │   │   │   ├── AndroidInfoHelpers.kt
│   │   │       │   │           │   │   │   ├── AndroidInfoModule.kt
│   │   │       │   │           │   │   │   └── ReactNativeVersion.kt
│   │   │       │   │           │   │   ├── toast/
│   │   │       │   │           │   │   │   └── ToastModule.kt
│   │   │       │   │           │   │   ├── vibration/
│   │   │       │   │           │   │   │   └── VibrationModule.kt
│   │   │       │   │           │   │   └── websocket/
│   │   │       │   │           │   │       └── WebSocketModule.kt
│   │   │       │   │           │   ├── packagerconnection/
│   │   │       │   │           │   │   ├── FileIoHandler.kt
│   │   │       │   │           │   │   ├── JSPackagerClient.kt
│   │   │       │   │           │   │   ├── NotificationOnlyHandler.kt
│   │   │       │   │           │   │   ├── PackagerConnectionSettings.kt
│   │   │       │   │           │   │   ├── ReconnectingWebSocket.kt
│   │   │       │   │           │   │   ├── RequestHandler.kt
│   │   │       │   │           │   │   ├── RequestOnlyHandler.kt
│   │   │       │   │           │   │   └── Responder.kt
│   │   │       │   │           │   ├── reactperflogger/
│   │   │       │   │           │   │   └── NativeModulePerfLogger.kt
│   │   │       │   │           │   ├── runtime/
│   │   │       │   │           │   │   ├── BindingsInstaller.kt
│   │   │       │   │           │   │   ├── BridgelessAtomicRef.kt
│   │   │       │   │           │   │   ├── BridgelessCatalystInstance.kt
│   │   │       │   │           │   │   ├── BridgelessReactContext.kt
│   │   │       │   │           │   │   ├── CoreReactPackage.kt
│   │   │       │   │           │   │   ├── JSRuntimeFactory.kt
│   │   │       │   │           │   │   ├── JSTimerExecutor.kt
│   │   │       │   │           │   │   ├── README.md
│   │   │       │   │           │   │   ├── ReactHostDelegate.kt
│   │   │       │   │           │   │   ├── ReactHostImpl.kt
│   │   │       │   │           │   │   ├── ReactHostImplDevHelper.kt
│   │   │       │   │           │   │   ├── ReactHostInspectorTarget.kt
│   │   │       │   │           │   │   ├── ReactHostStateTracker.kt
│   │   │       │   │           │   │   ├── ReactInstance.kt
│   │   │       │   │           │   │   ├── ReactLifecycleStateManager.kt
│   │   │       │   │           │   │   ├── ReactSurfaceImpl.kt
│   │   │       │   │           │   │   ├── ReactSurfaceView.kt
│   │   │       │   │           │   │   ├── cxxreactpackage/
│   │   │       │   │           │   │   │   └── CxxReactPackage.kt
│   │   │       │   │           │   │   ├── hermes/
│   │   │       │   │           │   │   │   └── HermesInstance.kt
│   │   │       │   │           │   │   └── internal/
│   │   │       │   │           │   │       └── bolts/
│   │   │       │   │           │   │           ├── Continuation.kt
│   │   │       │   │           │   │           ├── ExecutorException.kt
│   │   │       │   │           │   │           ├── Executors.kt
│   │   │       │   │           │   │           ├── Task.kt
│   │   │       │   │           │   │           └── TaskCompletionSource.kt
│   │   │       │   │           │   ├── shell/
│   │   │       │   │           │   │   ├── MainPackageConfig.kt
│   │   │       │   │           │   │   └── MainReactPackage.kt
│   │   │       │   │           │   ├── soloader/
│   │   │       │   │           │   │   └── OpenSourceMergedSoMapping.kt
│   │   │       │   │           │   ├── touch/
│   │   │       │   │           │   │   ├── JSResponderHandler.kt
│   │   │       │   │           │   │   ├── OnInterceptTouchEventListener.kt
│   │   │       │   │           │   │   ├── ReactHitSlopView.kt
│   │   │       │   │           │   │   └── ReactInterceptingViewGroup.kt
│   │   │       │   │           │   ├── turbomodule/
│   │   │       │   │           │   │   └── core/
│   │   │       │   │           │   │       ├── CallInvokerHolderImpl.kt
│   │   │       │   │           │   │       ├── NativeMethodCallInvokerHolderImpl.kt
│   │   │       │   │           │   │       └── interfaces/
│   │   │       │   │           │   │           ├── BindingsInstallerHolder.kt
│   │   │       │   │           │   │           ├── CallInvokerHolder.kt
│   │   │       │   │           │   │           ├── NativeMethodCallInvokerHolder.kt
│   │   │       │   │           │   │           ├── TurboModule.kt
│   │   │       │   │           │   │           └── TurboModuleWithJSIBindings.kt
│   │   │       │   │           │   ├── uimanager/
│   │   │       │   │           │   │   ├── BackgroundStyleApplicator.kt
│   │   │       │   │           │   │   ├── BaseViewManager.java
│   │   │       │   │           │   │   ├── BaseViewManagerDelegate.kt
│   │   │       │   │           │   │   ├── BlendModeHelper.kt
│   │   │       │   │           │   │   ├── ComponentNameResolver.kt
│   │   │       │   │           │   │   ├── ComponentNameResolverBinding.kt
│   │   │       │   │           │   │   ├── DisplayMetricsHolder.kt
│   │   │       │   │           │   │   ├── FilterHelper.kt
│   │   │       │   │           │   │   ├── FloatUtil.kt
│   │   │       │   │           │   │   ├── GuardedFrameCallback.kt
│   │   │       │   │           │   │   ├── IViewGroupManager.kt
│   │   │       │   │           │   │   ├── IViewManagerWithChildren.kt
│   │   │       │   │           │   │   ├── IllegalViewOperationException.kt
│   │   │       │   │           │   │   ├── JSKeyDispatcher.kt
│   │   │       │   │           │   │   ├── JSPointerDispatcher.java
│   │   │       │   │           │   │   ├── JSTouchDispatcher.kt
│   │   │       │   │           │   │   ├── LayoutShadowNode.kt
│   │   │       │   │           │   │   ├── LengthPercentage.kt
│   │   │       │   │           │   │   ├── MatrixMathHelper.kt
│   │   │       │   │           │   │   ├── MeasureSpecAssertions.kt
│   │   │       │   │           │   │   ├── NativeViewHierarchyManager.java
│   │   │       │   │           │   │   ├── NativeViewHierarchyOptimizer.kt
│   │   │       │   │           │   │   ├── OnLayoutEvent.kt
│   │   │       │   │           │   │   ├── PixelUtil.kt
│   │   │       │   │           │   │   ├── PointerEvents.kt
│   │   │       │   │           │   │   ├── ReactAccessibilityDelegate.kt
│   │   │       │   │           │   │   ├── ReactAxOrderHelper.kt
│   │   │       │   │           │   │   ├── ReactClippingProhibitedView.kt
│   │   │       │   │           │   │   ├── ReactClippingViewGroup.kt
│   │   │       │   │           │   │   ├── ReactClippingViewGroupHelper.kt
│   │   │       │   │           │   │   ├── ReactCompoundView.kt
│   │   │       │   │           │   │   ├── ReactCompoundViewGroup.kt
│   │   │       │   │           │   │   ├── ReactOverflowView.kt
│   │   │       │   │           │   │   ├── ReactOverflowViewWithInset.kt
│   │   │       │   │           │   │   ├── ReactPointerEventsView.kt
│   │   │       │   │           │   │   ├── ReactRoot.kt
│   │   │       │   │           │   │   ├── ReactRootViewTagGenerator.kt
│   │   │       │   │           │   │   ├── ReactShadowNode.java
│   │   │       │   │           │   │   ├── ReactShadowNodeImpl.java
│   │   │       │   │           │   │   ├── ReactStage.kt
│   │   │       │   │           │   │   ├── ReactStylesDiffMap.kt
│   │   │       │   │           │   │   ├── ReactZIndexedViewGroup.kt
│   │   │       │   │           │   │   ├── ReferenceStateWrapper.kt
│   │   │       │   │           │   │   ├── RootView.kt
│   │   │       │   │           │   │   ├── RootViewManager.kt
│   │   │       │   │           │   │   ├── RootViewUtil.kt
│   │   │       │   │           │   │   ├── ShadowNodeRegistry.kt
│   │   │       │   │           │   │   ├── SimpleViewManager.kt
│   │   │       │   │           │   │   ├── Spacing.kt
│   │   │       │   │           │   │   ├── StateWrapper.kt
│   │   │       │   │           │   │   ├── ThemedReactContext.kt
│   │   │       │   │           │   │   ├── TouchTargetHelper.kt
│   │   │       │   │           │   │   ├── TransformHelper.kt
│   │   │       │   │           │   │   ├── UIBlock.kt
│   │   │       │   │           │   │   ├── UIConstantsProviderBinding.kt
│   │   │       │   │           │   │   ├── UIImplementation.java
│   │   │       │   │           │   │   ├── UIManagerHelper.kt
│   │   │       │   │           │   │   ├── UIManagerModule.java
│   │   │       │   │           │   │   ├── UIManagerModuleConstants.kt
│   │   │       │   │           │   │   ├── UIManagerModuleConstantsHelper.kt
│   │   │       │   │           │   │   ├── UIViewOperationQueue.java
│   │   │       │   │           │   │   ├── ViewAtIndex.kt
│   │   │       │   │           │   │   ├── ViewDefaults.kt
│   │   │       │   │           │   │   ├── ViewGroupDrawingOrderHelper.kt
│   │   │       │   │           │   │   ├── ViewGroupManager.kt
│   │   │       │   │           │   │   ├── ViewManager.java
│   │   │       │   │           │   │   ├── ViewManagerDelegate.kt
│   │   │       │   │           │   │   ├── ViewManagerPropertyUpdater.kt
│   │   │       │   │           │   │   ├── ViewManagerRegistry.kt
│   │   │       │   │           │   │   ├── ViewManagerResolver.kt
│   │   │       │   │           │   │   ├── ViewManagerWithGeneratedInterface.kt
│   │   │       │   │           │   │   ├── ViewManagersPropertyCache.java
│   │   │       │   │           │   │   ├── ViewProps.kt
│   │   │       │   │           │   │   ├── annotations/
│   │   │       │   │           │   │   │   ├── ReactProp.kt
│   │   │       │   │           │   │   │   ├── ReactPropGroup.kt
│   │   │       │   │           │   │   │   └── ReactPropertyHolder.kt
│   │   │       │   │           │   │   ├── common/
│   │   │       │   │           │   │   │   ├── UIManagerType.kt
│   │   │       │   │           │   │   │   └── ViewUtil.kt
│   │   │       │   │           │   │   ├── drawable/
│   │   │       │   │           │   │   │   ├── BackgroundDrawable.kt
│   │   │       │   │           │   │   │   ├── BackgroundImageDrawable.kt
│   │   │       │   │           │   │   │   ├── BorderDrawable.kt
│   │   │       │   │           │   │   │   ├── BoxShadowBorderRadius.kt
│   │   │       │   │           │   │   │   ├── CompositeBackgroundDrawable.kt
│   │   │       │   │           │   │   │   ├── InsetBoxShadowDrawable.kt
│   │   │       │   │           │   │   │   ├── OutlineDrawable.kt
│   │   │       │   │           │   │   │   └── OutsetBoxShadowDrawable.kt
│   │   │       │   │           │   │   ├── events/
│   │   │       │   │           │   │   │   ├── BatchEventDispatchedListener.kt
│   │   │       │   │           │   │   │   ├── BlackHoleEventDispatcher.kt
│   │   │       │   │           │   │   │   ├── BlurEvent.kt
│   │   │       │   │           │   │   │   ├── ContentSizeChangeEvent.kt
│   │   │       │   │           │   │   │   ├── Event.kt
│   │   │       │   │           │   │   │   ├── EventCategoryDef.kt
│   │   │       │   │           │   │   │   ├── EventDispatcher.kt
│   │   │       │   │           │   │   │   ├── EventDispatcherListener.kt
│   │   │       │   │           │   │   │   ├── EventDispatcherProvider.kt
│   │   │       │   │           │   │   │   ├── FabricEventDispatcher.kt
│   │   │       │   │           │   │   │   ├── FocusEvent.kt
│   │   │       │   │           │   │   │   ├── KeyDownEvent.kt
│   │   │       │   │           │   │   │   ├── KeyEvent.kt
│   │   │       │   │           │   │   │   ├── KeyUpEvent.kt
│   │   │       │   │           │   │   │   ├── NativeGestureUtil.kt
│   │   │       │   │           │   │   │   ├── PointerEvent.kt
│   │   │       │   │           │   │   │   ├── PointerEventHelper.kt
│   │   │       │   │           │   │   │   ├── RCTEventEmitter.kt
│   │   │       │   │           │   │   │   ├── RCTModernEventEmitter.kt
│   │   │       │   │           │   │   │   ├── SynchronousEventReceiver.kt
│   │   │       │   │           │   │   │   ├── TouchEvent.kt
│   │   │       │   │           │   │   │   ├── TouchEventCoalescingKeyHelper.kt
│   │   │       │   │           │   │   │   ├── TouchEventType.kt
│   │   │       │   │           │   │   │   └── TouchesHelper.kt
│   │   │       │   │           │   │   ├── internal/
│   │   │       │   │           │   │   │   └── LegacyArchitectureShadowNodeLogger.kt
│   │   │       │   │           │   │   ├── style/
│   │   │       │   │           │   │   │   ├── BackgroundImageLayer.kt
│   │   │       │   │           │   │   │   ├── BackgroundPosition.kt
│   │   │       │   │           │   │   │   ├── BackgroundRepeat.kt
│   │   │       │   │           │   │   │   ├── BackgroundSize.kt
│   │   │       │   │           │   │   │   ├── BorderColors.kt
│   │   │       │   │           │   │   │   ├── BorderInsets.kt
│   │   │       │   │           │   │   │   ├── BorderRadiusStyle.kt
│   │   │       │   │           │   │   │   ├── BorderStyle.kt
│   │   │       │   │           │   │   │   ├── BoxShadow.kt
│   │   │       │   │           │   │   │   ├── ColorStop.kt
│   │   │       │   │           │   │   │   ├── ComputedBorderRadius.kt
│   │   │       │   │           │   │   │   ├── CornerRadii.kt
│   │   │       │   │           │   │   │   ├── Gradient.kt
│   │   │       │   │           │   │   │   ├── LinearGradient.kt
│   │   │       │   │           │   │   │   ├── LogicalEdge.kt
│   │   │       │   │           │   │   │   ├── OutlineStyle.kt
│   │   │       │   │           │   │   │   ├── Overflow.kt
│   │   │       │   │           │   │   │   └── RadialGradient.kt
│   │   │       │   │           │   │   └── util/
│   │   │       │   │           │   │       └── ReactFindViewUtil.kt
│   │   │       │   │           │   ├── util/
│   │   │       │   │           │   │   ├── AndroidVersion.kt
│   │   │       │   │           │   │   ├── ExceptionDataHelper.kt
│   │   │       │   │           │   │   ├── JSStackTrace.kt
│   │   │       │   │           │   │   ├── RCTLog.kt
│   │   │       │   │           │   │   └── RNLog.kt
│   │   │       │   │           │   └── views/
│   │   │       │   │           │       ├── common/
│   │   │       │   │           │       │   ├── ContextUtils.kt
│   │   │       │   │           │       │   └── UiModeUtils.kt
│   │   │       │   │           │       ├── debuggingoverlay/
│   │   │       │   │           │       │   ├── DebuggingOverlay.kt
│   │   │       │   │           │       │   ├── DebuggingOverlayManager.kt
│   │   │       │   │           │       │   └── TraceUpdate.kt
│   │   │       │   │           │       ├── drawer/
│   │   │       │   │           │       │   ├── ReactDrawerLayout.kt
│   │   │       │   │           │       │   ├── ReactDrawerLayoutManager.kt
│   │   │       │   │           │       │   └── events/
│   │   │       │   │           │       │       ├── DrawerClosedEvent.kt
│   │   │       │   │           │       │       ├── DrawerOpenedEvent.kt
│   │   │       │   │           │       │       ├── DrawerSlideEvent.kt
│   │   │       │   │           │       │       └── DrawerStateChangedEvent.kt
│   │   │       │   │           │       ├── image/
│   │   │       │   │           │       │   ├── GlobalImageLoadListener.kt
│   │   │       │   │           │       │   ├── ImageLoadEvent.kt
│   │   │       │   │           │       │   ├── ImageResizeMethod.kt
│   │   │       │   │           │       │   ├── ImageResizeMode.kt
│   │   │       │   │           │       │   ├── MultiPostprocessor.kt
│   │   │       │   │           │       │   ├── ReactCallerContextFactory.kt
│   │   │       │   │           │       │   ├── ReactImageDownloadListener.kt
│   │   │       │   │           │       │   ├── ReactImageManager.kt
│   │   │       │   │           │       │   ├── ReactImageView.kt
│   │   │       │   │           │       │   └── ScaleTypeStartInside.kt
│   │   │       │   │           │       ├── imagehelper/
│   │   │       │   │           │       │   ├── ImageSource.kt
│   │   │       │   │           │       │   ├── MultiSourceHelper.kt
│   │   │       │   │           │       │   └── ResourceDrawableIdHelper.kt
│   │   │       │   │           │       ├── modal/
│   │   │       │   │           │       │   ├── ReactModalHostManager.kt
│   │   │       │   │           │       │   ├── ReactModalHostView.kt
│   │   │       │   │           │       │   ├── RequestCloseEvent.kt
│   │   │       │   │           │       │   └── ShowEvent.kt
│   │   │       │   │           │       ├── progressbar/
│   │   │       │   │           │       │   ├── ProgressBarContainerView.kt
│   │   │       │   │           │       │   └── ReactProgressBarViewManager.kt
│   │   │       │   │           │       ├── safeareaview/
│   │   │       │   │           │       │   ├── ReactSafeAreaView.kt
│   │   │       │   │           │       │   └── ReactSafeAreaViewManager.kt
│   │   │       │   │           │       ├── scroll/
│   │   │       │   │           │       │   ├── FpsListener.kt
│   │   │       │   │           │       │   ├── MaintainVisibleScrollPositionHelper.kt
│   │   │       │   │           │       │   ├── OnScrollDispatchHelper.kt
│   │   │       │   │           │       │   ├── ReactAccessibleScrollView.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollContainerLegacyView.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollContainerViewManager.kt
│   │   │       │   │           │       │   ├── ReactHorizontalScrollView.java
│   │   │       │   │           │       │   ├── ReactHorizontalScrollViewManager.kt
│   │   │       │   │           │       │   ├── ReactNestedScrollView.java
│   │   │       │   │           │       │   ├── ReactNestedScrollViewManager.kt
│   │   │       │   │           │       │   ├── ReactScrollView.java
│   │   │       │   │           │       │   ├── ReactScrollViewAccessibilityDelegate.kt
│   │   │       │   │           │       │   ├── ReactScrollViewCommandHelper.kt
│   │   │       │   │           │       │   ├── ReactScrollViewHelper.kt
│   │   │       │   │           │       │   ├── ReactScrollViewManager.kt
│   │   │       │   │           │       │   ├── ScrollEvent.kt
│   │   │       │   │           │       │   ├── ScrollEventType.kt
│   │   │       │   │           │       │   ├── VelocityHelper.kt
│   │   │       │   │           │       │   ├── VirtualViewContainer.kt
│   │   │       │   │           │       │   ├── VirtualViewContainerStateClassic.kt
│   │   │       │   │           │       │   ├── VirtualViewContainerStateExperimental.kt
│   │   │       │   │           │       │   └── generate-nested-scroll-view.js
│   │   │       │   │           │       ├── swiperefresh/
│   │   │       │   │           │       │   ├── ReactSwipeRefreshLayout.kt
│   │   │       │   │           │       │   ├── RefreshEvent.kt
│   │   │       │   │           │       │   └── SwipeRefreshLayoutManager.kt
│   │   │       │   │           │       ├── switchview/
│   │   │       │   │           │       │   ├── ReactSwitch.kt
│   │   │       │   │           │       │   ├── ReactSwitchEvent.kt
│   │   │       │   │           │       │   └── ReactSwitchManager.kt
│   │   │       │   │           │       ├── text/
│   │   │       │   │           │       │   ├── DefaultStyleValuesUtil.kt
│   │   │       │   │           │       │   ├── FontMetricsUtil.kt
│   │   │       │   │           │       │   ├── PreparedLayout.kt
│   │   │       │   │           │       │   ├── PreparedLayoutTextView.kt
│   │   │       │   │           │       │   ├── PreparedLayoutTextViewManager.kt
│   │   │       │   │           │       │   ├── ReactFontManager.kt
│   │   │       │   │           │       │   ├── ReactTextUpdate.kt
│   │   │       │   │           │       │   ├── ReactTextView.java
│   │   │       │   │           │       │   ├── ReactTextViewAccessibilityDelegate.kt
│   │   │       │   │           │       │   ├── ReactTextViewManager.kt
│   │   │       │   │           │       │   ├── ReactTextViewManagerCallback.kt
│   │   │       │   │           │       │   ├── ReactTypefaceUtils.kt
│   │   │       │   │           │       │   ├── SelectableTextViewManager.kt
│   │   │       │   │           │       │   ├── TextAttributeProps.kt
│   │   │       │   │           │       │   ├── TextAttributes.kt
│   │   │       │   │           │       │   ├── TextLayoutManager.kt
│   │   │       │   │           │       │   ├── TextTransform.kt
│   │   │       │   │           │       │   └── internal/
│   │   │       │   │           │       │       └── span/
│   │   │       │   │           │       │           ├── CustomLetterSpacingSpan.kt
│   │   │       │   │           │       │           ├── CustomLineHeightSpan.kt
│   │   │       │   │           │       │           ├── CustomStyleSpan.kt
│   │   │       │   │           │       │           ├── DrawCommandSpan.kt
│   │   │       │   │           │       │           ├── ReactAbsoluteSizeSpan.kt
│   │   │       │   │           │       │           ├── ReactBackgroundColorSpan.kt
│   │   │       │   │           │       │           ├── ReactClickableSpan.kt
│   │   │       │   │           │       │           ├── ReactForegroundColorSpan.kt
│   │   │       │   │           │       │           ├── ReactFragmentIndexSpan.kt
│   │   │       │   │           │       │           ├── ReactLinkSpan.kt
│   │   │       │   │           │       │           ├── ReactOpacitySpan.kt
│   │   │       │   │           │       │           ├── ReactSpan.kt
│   │   │       │   │           │       │           ├── ReactStrikethroughSpan.kt
│   │   │       │   │           │       │           ├── ReactTagSpan.kt
│   │   │       │   │           │       │           ├── ReactTextPaintHolderSpan.kt
│   │   │       │   │           │       │           ├── ReactUnderlineSpan.kt
│   │   │       │   │           │       │           ├── SetSpanOperation.kt
│   │   │       │   │           │       │           ├── ShadowStyleSpan.kt
│   │   │       │   │           │       │           └── TextInlineViewPlaceholderSpan.kt
│   │   │       │   │           │       ├── textinput/
│   │   │       │   │           │       │   ├── ContentSizeWatcher.kt
│   │   │       │   │           │       │   ├── ReactContentSizeChangedEvent.kt
│   │   │       │   │           │       │   ├── ReactEditText.kt
│   │   │       │   │           │       │   ├── ReactEditTextInputConnectionWrapper.kt
│   │   │       │   │           │       │   ├── ReactTextChangedEvent.kt
│   │   │       │   │           │       │   ├── ReactTextContentSizeWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextInputEndEditingEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputKeyPressEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputLocalData.kt
│   │   │       │   │           │       │   ├── ReactTextInputManager.kt
│   │   │       │   │           │       │   ├── ReactTextInputSelectionEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputSubmitEditingEvent.kt
│   │   │       │   │           │       │   ├── ReactTextInputTextWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextScrollWatcher.kt
│   │   │       │   │           │       │   ├── ReactTextSelectionWatcher.kt
│   │   │       │   │           │       │   ├── ScrollWatcher.kt
│   │   │       │   │           │       │   └── SelectionWatcher.kt
│   │   │       │   │           │       ├── unimplementedview/
│   │   │       │   │           │       │   ├── ReactUnimplementedView.kt
│   │   │       │   │           │       │   └── ReactUnimplementedViewManager.kt
│   │   │       │   │           │       ├── view/
│   │   │       │   │           │       │   ├── CanvasUtil.kt
│   │   │       │   │           │       │   ├── ColorUtil.kt
│   │   │       │   │           │       │   ├── ImportantForInteractionHelper.kt
│   │   │       │   │           │       │   ├── MeasureUtil.kt
│   │   │       │   │           │       │   ├── ReactClippingViewManager.kt
│   │   │       │   │           │       │   ├── ReactDrawableHelper.kt
│   │   │       │   │           │       │   ├── ReactViewGroup.kt
│   │   │       │   │           │       │   ├── ReactViewManager.kt
│   │   │       │   │           │       │   ├── ViewGroupClickEvent.kt
│   │   │       │   │           │       │   └── WindowUtil.kt
│   │   │       │   │           │       └── virtual/
│   │   │       │   │           │           ├── VirtualViewMode.kt
│   │   │       │   │           │           ├── VirtualViewModeChangeEmitter.kt
│   │   │       │   │           │           ├── VirtualViewModeChangeEvent.kt
│   │   │       │   │           │           ├── VirtualViewRenderState.kt
│   │   │       │   │           │           └── view/
│   │   │       │   │           │               ├── ReactVirtualView.kt
│   │   │       │   │           │               └── ReactVirtualViewManager.kt
│   │   │       │   │           ├── soloader/
│   │   │       │   │           │   └── annotation/
│   │   │       │   │           │       └── SoLoaderLibrary.kt
│   │   │       │   │           ├── systrace/
│   │   │       │   │           │   ├── Systrace.kt
│   │   │       │   │           │   ├── SystraceMessage.kt
│   │   │       │   │           │   └── TraceListener.kt
│   │   │       │   │           └── yoga/
│   │   │       │   │               ├── LayoutPassReason.kt
│   │   │       │   │               ├── YogaAlign.java
│   │   │       │   │               ├── YogaBaselineFunction.kt
│   │   │       │   │               ├── YogaBoxSizing.java
│   │   │       │   │               ├── YogaConfig.kt
│   │   │       │   │               ├── YogaConfigFactory.kt
│   │   │       │   │               ├── YogaConfigJNIBase.kt
│   │   │       │   │               ├── YogaConfigJNIFinalizer.kt
│   │   │       │   │               ├── YogaConstants.kt
│   │   │       │   │               ├── YogaDimension.java
│   │   │       │   │               ├── YogaDirection.kt
│   │   │       │   │               ├── YogaDisplay.java
│   │   │       │   │               ├── YogaEdge.java
│   │   │       │   │               ├── YogaErrata.java
│   │   │       │   │               ├── YogaExperimentalFeature.java
│   │   │       │   │               ├── YogaFlexDirection.java
│   │   │       │   │               ├── YogaGridTrackType.java
│   │   │       │   │               ├── YogaGutter.java
│   │   │       │   │               ├── YogaJustify.java
│   │   │       │   │               ├── YogaLayoutType.kt
│   │   │       │   │               ├── YogaLogLevel.java
│   │   │       │   │               ├── YogaLogger.kt
│   │   │       │   │               ├── YogaMeasureFunction.kt
│   │   │       │   │               ├── YogaMeasureMode.java
│   │   │       │   │               ├── YogaMeasureOutput.kt
│   │   │       │   │               ├── YogaNative.kt
│   │   │       │   │               ├── YogaNode.kt
│   │   │       │   │               ├── YogaNodeFactory.kt
│   │   │       │   │               ├── YogaNodeJNIBase.java
│   │   │       │   │               ├── YogaNodeJNIFinalizer.kt
│   │   │       │   │               ├── YogaNodeType.java
│   │   │       │   │               ├── YogaOverflow.java
│   │   │       │   │               ├── YogaPositionType.java
│   │   │       │   │               ├── YogaProps.kt
│   │   │       │   │               ├── YogaStyleInputs.kt
│   │   │       │   │               ├── YogaUnit.java
│   │   │       │   │               ├── YogaValue.kt
│   │   │       │   │               ├── YogaWrap.java
│   │   │       │   │               └── annotations/
│   │   │       │   │                   └── DoNotStrip.kt
│   │   │       │   ├── jni/
│   │   │       │   │   ├── CMakeLists.txt
│   │   │       │   │   ├── first-party/
│   │   │       │   │   │   ├── fbgloginit/
│   │   │       │   │   │   │   ├── CMakeLists.txt
│   │   │       │   │   │   │   ├── fb/
│   │   │       │   │   │   │   │   └── glog_init.h
│   │   │       │   │   │   │   └── glog_init.cpp
│   │   │       │   │   │   ├── hermes/
│   │   │       │   │   │   │   └── CMakeLists.txt
│   │   │       │   │   │   ├── jni-hack/
│   │   │       │   │   │   │   ├── README.md
│   │   │       │   │   │   │   ├── jni.h
│   │   │       │   │   │   │   └── real/
│   │   │       │   │   │   │       └── jni.h
│   │   │       │   │   │   ├── jni-lib-merge/
│   │   │       │   │   │   │   ├── CMakeLists.txt
│   │   │       │   │   │   │   ├── SoMerging-utils.cmake
│   │   │       │   │   │   │   ├── jni_lib_merge.c
│   │   │       │   │   │   │   └── jni_lib_merge.h
│   │   │       │   │   │   └── yogajni/
│   │   │       │   │   │       ├── CMakeLists.txt
│   │   │       │   │   │       └── jni/
│   │   │       │   │   │           ├── LayoutContext.cpp
│   │   │       │   │   │           ├── LayoutContext.h
│   │   │       │   │   │           ├── ScopedGlobalRef.h
│   │   │       │   │   │           ├── ScopedLocalRef.h
│   │   │       │   │   │           ├── YGJNI.h
│   │   │       │   │   │           ├── YGJNIVanilla.cpp
│   │   │       │   │   │           ├── YGJNIVanilla.h
│   │   │       │   │   │           ├── YGJTypesVanilla.h
│   │   │       │   │   │           ├── YogaJniException.cpp
│   │   │       │   │   │           ├── YogaJniException.h
│   │   │       │   │   │           ├── common.cpp
│   │   │       │   │   │           ├── common.h
│   │   │       │   │   │           ├── corefunctions.cpp
│   │   │       │   │   │           ├── corefunctions.h
│   │   │       │   │   │           ├── macros.h
│   │   │       │   │   │           └── yogajni.cpp
│   │   │       │   │   ├── react/
│   │   │       │   
Download .txt
Showing preview only (4,710K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (46668 symbols across 3058 files)

FILE: .github/workflow-scripts/__tests__/verifyPublishedPackage-test.js
  constant REACT_NATIVE_PACKAGE (line 17) | const REACT_NATIVE_PACKAGE = 'react-native';

FILE: .github/workflow-scripts/checkBranchTarget.js
  function checkBranchTarget (line 18) | function checkBranchTarget(baseRef) {

FILE: .github/workflow-scripts/checkForReproducer.js
  constant NEEDS_REPRO_LABEL (line 10) | const NEEDS_REPRO_LABEL = 'Needs: Repro';
  constant NEEDS_AUTHOR_FEEDBACK_LABEL (line 11) | const NEEDS_AUTHOR_FEEDBACK_LABEL = 'Needs: Author Feedback';
  constant SKIP_ISSUES_OLDER_THAN (line 12) | const SKIP_ISSUES_OLDER_THAN = '2023-07-01T00:00:00Z';
  function containsPattern (line 80) | function containsPattern(body, pattern) {
  function hasMaintainerChangedLabel (line 86) | async function hasMaintainerChangedLabel(github, issueData, author) {
  function isDateBefore (line 100) | function isDateBefore(firstDate, secondDate) {

FILE: .github/workflow-scripts/createDraftRelease.js
  function _headers (line 13) | function _headers(token) {
  function _extractChangelog (line 21) | function _extractChangelog(version) {
  function _computeBody (line 43) | function _computeBody(changelog, version, hermesVersion, hermesV1Version) {
  function _verifyTagExists (line 79) | async function _verifyTagExists(version) {
  function _createDraftReleaseOnGitHub (line 88) | async function _createDraftReleaseOnGitHub(version, body, latest, token) {
  function moveToChangelogBranch (line 121) | function moveToChangelogBranch(version) {
  function createDraftRelease (line 126) | async function createDraftRelease(

FILE: .github/workflow-scripts/extractIssueOncalls.js
  constant MSEC_IN_DAY (line 12) | const MSEC_IN_DAY = 1000 * 60 * 60 * 24;
  function formatUsers (line 14) | function formatUsers(users) {
  function extractUsersFromScheduleAndDate (line 18) | function extractUsersFromScheduleAndDate(schedule, userMap, date) {
  function main (line 53) | function main() {
  function extractIssueOncalls (line 59) | function extractIssueOncalls(schedule, userMap) {

FILE: .github/workflow-scripts/generateChangelog.js
  function _computePreviousVersionFrom (line 12) | async function _computePreviousVersionFrom(version) {
  function _generateChangelog (line 43) | function _generateChangelog(previousVersion, version, token) {
  function _pushCommit (line 52) | function _pushCommit(version) {
  function _createPR (line 60) | async function _createPR(version, token) {
  function generateChangelog (line 98) | async function generateChangelog(version, token) {

FILE: .github/workflow-scripts/maestro-android.js
  constant APP_PATH (line 31) | const APP_PATH = args[0];
  constant APP_ID (line 32) | const APP_ID = args[1];
  constant MAESTRO_FLOW (line 33) | const MAESTRO_FLOW = args[2];
  constant IS_DEBUG (line 34) | const IS_DEBUG = args[3] === 'debug';
  constant WORKING_DIRECTORY (line 35) | const WORKING_DIRECTORY = args[4];
  constant MAX_ATTEMPTS (line 37) | const MAX_ATTEMPTS = 3;
  function executeFlowWithRetries (line 39) | async function executeFlowWithRetries(flow, currentAttempt) {
  function executeFlowInFolder (line 57) | async function executeFlowInFolder(flowFolder) {
  function main (line 69) | async function main() {
  function sleep (line 146) | function sleep(ms) {

FILE: .github/workflow-scripts/maestro-ios.js
  constant APP_PATH (line 32) | const APP_PATH = args[0];
  constant APP_ID (line 33) | const APP_ID = args[1];
  constant MAESTRO_FLOW (line 34) | const MAESTRO_FLOW = args[2];
  constant JS_ENGINE (line 35) | const JS_ENGINE = args[3];
  constant IS_DEBUG (line 36) | const IS_DEBUG = args[4] === 'Debug';
  constant WORKING_DIRECTORY (line 37) | const WORKING_DIRECTORY = args[5];
  constant MAX_ATTEMPTS (line 39) | const MAX_ATTEMPTS = 5;
  function launchSimulator (line 41) | function launchSimulator(simulatorName) {
  function installAppOnSimulator (line 54) | function installAppOnSimulator(appPath) {
  function extractSimulatorUDID (line 59) | function extractSimulatorUDID() {
  function bringSimulatorInForeground (line 67) | function bringSimulatorInForeground() {
  function sleep (line 72) | function sleep(ms) {
  function launchAppOnSimulator (line 78) | async function launchAppOnSimulator(appId, udid, isDebug) {
  function startVideoRecording (line 88) | function startVideoRecording(jsengine, currentAttempt) {
  function stopVideoRecording (line 105) | function stopVideoRecording(recordingProcess) {
  function executeTestsWithRetries (line 116) | function executeTestsWithRetries(
  function main (line 154) | async function main() {

FILE: .github/workflow-scripts/publishTemplate.js
  constant TAG_AS_LATEST_REGEX (line 13) | const TAG_AS_LATEST_REGEX = /#publish-packages-to-npm&latest/;
  function isLatest (line 18) | function isLatest() {
  constant MAX_RETRIES (line 57) | const MAX_RETRIES = 3 * 6;
  constant TEMPLATE_NPM_PKG (line 58) | const TEMPLATE_NPM_PKG = '@react-native-community/template';

FILE: .github/workflow-scripts/selectLatestHermesV1Version.js
  constant PATCH_FILE_PATH (line 12) | const PATCH_FILE_PATH = path.join(__dirname, 'hermes-v1.patch');
  function getLatestHermesV1Version (line 14) | function getLatestHermesV1Version() {
  function setHermesV1VersionInPatch (line 25) | function setHermesV1VersionInPatch(version) {

FILE: .github/workflow-scripts/utils.js
  function getNpmPackageInfo (line 14) | async function getNpmPackageInfo(pkg, versionOrTag) {
  function sleep (line 20) | async function sleep(seconds) {
  function run (line 24) | function run(cmd) {

FILE: .github/workflow-scripts/validatePRBody.js
  function validateChangelog (line 17) | function validateChangelog(commitMsg) {
  function validatePRBody (line 31) | function validatePRBody(prBody) {

FILE: .github/workflow-scripts/verifyArtifactsAreOnMaven.js
  constant SLEEP_S (line 12) | const SLEEP_S = 60;
  constant MAX_RETRIES (line 13) | const MAX_RETRIES = 90;
  constant ARTIFACT_URL (line 14) | const ARTIFACT_URL =
  constant ARTIFACT_NAME (line 16) | const ARTIFACT_NAME = 'react-native-artifacts-';
  function verifyArtifactsAreOnMaven (line 18) | async function verifyArtifactsAreOnMaven(version, retries = MAX_RETRIES) {

FILE: .github/workflow-scripts/verifyPublishedPackage.js
  constant SLEEP_S (line 12) | const SLEEP_S = 10;
  constant MAX_RETRIES (line 13) | const MAX_RETRIES = 3 * 6;
  function verifyPublishedPackage (line 15) | async function verifyPublishedPackage(

FILE: .github/workflow-scripts/verifyReleaseOnNpm.js
  constant REACT_NATIVE_NPM_PKG (line 12) | const REACT_NATIVE_NPM_PKG = 'react-native';
  constant MAX_RETRIES (line 13) | const MAX_RETRIES = 3 * 6;

FILE: .github/workflow-scripts/verifyVersion.js
  function isVersionSupported (line 55) | function isVersionSupported(actualVersion, latestVersion) {
  function isVersionTooOld (line 71) | function isVersionTooOld(actualVersion, latestVersion) {
  function getReactNativeVersionFromIssueBodyIfExists (line 78) | function getReactNativeVersionFromIssueBodyIfExists(issue) {
  function reportedVersionIsNightly (line 86) | function reportedVersionIsNightly(unparsedVersionString, version) {
  function parseVersionFromString (line 98) | function parseVersionFromString(version) {

FILE: flow-typed/environment/node.js
  method toWeb (line 3747) | static toWeb(streamDuplex: stream$Duplex): {

FILE: flow-typed/npm/@octokit/rest_v22.x.x.js
  class Octokit (line 13) | class Octokit {

FILE: flow-typed/npm/@react-native-community/cli-server-api_v19.x.x.js
  function createDevServerMiddleware (line 20) | function createDevServerMiddleware(

FILE: flow-typed/npm/chrome-launcher_v0.15.x.js
  class Launcher (line 43) | class Launcher {

FILE: flow-typed/npm/chromium-edge-launcher_v0.2.x.js
  class Launcher (line 43) | class Launcher {

FILE: flow-typed/npm/commander_v12.x.x.js
  class InvalidArgumentError (line 36) | class InvalidArgumentError mixins CommanderError {

FILE: flow-typed/npm/tinybench_v4.1.x.js
  class Task (line 12) | class Task extends EventTarget {

FILE: flow-typed/npm/undici_v6.x.x.js
  class Dispatcher (line 25) | class Dispatcher extends events$EventEmitter {
  class Agent (line 29) | class Agent extends Dispatcher {

FILE: jest.config.js
  constant PODS_LOCATIONS (line 17) | const PODS_LOCATIONS = [

FILE: jest/preprocessor.js
  method process (line 61) | process(src /*: string */, file /*: string */) /*: {code: string, ...} */ {

FILE: packages/assets/__tests__/path-support-test.js
  constant DRAWABLE_ASSET (line 13) | const DRAWABLE_ASSET = {
  constant NON_DRAWABLE_ASSET (line 25) | const NON_DRAWABLE_ASSET = {

FILE: packages/assets/path-support.js
  constant ANDROID_BASE_DENSITY (line 24) | const ANDROID_BASE_DENSITY = 160;
  function getAndroidAssetSuffix (line 30) | function getAndroidAssetSuffix(scale /*: number */) /*: string */ {
  function getAndroidResourceFolderName (line 56) | function getAndroidResourceFolderName(
  function getAndroidResourceIdentifier (line 77) | function getAndroidResourceIdentifier(
  function getBasePath (line 87) | function getBasePath(asset /*: PackagerAsset */) /*: string */ {

FILE: packages/assets/registry.js
  function registerAsset (line 33) | function registerAsset(asset /*: PackagerAsset */) /*: number */ {
  function getAssetByID (line 39) | function getAssetByID(assetId /*: number */) /*: PackagerAsset */ {

FILE: packages/babel-plugin-codegen/__test_fixtures__/failures.js
  constant COMMANDS_EXPORTED_WITH_DIFFERENT_NAME (line 13) | const COMMANDS_EXPORTED_WITH_DIFFERENT_NAME = `
  constant OTHER_COMMANDS_EXPORT (line 36) | const OTHER_COMMANDS_EXPORT = `
  constant COMMANDS_EXPORTED_WITH_SHORTHAND (line 59) | const COMMANDS_EXPORTED_WITH_SHORTHAND = `
  constant COMMANDS_WITH_COVERAGE_INVALID (line 84) | const COMMANDS_WITH_COVERAGE_INVALID = `
  constant COMMANDS_WITH_COVERAGE_WRONG_FUNCTION (line 107) | const COMMANDS_WITH_COVERAGE_WRONG_FUNCTION = `
  constant COMMANDS_WITH_COMPLEX_COVERAGE_INVALID (line 129) | const COMMANDS_WITH_COMPLEX_COVERAGE_INVALID = `
  constant COMMANDS_WITH_COVERAGE_WRONG_NAME (line 156) | const COMMANDS_WITH_COVERAGE_WRONG_NAME = `
  constant COMMANDS_WITH_COVERAGE_TYPE_CAST_INVALID (line 184) | const COMMANDS_WITH_COVERAGE_TYPE_CAST_INVALID = `

FILE: packages/babel-plugin-codegen/__test_fixtures__/fixtures.js
  constant NOT_A_NATIVE_COMPONENT (line 12) | const NOT_A_NATIVE_COMPONENT = `
  constant FULL_NATIVE_COMPONENT (line 18) | const FULL_NATIVE_COMPONENT = `
  constant COMMANDS_WITH_SIMPLE_COVERAGE (line 63) | const COMMANDS_WITH_SIMPLE_COVERAGE = `
  constant COMMANDS_WITH_COMPLEX_COVERAGE (line 90) | const COMMANDS_WITH_COMPLEX_COVERAGE = `
  constant COMMANDS_WITH_TYPE_CAST_COVERAGE (line 121) | const COMMANDS_WITH_TYPE_CAST_COVERAGE = `
  constant FULL_NATIVE_COMPONENT_WITH_TYPE_EXPORT (line 148) | const FULL_NATIVE_COMPONENT_WITH_TYPE_EXPORT = `

FILE: packages/babel-plugin-codegen/index.js
  function parseFile (line 39) | function parseFile(filename /*: string */, code /*: string */) {
  function generateViewConfig (line 53) | function generateViewConfig(filename /*: string */, code /*: string */) {
  function isCodegenDeclaration (line 66) | function isCodegenDeclaration(declaration) {
  function isCodegenNativeCommandsDeclaration (line 105) | function isCodegenNativeCommandsDeclaration(declaration) {
  method pre (line 159) | pre(state) {
  method ExportNamedDeclaration (line 167) | ExportNamedDeclaration(path) {
  method ExportDefaultDeclaration (line 218) | ExportDefaultDeclaration(path, state) {
  method exit (line 225) | exit(path) {

FILE: packages/community-cli-plugin/src/commands/bundle/__mocks__/sign.js
  function sign (line 11) | function sign(source: string): string {

FILE: packages/community-cli-plugin/src/commands/bundle/assetCatalogIOS.js
  function cleanAssetCatalog (line 17) | function cleanAssetCatalog(catalogDir: string): void {
  function getImageSet (line 31) | function getImageSet(
  function isCatalogAsset (line 50) | function isCatalogAsset(asset: AssetData): boolean {
  function writeImageSet (line 54) | function writeImageSet(imageSet: ImageSet): void {

FILE: packages/community-cli-plugin/src/commands/bundle/assetPathUtils.js
  function getAndroidAssetSuffix (line 22) | function getAndroidAssetSuffix(scale: number): string {

FILE: packages/community-cli-plugin/src/commands/bundle/createKeepFileAsync.js
  function createKeepFileAsync (line 17) | async function createKeepFileAsync(

FILE: packages/community-cli-plugin/src/commands/bundle/filterPlatformAssetScales.js
  function filterPlatformAssetScales (line 15) | function filterPlatformAssetScales(

FILE: packages/community-cli-plugin/src/commands/bundle/getAssetDestPathAndroid.js
  function getAssetDestPathAndroid (line 16) | function getAssetDestPathAndroid(asset: PackagerAsset, scale: number): s...

FILE: packages/community-cli-plugin/src/commands/bundle/getAssetDestPathIOS.js
  function getAssetDestPathIOS (line 15) | function getAssetDestPathIOS(asset: PackagerAsset, scale: number): string {

FILE: packages/community-cli-plugin/src/commands/bundle/saveAssets.js
  method if (line 37) | if (assetsDest == null) {
  method if (line 107) | if (error) {
  method if (line 134) | if (err) {

FILE: packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js
  constant CTRL_C (line 19) | const CTRL_C = '\u0003';
  constant CTRL_D (line 20) | const CTRL_D = '\u0004';
  constant RELOAD_TIMEOUT (line 21) | const RELOAD_TIMEOUT = 500;
  function attachKeyHandlers (line 42) | function attachKeyHandlers({
  function setRawMode (line 127) | function setRawMode(enable: boolean) {

FILE: packages/community-cli-plugin/src/commands/start/runServer.js
  function runServer (line 47) | async function runServer(
  method if (line 171) | if (customLogReporterPath == null) {
  method catch (line 179) | catch (e) {

FILE: packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js
  function createDevMiddlewareLogger (line 19) | function createDevMiddlewareLogger(
  function makeLogger (line 33) | function makeLogger(

FILE: packages/community-cli-plugin/src/utils/errors.js
  class CLIError (line 15) | class CLIError extends Error {
    method constructor (line 16) | constructor(msg: string, originalError?: Error | string) {
  class UnknownProjectError (line 35) | class UnknownProjectError extends Error {}

FILE: packages/community-cli-plugin/src/utils/loadMetroConfig.js
  function getCommunityCliDefaultConfig (line 33) | function getCommunityCliDefaultConfig(
  function loadMetroConfig (line 84) | async function loadMetroConfig(

FILE: packages/community-cli-plugin/src/utils/version.js
  function logIfUpdateAvailable (line 52) | async function logIfUpdateAvailable(
  method if (line 173) | if (result.candidate != null && version.includes('-rc')) {

FILE: packages/core-cli-utils/src/private/app.js
  constant FIRST (line 68) | const FIRST = 1,
  constant SECOND (line 68) | const FIRST = 1,
  constant THIRD (line 68) | const FIRST = 1,
  constant FOURTH (line 68) | const FIRST = 1,
  function getNodePackagePath (line 73) | function getNodePackagePath(packageName: string): string {
  method if (line 119) | if (options.outputJsBundle === options.outputBundle) {

FILE: packages/core-cli-utils/src/private/apple.js
  function checkPodfileInSyncWithManifest (line 54) | function checkPodfileInSyncWithManifest(
  constant FIRST (line 71) | const FIRST = 1,
  constant SECOND (line 71) | const FIRST = 1,
  constant THIRD (line 71) | const FIRST = 1,
  constant FOURTH (line 71) | const FIRST = 1,
  constant FIFTH (line 71) | const FIRST = 1,
  function getNodePackagePath (line 77) | function getNodePackagePath(packageName: string): string {

FILE: packages/core-cli-utils/src/private/clean.js
  constant FIRST (line 20) | const FIRST = 1,
  constant SECOND (line 20) | const FIRST = 1,

FILE: packages/core-cli-utils/src/private/utils.js
  function isOnPath (line 40) | function isOnPath(dep: string, description: string): PathCheckResult {
  method for (line 60) | for (const {found, dep, description} of deps) {

FILE: packages/debugger-frontend/dist/third-party/front_end/Tests.js
  method constructor (line 62) | constructor(domAutomationController) {
  method createKeyEvent (line 72) | static createKeyEvent(key) {
  function hasSomethingScheduled (line 261) | function hasSomethingScheduled() {
  function checkState (line 265) | function checkState() {
  function onSchedule (line 275) | function onSchedule() {
  function switchToElementsTab (line 343) | function switchToElementsTab() {
  function switchToScriptsTab (line 349) | function switchToScriptsTab() {
  function checkScriptsPanel (line 355) | function checkScriptsPanel() {
  function checkNoDuplicates (line 361) | function checkNoDuplicates() {
  function finishRequest (line 407) | function finishRequest(request, finishTime) {
  function finishRequest (line 426) | function finishRequest(request, finishTime) {
  function finishRequest (line 446) | function finishRequest(request, finishTime) {
  function finishRequest (line 470) | function finishRequest(request, finishTime) {
  function finishRequest (line 503) | function finishRequest(request, finishTime) {
  function filteredMessages (line 532) | function filteredMessages() {
  function firstConsoleMessageReceived (line 544) | function firstConsoleMessageReceived(event) {
  function didClickLink (line 553) | function didClickLink() {
  function didNavigateBack (line 559) | function didNavigateBack() {
  function didCompleteNavigation (line 564) | function didCompleteNavigation() {
  function didEvaluateInConsole (line 573) | function didEvaluateInConsole(resultText) {
  function callback (line 586) | function callback() {
  function callback (line 595) | function callback() {
  function onConsoleMessage (line 606) | function onConsoleMessage(event) {
  function dumpPageMetrics (line 649) | function dumpPageMetrics() {
  function testOverrides (line 656) | async function testOverrides(params, metrics, callback) {
  function step1 (line 670) | function step1() {
  function step2 (line 676) | function step2() {
  function step3 (line 682) | function step3() {
  function step4 (line 688) | function step4() {
  function finish (line 694) | function finish() {
  function signalToShowAutofill (line 706) | function signalToShowAutofill() {
  function selectTopAutoFill (line 713) | function selectTopAutoFill() {
  function onResultOfInput (line 722) | function onResultOfInput(value) {
  function onConsoleMessage (line 728) | function onConsoleMessage(event) {
  function onKeyEventUnhandledKeyDown (line 756) | function onKeyEventUnhandledKeyDown(event) {
  function onKeyEventUnhandledKeyUp (line 769) | function onKeyEventUnhandledKeyUp(event) {
  function finishRequest (line 897) | function finishRequest(request) {
  function testPreset (line 912) | function testPreset(preset, messages, next) {
  function step1 (line 936) | function step1() {
  function step2 (line 945) | function step2() {
  function step3 (line 955) | function step3() {
  function step4 (line 961) | function step4() {
  function performActionsInPage (line 972) | function performActionsInPage(callback) {
  function onTimelineDone (line 996) | function onTimelineDone() {
  function loadFrameImages (line 1004) | function loadFrameImages(frames) {
  function validateImagesAndCompleteTest (line 1025) | function validateImagesAndCompleteTest(images) {
  function createSettings (line 1064) | function createSettings() {
  function reset (line 1071) | function reset() {
  function gotPreferences (line 1076) | function gotPreferences(prefs) {
  function checkMessages (line 1102) | function checkMessages() {
  function onExecutionContexts (line 1115) | function onExecutionContexts() {
  function onResponseReceived (line 1137) | function onResponseReceived(event) {
  function onConsoleMessage (line 1187) | function onConsoleMessage(event) {
  function onConsoleMessage (line 1262) | function onConsoleMessage(event) {
  function onRecordingStarted (line 1277) | function onRecordingStarted() {
  function pageActionsDone (line 1281) | function pageActionsDone() {
  function createIsolatedTarget (line 1367) | async function createIsolatedTarget(url, opt_browserContextIds) {
  function disposeBrowserContext (line 1384) | async function disposeBrowserContext(browserContextId) {
  function evalCode (line 1389) | async function evalCode(target, code) {
  function takeLogs (line 1398) | async function takeLogs(target) {
  function testCase (line 1446) | function testCase(url, headers, expectedStatus, expectedHeaders, expecte...
  function onRequestUpdated (line 1501) | function onRequestUpdated(event) {
  function filterOutService (line 1585) | function filterOutService(uiSourceCode) {
  function innerEvaluate (line 1600) | function innerEvaluate() {
  function showConsoleAndEvaluate (line 1611) | function showConsoleAndEvaluate() {
  function waitForAllScripts (line 1660) | function waitForAllScripts() {
  function checkTargets (line 1675) | function checkTargets() {
  function checkForExecutionContexts (line 1689) | function checkForExecutionContexts() {

FILE: packages/debugger-frontend/dist/third-party/front_end/core/common/common.js
  method toChar (line 1) | toChar(t){let e=this.#t.get(t);if(!e){if(this.#r>=65535)throw new Error(...
  method fromChar (line 1) | fromChar(t){const e=this.#e.get(t);return void 0===e?null:e}
  class g (line 1) | class g{values=[0,0,0];constructor(t){t&&(this.values=t)}}
    method constructor (line 1) | constructor(t){t&&(this.values=t)}
  class d (line 1) | class d{values=[[0,0,0],[0,0,0],[0,0,0]];constructor(t){t&&(this.values=...
    method constructor (line 1) | constructor(t){t&&(this.values=t)}
    method multiply (line 1) | multiply(t){const e=new g;for(let r=0;r<3;++r)e.values[r]=this.values[...
  class p (line 1) | class p{g;a;b;c;d;e;f;constructor(t,e,r=0,s=0,n=0,i=0,a=0){this.g=t,this...
    method constructor (line 1) | constructor(t,e,r=0,s=0,n=0,i=0,a=0){this.g=t,this.a=e,this.b=r,this.c...
    method eval (line 1) | eval(t){const e=t<0?-1:1,r=t*e;return r<this.d?e*(this.c*r+this.f):e*(...
  function b (line 1) | function b(t){return t*(Math.PI/180)}
  function f (line 1) | function f(t,e,r,s){return[t.eval(e),t.eval(r),t.eval(s)]}
  class A (line 1) | class A{static labToXyzd50(t,e,r){let s=(t+16)/116,n=s+e/500,i=s-r/200;f...
    method labToXyzd50 (line 1) | static labToXyzd50(t,e,r){let s=(t+16)/116,n=s+e/500,i=s-r/200;functio...
    method xyzd50ToLab (line 1) | static xyzd50ToLab(t,e,r){function s(t){return t<=.008856451679035631?...
    method oklabToXyzd65 (line 1) | static oklabToXyzd65(t,e,r){const s=new g([t,e,r]),n=w.multiply(s);n.v...
    method xyzd65ToOklab (line 1) | static xyzd65ToOklab(t,e,r){const s=new g([t,e,r]),n=x.multiply(s);n.v...
    method lchToLab (line 1) | static lchToLab(t,e,r){return void 0===r?[t,0,0]:[t,e*Math.cos(b(r)),e...
    method labToLch (line 1) | static labToLch(t,e,r){return[t,Math.sqrt(e*e+r*r),(s=Math.atan2(r,e),...
    method displayP3ToXyzd50 (line 1) | static displayP3ToXyzd50(t,e,r){const[s,n,i]=f(m.sRGB,t,e,r),a=new g([...
    method xyzd50ToDisplayP3 (line 1) | static xyzd50ToDisplayP3(t,e,r){const s=new g([t,e,r]),n=y.displayP3_I...
    method proPhotoToXyzd50 (line 1) | static proPhotoToXyzd50(t,e,r){const[s,n,i]=f(m.proPhotoRGB,t,e,r),a=n...
    method xyzd50ToProPhoto (line 1) | static xyzd50ToProPhoto(t,e,r){const s=new g([t,e,r]),n=R.multiply(s);...
    method adobeRGBToXyzd50 (line 1) | static adobeRGBToXyzd50(t,e,r){const[s,n,i]=f(m.k2Dot2,t,e,r),a=new g(...
    method xyzd50ToAdobeRGB (line 1) | static xyzd50ToAdobeRGB(t,e,r){const s=new g([t,e,r]),n=y.adobeRGB_INV...
    method rec2020ToXyzd50 (line 1) | static rec2020ToXyzd50(t,e,r){const[s,n,i]=f(m.rec2020,t,e,r),a=new g(...
    method xyzd50ToRec2020 (line 1) | static xyzd50ToRec2020(t,e,r){const s=new g([t,e,r]),n=y.rec2020_INVER...
    method xyzd50ToD65 (line 1) | static xyzd50ToD65(t,e,r){const s=new g([t,e,r]);return I.multiply(s)....
    method xyzd65ToD50 (line 1) | static xyzd65ToD50(t,e,r){const s=new g([t,e,r]);return z.multiply(s)....
    method xyzd50TosRGBLinear (line 1) | static xyzd50TosRGBLinear(t,e,r){const s=new g([t,e,r]);return y.sRGB_...
    method srgbLinearToXyzd50 (line 1) | static srgbLinearToXyzd50(t,e,r){const s=new g([t,e,r]);return y.sRGB....
    method srgbToXyzd50 (line 1) | static srgbToXyzd50(t,e,r){const[s,n,i]=f(m.sRGB,t,e,r),a=new g([s,n,i...
    method xyzd50ToSrgb (line 1) | static xyzd50ToSrgb(t,e,r){const s=new g([t,e,r]),n=y.sRGB_INVERSE.mul...
    method oklchToXyzd50 (line 1) | static oklchToXyzd50(t,e,r){const[s,n,i]=A.lchToLab(t,e,r),[a,o,l]=A.o...
    method xyzd50ToOklch (line 1) | static xyzd50ToOklch(t,e,r){const[s,n,i]=A.xyzd50ToD65(t,e,r),[a,o,l]=...
  function E (line 1) | function E(t,e){const r=t[3];return[(1-r)*e[0]+r*t[0],(1-r)*e[1]+r*t[1],...
  function k (line 1) | function k([t,e,r]){const s=Math.max(t,e,r),n=Math.min(t,e,r),i=s-n;let ...
  function L (line 1) | function L(t){const[e,r,s]=C([...t,void 0]);return[e,r,s]}
  function C (line 1) | function C([t,e,r,s]){const n=Math.max(t,e,r),i=Math.min(t,e,r),a=n-i,o=...
  function _ (line 1) | function _(t){const[e,r,s]=N([...t,void 0]);return[e,r,s]}
  function N (line 1) | function N([t,e,r,s]){const n=k([t,e,r]),i=Math.max(t,e,r);return[n,Math...
  function O (line 1) | function O([t,e,r]){return.2126*(t<=.04045?t/12.92:Math.pow((t+.055)/1.0...
  function B (line 1) | function B([t,e,r]){return.2126729*Math.pow(t,2.4)+.7151522*Math.pow(e,2...
  function G (line 1) | function G(t,e){return W(B(E(t,e)),B(e))}
  function M (line 1) | function M(t){return t>.022?t:t+Math.pow(.022-t,1.414)}
  function W (line 1) | function W(t,e){if(t=M(t),e=M(e),Math.abs(t-e)<5e-4)return 0;let r=0;ret...
  function X (line 1) | function X(t,e,r){function s(){return r?Math.pow(Math.abs(Math.pow(t,.65...
  function F (line 1) | function F(t,e){const r=72*parseFloat(t.replace("px",""))/96;return(isNa...
  function H (line 1) | function H(t){return(t%360+360)%360}
  function q (line 1) | function q(t){const e=t.replace(/(deg|g?rad|turn)$/,"");if(isNaN(e)||t.m...
  function Y (line 1) | function Y(t){switch(t){case"srgb":return"srgb";case"srgb-linear":return...
  function Z (line 1) | function Z(t,e){const r=Math.sign(t),s=Math.abs(t),[n,i]=e;return r*(s*(...
  function K (line 1) | function K(t,{min:e,max:r}){return null===t||(void 0!==e&&(t=Math.max(t,...
  function J (line 1) | function J(t,e){if(!t.endsWith("%"))return null;const r=parseFloat(t.sub...
  function Q (line 1) | function Q(t){const e=parseFloat(t);return isNaN(e)?null:e}
  function tt (line 1) | function tt(t){return void 0===t?null:K(J(t,[0,1])??Q(t),{min:0,max:1})}
  function et (line 1) | function et(t,e=[0,1]){if(isNaN(t.replace("%","")))return null;const r=p...
  function rt (line 1) | function rt(t){const e=et(t);return null===e?null:-1!==t.indexOf("%")?e:...
  function st (line 1) | function st(t){const e=t.replace(/(deg|g?rad|turn)$/,"");if(isNaN(e)||t....
  function nt (line 1) | function nt(t){if(t.indexOf("%")!==t.length-1||isNaN(t.replace("%","")))...
  function it (line 1) | function it(t){const e=t[0];let r=t[1];const s=t[2];function n(t,e,r){re...
  function at (line 1) | function at(t){return it(function(t){const e=t[0];let r=t[1];const s=t[2...
  function ot (line 1) | function ot(t,e,r){function s(){return r?(t+.05)*e-.05:(t+.05)/e-.05}let...
  function lt (line 1) | function lt(t,e,r,s,n){let i=t[r],a=1,o=n(t)-s,l=Math.sign(o);for(let e=...
  function ht (line 1) | function ht(t,e,r=.01){if(Array.isArray(t)&&Array.isArray(e)){if(t.lengt...
  function ct (line 1) | function ct(t,e,r=.01){return t-e<=r}
  class ut (line 1) | class ut{l;a;b;alpha;#s;#n;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #o (line 1) | #o(){return A.labToXyzd50(this.l,this.a,this.b)}
    method #a (line 1) | #a(t=!0){const e=A.xyzd50ToSrgb(...this.#o());return t?[...e,this.alph...
    method constructor (line 1) | constructor(t,e,r,s,n){this.#n=[t,e,r],this.l=K(t,{min:0,max:100}),(ht...
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return ut.#i[t](this)}
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method equal (line 1) | equal(t){const e=t.as("lab");return ht(e.l,this.l,1)&&ht(e.a,this.a)&&...
    method format (line 1) | format(){return"lab"}
    method setAlpha (line 1) | setAlpha(t){return new ut(this.l,this.a,this.b,t,void 0)}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.l,this.a,this.b)}
    method #l (line 1) | #l(t,r,s){const n=null===this.alpha||ht(this.alpha,1)?"":` / ${e.Strin...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!1}
    method fromSpec (line 1) | static fromSpec(t,e){const r=J(t[0],[0,100])??Q(t[0]);if(null===r)retu...
  class gt (line 1) | class gt{#n;l;c;h;alpha;#s;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #o (line 1) | #o(){return A.labToXyzd50(...A.lchToLab(this.l,this.c,this.h))}
    method #a (line 1) | #a(t=!0){const e=A.xyzd50ToSrgb(...this.#o());return t?[...e,this.alph...
    method constructor (line 1) | constructor(t,e,r,s,n){this.#n=[t,e,r],this.l=K(t,{min:0,max:100}),e=h...
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return gt.#i[t](this)}
    method equal (line 1) | equal(t){const e=t.as("lch");return ht(e.l,this.l,1)&&ht(e.c,this.c)&&...
    method format (line 1) | format(){return"lch"}
    method setAlpha (line 1) | setAlpha(t){return new gt(this.l,this.c,this.h,t)}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.l,this.c,this.h)}
    method #l (line 1) | #l(t,r,s){const n=null===this.alpha||ht(this.alpha,1)?"":` / ${e.Strin...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!1}
    method isHuePowerless (line 1) | isHuePowerless(){return ht(this.c,0)}
    method fromSpec (line 1) | static fromSpec(t,e){const r=J(t[0],[0,100])??Q(t[0]);if(null===r)retu...
  class dt (line 1) | class dt{#n;l;a;b;alpha;#s;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #o (line 1) | #o(){return A.xyzd65ToD50(...A.oklabToXyzd65(this.l,this.a,this.b))}
    method #a (line 1) | #a(t=!0){const e=A.xyzd50ToSrgb(...this.#o());return t?[...e,this.alph...
    method constructor (line 1) | constructor(t,e,r,s,n){this.#n=[t,e,r],this.l=K(t,{min:0,max:1}),(ht(t...
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return dt.#i[t](this)}
    method equal (line 1) | equal(t){const e=t.as("oklab");return ht(e.l,this.l)&&ht(e.a,this.a)&&...
    method format (line 1) | format(){return"oklab"}
    method setAlpha (line 1) | setAlpha(t){return new dt(this.l,this.a,this.b,t)}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.l,this.a,this.b)}
    method #l (line 1) | #l(t,r,s){const n=null===this.alpha||ht(this.alpha,1)?"":` / ${e.Strin...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!1}
    method fromSpec (line 1) | static fromSpec(t,e){const r=J(t[0],[0,1])??Q(t[0]);if(null===r)return...
  class pt (line 1) | class pt{#n;l;c;h;alpha;#s;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #o (line 1) | #o(){return A.oklchToXyzd50(this.l,this.c,this.h)}
    method #a (line 1) | #a(t=!0){const e=A.xyzd50ToSrgb(...this.#o());return t?[...e,this.alph...
    method constructor (line 1) | constructor(t,e,r,s,n){this.#n=[t,e,r],this.l=K(t,{min:0,max:1}),e=ht(...
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return pt.#i[t](this)}
    method equal (line 1) | equal(t){const e=t.as("oklch");return ht(e.l,this.l)&&ht(e.c,this.c)&&...
    method format (line 1) | format(){return"oklch"}
    method setAlpha (line 1) | setAlpha(t){return new pt(this.l,this.c,this.h,t)}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.l,this.c,this.h)}
    method #l (line 1) | #l(t,r,s){const n=null===this.alpha||ht(this.alpha,1)?"":` / ${e.Strin...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!1}
    method fromSpec (line 1) | static fromSpec(t,e){const r=J(t[0],[0,1])??Q(t[0]);if(null===r)return...
  class mt (line 1) | class mt{#n;p0;p1;p2;alpha;colorSpace;#s;static#i={hex:t=>new vt(t.#a(!1...
    method #o (line 1) | #o(){const[t,e,r]=this.#n;switch(this.colorSpace){case"srgb":return A....
    method #a (line 1) | #a(t=!0){const[e,r,s]=this.#n,n="srgb"===this.colorSpace?[e,r,s]:[...A...
    method constructor (line 1) | constructor(t,e,r,s,n,i){this.#n=[e,r,s],this.colorSpace=t,this.#s=i,"...
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return this.colorSpace===t?this:mt.#i[t](this)}
    method equal (line 1) | equal(t){const e=t.as(this.colorSpace);return ht(this.p0,e.p0)&&ht(thi...
    method format (line 1) | format(){return this.colorSpace}
    method setAlpha (line 1) | setAlpha(t){return new mt(this.colorSpace,this.p0,this.p1,this.p2,t)}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.p0,this.p1,thi...
    method #l (line 1) | #l(t,r,s){const n=null===this.alpha||ht(this.alpha,1)?"":` / ${e.Strin...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return"xyz-d50"!==this.colorSpace&&"xyz-d65"!==this.c...
    method fromSpec (line 1) | static fromSpec(t,e){const[r,s]=e.split("/",2),n=r.trim().split(/\s+/)...
  class yt (line 1) | class yt{h;s;l;alpha;#n;#s;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #a (line 1) | #a(t=!0){const e=it([this.h,this.s,this.l,0]);return t?[e[0],e[1],e[2]...
    method #o (line 1) | #o(){const t=this.#a(!1);return A.srgbToXyzd50(t[0],t[1],t[2])}
    method constructor (line 1) | constructor(t,e,r,s,n){this.#n=[t,e,r],this.l=K(r,{min:0,max:1}),e=ht(...
    method equal (line 1) | equal(t){const e=t.as("hsl");return ht(this.h,e.h)&&ht(this.s,e.s)&&ht...
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.h,this.s,this.l)}
    method #l (line 1) | #l(t,r,s){const n=e.StringUtilities.sprintf("hsl(%sdeg %s% %s%",e.Stri...
    method setAlpha (line 1) | setAlpha(t){return new yt(this.h,this.s,this.l,t)}
    method format (line 1) | format(){return null===this.alpha||1===this.alpha?"hsl":"hsla"}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return t===this.format()?this:yt.#i[t](this)}
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!ct(this.#n[1],1)||!ct(0,this.#n[1])}
    method fromSpec (line 1) | static fromSpec(t,e){const r=st(t[0]);if(null===r)return null;const s=...
    method hsva (line 1) | hsva(){const t=this.s*(this.l<.5?this.l:1-this.l);return[this.h,0!==t?...
    method canonicalHSLA (line 1) | canonicalHSLA(){return[Math.round(360*this.h),Math.round(100*this.s),M...
  class bt (line 1) | class bt{h;w;b;alpha;#n;#s;static#i={hex:t=>new vt(t.#a(!1),"hex"),hexa:...
    method #a (line 1) | #a(t=!0){const e=function(t){const e=t[0],r=t[1],s=t[2],n=r/(r+s);let ...
    method #o (line 1) | #o(){const t=this.#a(!1);return A.srgbToXyzd50(t[0],t[1],t[2])}
    method constructor (line 1) | constructor(t,e,r,s,n){if(this.#n=[t,e,r],this.w=K(e,{min:0,max:1}),th...
    method equal (line 1) | equal(t){const e=t.as("hwb");return ht(this.h,e.h)&&ht(this.w,e.w)&&ht...
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(this.h,this.w,this.b)}
    method #l (line 1) | #l(t,r,s){const n=e.StringUtilities.sprintf("hwb(%sdeg %s% %s%",e.Stri...
    method setAlpha (line 1) | setAlpha(t){return new bt(this.h,this.w,this.b,t,this.#s)}
    method format (line 1) | format(){return null===this.alpha||ht(this.alpha,1)?"hwb":"hwba"}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return t===this.format()?this:bt.#i[t](this)}
    method asLegacyColor (line 1) | asLegacyColor(){return this.as("rgba")}
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method canonicalHWBA (line 1) | canonicalHWBA(){return[Math.round(360*this.h),Math.round(100*this.w),M...
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(...this...
    method isGamutClipped (line 1) | isGamutClipped(){return!(ct(this.#n[1],1)&&ct(0,this.#n[1])&&ct(this.#...
    method fromSpec (line 1) | static fromSpec(t,e){const r=st(t[0]);if(null===r)return null;const s=...
  function ft (line 1) | function ft(t){return Math.round(255*t)}
  class wt (line 1) | class wt{color;constructor(t){this.color=t}get alpha(){return this.color...
    method constructor (line 1) | constructor(t){this.color=t}
    method alpha (line 1) | get alpha(){return this.color.alpha}
    method rgba (line 1) | rgba(){return this.color.rgba()}
    method equal (line 1) | equal(t){return this.color.equal(t)}
    method setAlpha (line 1) | setAlpha(t){return this.color.setAlpha(t)}
    method format (line 1) | format(){return 1!==(this.alpha??1)?"hexa":"hex"}
    method as (line 1) | as(t){return this.color.as(t)}
    method is (line 1) | is(t){return this.color.is(t)}
    method asLegacyColor (line 1) | asLegacyColor(){return this.color.asLegacyColor()}
    method getAuthoredText (line 1) | getAuthoredText(){return this.color.getAuthoredText()}
    method getRawParameters (line 1) | getRawParameters(){return this.color.getRawParameters()}
    method isGamutClipped (line 1) | isGamutClipped(){return this.color.isGamutClipped()}
    method asString (line 1) | asString(t){if(t)return this.as(t).asString();const[e,r,s]=this.color....
    method getAsRawString (line 1) | getAsRawString(t){if(t)return this.as(t).getAsRawString();const[e,r,s]...
  class St (line 1) | class St extends wt{setAlpha(t){return new St(this.color.setAlpha(t))}as...
    method setAlpha (line 1) | setAlpha(t){return new St(this.color.setAlpha(t))}
    method asString (line 1) | asString(t){return t&&t!==this.format()?super.as(t).asString():super.a...
    method stringify (line 1) | stringify(t,r,s){function n(t){return(Math.round(255*t)/17).toString(1...
  class xt (line 1) | class xt extends wt{nickname;constructor(t,e){super(e),this.nickname=t}s...
    method constructor (line 1) | constructor(t,e){super(e),this.nickname=t}
    method fromName (line 1) | static fromName(t,e){const r=t.toLowerCase(),s=Rt.get(r);return void 0...
    method stringify (line 1) | stringify(){return this.nickname}
    method getAsRawString (line 1) | getAsRawString(t){return this.color.getAsRawString(t)}
  class vt (line 1) | class vt{#n;#h;#s;#c;static#i={hex:t=>new vt(t.#h,"hex"),hexa:t=>new vt(...
    method #o (line 1) | #o(){const[t,e,r]=this.#h;return A.srgbToXyzd50(t,e,r)}
    method alpha (line 1) | get alpha(){switch(this.format()){case"hexa":case"rgba":return this.#h...
    method asLegacyColor (line 1) | asLegacyColor(){return this}
    method nickname (line 1) | nickname(){const t=zt.get(String(this.canonicalRGBA()));return t?new x...
    method shortHex (line 1) | shortHex(){for(let t=0;t<4;++t){if(Math.round(255*this.#h[t])%17)retur...
    method constructor (line 1) | constructor(t,e,r){this.#s=r||null,this.#c=e,this.#n=[t[0],t[1],t[2]],...
    method fromHex (line 1) | static fromHex(t,e){const r=4===(t=t.toLowerCase()).length||8===t.leng...
    method fromRGBAFunction (line 1) | static fromRGBAFunction(t,r,s,n,i){const a=[rt(t),rt(r),rt(s),n?(o=n,e...
    method fromRGBA (line 1) | static fromRGBA(t,e){return new vt([t[0]/255,t[1]/255,t[2]/255,t[3]],"...
    method fromHSVA (line 1) | static fromHSVA(t){const e=at(t);return new vt(e,"rgba")}
    method is (line 1) | is(t){return t===this.format()}
    method as (line 1) | as(t){return t===this.format()?this:vt.#i[t](this)}
    method format (line 1) | format(){return this.#c}
    method hasAlpha (line 1) | hasAlpha(){return 1!==this.#h[3]}
    method detectHEXFormat (line 1) | detectHEXFormat(){return this.hasAlpha()?"hexa":"hex"}
    method asString (line 1) | asString(t){return t?this.as(t).asString():this.#l(t,this.#h[0],this.#...
    method #l (line 1) | #l(t,r,s,n){function i(t){const e=Math.round(255*t).toString(16);retur...
    method getAuthoredText (line 1) | getAuthoredText(){return this.#s??null}
    method getRawParameters (line 1) | getRawParameters(){return[...this.#n]}
    method getAsRawString (line 1) | getAsRawString(t){return t?this.as(t).getAsRawString():this.#l(t,...th...
    method isGamutClipped (line 1) | isGamutClipped(){return!ht(this.#n.map(ft),[this.#h[0],this.#h[1],this...
    method rgba (line 1) | rgba(){return[...this.#h]}
    method canonicalRGBA (line 1) | canonicalRGBA(){const t=new Array(4);for(let e=0;e<3;++e)t[e]=Math.rou...
    method toProtocolRGBA (line 1) | toProtocolRGBA(){const t=this.canonicalRGBA(),e={r:t[0],g:t[1],b:t[2],...
    method invert (line 1) | invert(){const t=[0,0,0,0];return t[0]=1-this.#h[0],t[1]=1-this.#h[1],...
    method grayscale (line 1) | grayscale(){const[t,e,r]=this.#h,s=.299*t+.587*e+.114*r;return new vt(...
    method setAlpha (line 1) | setAlpha(t){const e=[...this.#h];return e[3]=t,new vt(e,"rgba")}
    method blendWith (line 1) | blendWith(t){const e=E(t.#h,this.#h);return new vt(e,"rgba")}
    method blendWithAlpha (line 1) | blendWithAlpha(t){const e=[...this.#h];return e[3]*=t,new vt(e,"rgba")}
    method setFormat (line 1) | setFormat(t){this.#c=t}
    method equal (line 1) | equal(t){const e=t.as(this.#c);return ht(ft(this.#h[0]),ft(e.#h[0]),1)...
  method constructor (line 1) | constructor(t,e,r,s){this.#u=t||{min:0,max:360,count:void 0},this.#g=e||...
  method setColorForID (line 1) | setColorForID(t,e){this.#m.set(t,e)}
  method colorForID (line 1) | colorForID(t){let e=this.#m.get(t);return e||(e=this.generateColorForID(...
  method generateColorForID (line 1) | generateColorForID(t){const r=e.StringUtilities.hashCode(t),s=this.index...
  method indexToValueInSpace (line 1) | indexToValueInSpace(t,e){if("number"==typeof e)return e;const r=e.count|...
  class Lt (line 1) | class Lt{listeners;addEventListener(t,e,r){this.listeners||(this.listene...
    method addEventListener (line 1) | addEventListener(t,e,r){this.listeners||(this.listeners=new Map);let s...
    method once (line 1) | once(t){return new Promise((e=>{const r=this.addEventListener(t,(s=>{t...
    method removeEventListener (line 1) | removeEventListener(t,e,r){const s=this.listeners?.get(t);if(s){for(co...
    method hasEventListeners (line 1) | hasEventListeners(t){return Boolean(this.listeners?.has(t))}
    method dispatchEventToListeners (line 1) | dispatchEventToListeners(t,...[e]){const r=this.listeners?.get(t);if(!...
  method addEventListener (line 1) | addEventListener(t,e,r){return this.#y.addEventListener(t,e,r)}
  method once (line 1) | once(t){return this.#y.once(t)}
  method removeEventListener (line 1) | removeEventListener(t,e,r){this.#y.removeEventListener(t,e,r)}
  method hasEventListeners (line 1) | hasEventListeners(t){return this.#y.hasEventListeners(t)}
  method dispatchEventToListeners (line 1) | dispatchEventToListeners(t,...e){this.#y.dispatchEventToListeners(t,...e)}
  class Bt (line 1) | class Bt{registeredRevealers=[];static instance(){return void 0===Vt&&(V...
    method instance (line 1) | static instance(){return void 0===Vt&&(Vt=new Bt),Vt}
    method removeInstance (line 1) | static removeInstance(){Vt=void 0}
    method register (line 1) | register(t){this.registeredRevealers.push(t)}
    method reveal (line 1) | async reveal(t,e){const r=await Promise.all(this.getApplicableRegister...
    method getApplicableRegisteredRevealers (line 1) | getApplicableRegisteredRevealers(t){return this.registeredRevealers.fi...
  function Gt (line 1) | async function Gt(t,e=!1){await Bt.instance().reveal(t,e)}
  class Dt (line 1) | class Dt extends Lt{#b;constructor(){super(),this.#b=[]}static instance(...
    method constructor (line 1) | constructor(){super(),this.#b=[]}
    method instance (line 1) | static instance(t){return Xt&&!t?.forceNew||(Xt=new Dt),Xt}
    method removeInstance (line 1) | static removeInstance(){Xt=void 0}
    method addMessage (line 1) | addMessage(t,e="info",r=!1,s){const n=new jt(t,e,Date.now(),r,s);this....
    method log (line 1) | log(t){this.addMessage(t,"info")}
    method warn (line 1) | warn(t,e){this.addMessage(t,"warning",void 0,e)}
    method error (line 1) | error(t,e=!0){this.addMessage(t,"error",e)}
    method messages (line 1) | messages(){return this.#b}
    method show (line 1) | show(){this.showPromise()}
    method showPromise (line 1) | showPromise(){return Gt(this)}
  class jt (line 1) | class jt{text;level;timestamp;show;source;constructor(t,e,r,s,n){this.te...
    method constructor (line 1) | constructor(t,e,r,s,n){this.text=t,this.level=e,this.timestamp="number...
  method FrontendMessageSource (line 1) | get FrontendMessageSource(){return Ft}
  function Qt (line 1) | function Qt(t){return Jt.filter((function(e){if(!e.contextTypes)return!0...
  method linkify (line 1) | static async linkify(t,e){if(!t)throw new Error("Can't linkify "+t);cons...
  class ee (line 1) | class ee extends Map{getOrInsert(t,e){return this.has(t)||this.set(t,e),...
    method getOrInsert (line 1) | getOrInsert(t,e){return this.has(t)||this.set(t,e),this.get(t)}
    method getOrInsertComputed (line 1) | getOrInsertComputed(t,e){return this.has(t)||this.set(t,e(t)),this.get...
  method acquire (line 1) | acquire(){const t={resolved:!1};return this.#f?new Promise((e=>{this.#w....
  method #S (line 1) | #S(t){if(t.resolved)throw new Error("Cannot release more than once.");t....
  method run (line 1) | async run(t){const e=await this.acquire();try{return await t()}finally{e...
  function ne (line 1) | function ne(t){if(-1===t.indexOf("..")&&-1===t.indexOf("."))return t;con...
  class ie (line 1) | class ie{isValid;url;scheme;user;host;port;path;queryParams;fragment;fol...
    method constructor (line 1) | constructor(t){this.isValid=!1,this.url=t,this.scheme="",this.user="",...
    method fromString (line 1) | static fromString(t){const e=new ie(t.toString());return e.isValid?e:n...
    method preEncodeSpecialCharactersInPath (line 1) | static preEncodeSpecialCharactersInPath(t){for(const e of["%",";","#",...
    method rawPathToEncodedPathString (line 1) | static rawPathToEncodedPathString(t){const e=ie.preEncodeSpecialCharac...
    method encodedFromParentPathAndName (line 1) | static encodedFromParentPathAndName(t,e){return ie.concatenate(t,"/",i...
    method urlFromParentUrlAndName (line 1) | static urlFromParentUrlAndName(t,e){return ie.concatenate(t,"/",ie.pre...
    method encodedPathToRawPathString (line 1) | static encodedPathToRawPathString(t){return decodeURIComponent(t)}
    method rawPathToUrlString (line 1) | static rawPathToUrlString(t){let e=ie.preEncodeSpecialCharactersInPath...
    method relativePathToUrlString (line 1) | static relativePathToUrlString(t,e){const r=ie.preEncodeSpecialCharact...
    method urlToRawPathString (line 1) | static urlToRawPathString(t,e){console.assert(t.startsWith("file://"),...
    method sliceUrlToEncodedPathString (line 1) | static sliceUrlToEncodedPathString(t,e){return t.substring(e)}
    method substr (line 1) | static substr(t,e,r){return t.substr(e,r)}
    method substring (line 1) | static substring(t,e,r){return t.substring(e,r)}
    method prepend (line 1) | static prepend(t,e){return t+e}
    method concatenate (line 1) | static concatenate(t,...e){return t.concat(...e)}
    method trim (line 1) | static trim(t){return t.trim()}
    method slice (line 1) | static slice(t,e,r){return t.slice(e,r)}
    method join (line 1) | static join(t,e){return t.join(e)}
    method split (line 1) | static split(t,e,r){return t.split(e,r)}
    method toLowerCase (line 1) | static toLowerCase(t){return t.toLowerCase()}
    method isValidUrlString (line 1) | static isValidUrlString(t){return new ie(t).isValid}
    method urlWithoutHash (line 1) | static urlWithoutHash(t){const e=t.indexOf("#");return-1!==e?t.substr(...
    method urlRegex (line 1) | static urlRegex(){if(ie.urlRegexInstance)return ie.urlRegexInstance;re...
    method extractPath (line 1) | static extractPath(t){const e=this.fromString(t);return e?e.path:""}
    method extractOrigin (line 1) | static extractOrigin(t){const r=this.fromString(t);return r?r.security...
    method extractExtension (line 1) | static extractExtension(t){const e=(t=ie.urlWithoutHash(t)).indexOf("?...
    method extractName (line 1) | static extractName(t){let e=t.lastIndexOf("/");const r=-1!==e?t.substr...
    method completeURL (line 1) | static completeURL(t,e){if(e.startsWith("data:")||e.startsWith("blob:"...
    method splitLineAndColumn (line 1) | static splitLineAndColumn(t){const e=t.match(ie.urlRegex());let r="",s...
    method removeWasmFunctionInfoFromURL (line 1) | static removeWasmFunctionInfoFromURL(t){const e=t.search(/:wasm-functi...
    method beginsWithWindowsDriveLetter (line 1) | static beginsWithWindowsDriveLetter(t){return/^[A-Za-z]:/.test(t)}
    method beginsWithScheme (line 1) | static beginsWithScheme(t){return/^[A-Za-z][A-Za-z0-9+.-]*:/.test(t)}
    method isRelativeURL (line 1) | static isRelativeURL(t){return!this.beginsWithScheme(t)||this.beginsWi...
    method displayName (line 1) | get displayName(){return this.#x?this.#x:this.isDataURL()?this.dataURL...
    method dataURLDisplayName (line 1) | dataURLDisplayName(){return this.#v?this.#v:this.isDataURL()?(this.#v=...
    method isAboutBlank (line 1) | isAboutBlank(){return"about:blank"===this.url}
    method isDataURL (line 1) | isDataURL(){return"data"===this.scheme}
    method extractDataUrlMimeType (line 1) | extractDataUrlMimeType(){const t=this.url.match(/^data:((?<type>\w+)\/...
    method isBlobURL (line 1) | isBlobURL(){return this.url.startsWith("blob:")}
    method lastPathComponentWithFragment (line 1) | lastPathComponentWithFragment(){return this.lastPathComponent+(this.fr...
    method domain (line 1) | domain(){return this.isDataURL()?"data:":this.host+(this.port?":"+this...
    method securityOrigin (line 1) | securityOrigin(){if(this.isDataURL())return"data:";return(this.isBlobU...
    method urlWithoutScheme (line 1) | urlWithoutScheme(){return this.scheme&&this.url.startsWith(this.scheme...
  class oe (line 1) | class oe{#T;#R;#z;#I;constructor(t,e){this.#T=t,this.#R=e||1,this.#z=0,t...
    method constructor (line 1) | constructor(t,e){this.#T=t,this.#R=e||1,this.#z=0,this.#I=0}
    method isCanceled (line 1) | isCanceled(){return this.#T.parent.isCanceled()}
    method setTitle (line 1) | setTitle(t){this.#T.parent.setTitle(t)}
    method done (line 1) | done(){this.setWorked(this.#I),this.#T.childDone()}
    method setTotalWork (line 1) | setTotalWork(t){this.#I=t,this.#T.update()}
    method setWorked (line 1) | setWorked(t,e){this.#z=t,void 0!==e&&this.setTitle(e),this.#T.update()}
    method incrementWorked (line 1) | incrementWorked(t){this.setWorked(this.#z+(t||1))}
    method getWeight (line 1) | getWeight(){return this.#R}
    method getWorked (line 1) | getWorked(){return this.#z}
    method getTotalWork (line 1) | getTotalWork(){return this.#I}
  method constructor (line 1) | constructor(t){this.parent=t,this.#A=[],this.#P=0,this.parent.setTotalWo...
  method childDone (line 1) | childDone(){++this.#P===this.#A.length&&this.parent.done()}
  method createSubProgress (line 1) | createSubProgress(t){const e=new oe(this,t);return this.#A.push(e),e}
  method update (line 1) | update(){let t=0,e=0;for(let r=0;r<this.#A.length;++r){const s=this.#A[r...
  method setTotalWork (line 1) | setTotalWork(t){}
  method setTitle (line 1) | setTitle(t){}
  method setWorked (line 1) | setWorked(t,e){}
  method incrementWorked (line 1) | incrementWorked(t){}
  method done (line 1) | done(){}
  method isCanceled (line 1) | isCanceled(){return!1}
  method constructor (line 1) | constructor(t,e){this.#E=t,this.#k=e}
  method isCanceled (line 1) | isCanceled(){return!!this.#E&&this.#E.isCanceled()}
  method setTitle (line 1) | setTitle(t){this.#E&&this.#E.setTitle(t)}
  method done (line 1) | done(){this.#E&&this.#E.done(),this.#k&&this.#k()}
  method setTotalWork (line 1) | setTotalWork(t){this.#E&&this.#E.setTotalWork(t)}
  method setWorked (line 1) | setWorked(t,e){this.#E&&this.#E.setWorked(t,e)}
  method incrementWorked (line 1) | incrementWorked(t){this.#E&&this.#E.incrementWorked(t)}
  method waitFor (line 1) | async waitFor(t){const e=this.getForId(t);return e||await this.getOrCrea...
  method tryGet (line 1) | tryGet(t,e){const r=this.getForId(t);if(!r){const r=()=>{};return this.g...
  method clear (line 1) | clear(){this.stopListening();for(const[t,{reject:e}]of this.#L.entries()...
  method getOrCreatePromise (line 1) | getOrCreatePromise(t){const e=this.#L.get(t);if(e)return e.promise;const...
  method onResolve (line 1) | onResolve(t,e){const r=this.#L.get(t);this.#L.delete(t),0===this.#L.size...
  class pe (line 1) | class pe{#C;#_;#N;#O;constructor(t,e,r,s){this.#C=t,this.#_=e,this.#N=r,...
    method constructor (line 1) | constructor(t,e,r,s){this.#C=t,this.#_=e,this.#N=r,this.#O=s}
    method fromMimeType (line 1) | static fromMimeType(t){return t?t.startsWith("text/html")?fe.Document:...
    method fromMimeTypeOverride (line 1) | static fromMimeTypeOverride(t){return"application/manifest+json"===t?f...
    method fromURL (line 1) | static fromURL(t){return Se.get(ie.extractExtension(t))||null}
    method fromName (line 1) | static fromName(t){for(const e in fe){const r=fe[e];if(r.name()===t)re...
    method mimeFromURL (line 1) | static mimeFromURL(t){if(t.startsWith("snippet://")||t.startsWith("deb...
    method mimeFromExtension (line 1) | static mimeFromExtension(t){return xe.get(t)}
    method simplifyContentType (line 1) | static simplifyContentType(t){return new RegExp("^application(.*json$|...
    method mediaTypeForMetrics (line 1) | static mediaTypeForMetrics(t,e,r,s,n){return"text/javascript"!==t?t:e?...
    method name (line 1) | name(){return this.#C}
    method title (line 1) | title(){return this.#_()}
    method category (line 1) | category(){return this.#N}
    method isTextType (line 1) | isTextType(){return this.#O}
    method isScript (line 1) | isScript(){return"script"===this.#C||"sm-script"===this.#C}
    method hasScripts (line 1) | hasScripts(){return this.isScript()||this.isDocument()}
    method isStyleSheet (line 1) | isStyleSheet(){return"stylesheet"===this.#C||"sm-stylesheet"===this.#C}
    method hasStyleSheets (line 1) | hasStyleSheets(){return this.isStyleSheet()||this.isDocument()}
    method isDocument (line 1) | isDocument(){return"document"===this.#C}
    method isDocumentOrScriptOrStyleSheet (line 1) | isDocumentOrScriptOrStyleSheet(){return this.isDocument()||this.isScri...
    method isFont (line 1) | isFont(){return"font"===this.#C}
    method isImage (line 1) | isImage(){return"image"===this.#C}
    method isFromSourceMap (line 1) | isFromSourceMap(){return this.#C.startsWith("sm-")}
    method isWebbundle (line 1) | isWebbundle(){return"webbundle"===this.#C}
    method toString (line 1) | toString(){return this.#C}
    method canonicalMimeType (line 1) | canonicalMimeType(){return this.isDocument()?"text/html":this.isScript...
  class me (line 1) | class me{name;title;shortTitle;constructor(t,e,r){this.name=t,this.title...
    method constructor (line 1) | constructor(t,e,r){this.name=t,this.title=e,this.shortTitle=r}
  class Ie (line 1) | class Ie{begin;end;data;constructor(t,e,r){if(t>e)throw new Error("Inval...
    method constructor (line 1) | constructor(t,e,r){if(t>e)throw new Error("Invalid segment");this.begi...
    method intersects (line 1) | intersects(t){return this.begin<t.end&&t.begin<this.end}
  method constructor (line 1) | constructor(t){this.#V=[],this.#B=t}
  method append (line 1) | append(t){let r=e.ArrayUtilities.lowerBound(this.#V,t,((t,e)=>t.begin-e....
  method segments (line 1) | segments(){return this.#V}
  method tryMerge (line 1) | tryMerge(t,e){const r=this.#B&&this.#B(t,e);return r?(r.begin=t.begin,r....
  function _e (line 1) | function _e(t){const e=t.settingName;if(Ce.has(e))throw new Error(`Dupli...
  function Ne (line 1) | function Ne(){return Le.filter((e=>t.Runtime.Runtime.isDescriptorEnabled...
  function Oe (line 1) | function Oe(t,e=!1){if(0===Le.length||e){Le=t,Ce.clear();for(const e of ...
  function Ve (line 1) | function Ve(){Le=[],Ce.clear()}
  function Be (line 1) | function Be(t){const e=Le.findIndex((e=>e.settingName===t));return!(e<0|...
  function Ge (line 1) | function Ge(t){switch(t){case"ELEMENTS":return ke(Pe.elements);case"AI":...
  class Xe (line 1) | class Xe{syncedStorage;globalStorage;localStorage;#G=new Fe({});settingN...
    method constructor (line 1) | constructor(e,r,s,n){this.syncedStorage=e,this.globalStorage=r,this.lo...
    method getRegisteredSettings (line 1) | getRegisteredSettings(){return Ne()}
    method hasInstance (line 1) | static hasInstance(){return void 0!==We}
    method instance (line 1) | static instance(t={forceNew:null,syncedStorage:null,globalStorage:null...
    method removeInstance (line 1) | static removeInstance(){We=void 0}
    method registerModuleSetting (line 1) | registerModuleSetting(t){const e=t.name,r=t.category(),s=t.order();if(...
    method normalizeSettingName (line 1) | static normalizeSettingName(t){return[qe.GLOBAL_VERSION_SETTING_NAME,q...
    method moduleSetting (line 1) | moduleSetting(t){const e=this.moduleSettings.get(t);if(!e)throw new Er...
    method settingForTest (line 1) | settingForTest(t){const e=this.#W.get(t);if(!e)throw new Error("No set...
    method createSetting (line 1) | createSetting(t,e,r){const s=this.storageFromType(r);let n=this.#W.get...
    method createLocalSetting (line 1) | createLocalSetting(t,e){return this.createSetting(t,e,"Local")}
    method createRegExpSetting (line 1) | createRegExpSetting(t,e,r,s){return this.#W.get(t)||this.#W.set(t,new ...
    method clearAll (line 1) | clearAll(){this.globalStorage.removeAll(),this.syncedStorage.removeAll...
    method storageFromType (line 1) | storageFromType(t){switch(t){case"Local":return this.localStorage;case...
    method getRegistry (line 1) | getRegistry(){return this.#W}
  class Fe (line 1) | class Fe{object;backingStore;storagePrefix;constructor(t,e=De,r=""){this...
    method constructor (line 1) | constructor(t,e=De,r=""){this.object=t,this.backingStore=e,this.storag...
    method register (line 1) | register(t){t=this.storagePrefix+t,this.backingStore.register(t)}
    method set (line 1) | set(t,e){t=this.storagePrefix+t,this.object[t]=e,this.backingStore.set...
    method has (line 1) | has(t){return(t=this.storagePrefix+t)in this.object}
    method get (line 1) | get(t){return t=this.storagePrefix+t,this.object[t]}
    method forceGet (line 1) | async forceGet(t){const e=this.storagePrefix+t,r=await this.backingSto...
    method remove (line 1) | remove(t){t=this.storagePrefix+t,delete this.object[t],this.backingSto...
    method removeAll (line 1) | removeAll(){this.object={},this.backingStore.clear()}
    method keys (line 1) | keys(){return Object.keys(this.object)}
    method dumpSizes (line 1) | dumpSizes(){Dt.instance().log("Ten largest settings: ");const t={__pro...
  function je (line 1) | function je(t){const e=t.name,r=Xe.instance();r.getRegistry().delete(e),...
  class Ue (line 1) | class Ue{disabled;warning;experiment;constructor({deprecationNotice:e}){...
    method constructor (line 1) | constructor({deprecationNotice:e}){if(!e)throw new Error("Cannot creat...
  class $e (line 1) | class $e{name;defaultValue;eventSupport;storage;#D;#_;#F=null;#j;#U;#$=J...
    method constructor (line 1) | constructor(t,e,r,s,n){this.name=t,this.defaultValue=e,this.eventSuppo...
    method setSerializer (line 1) | setSerializer(t){this.#$=t}
    method addChangeListener (line 1) | addChangeListener(t,e){return this.eventSupport.addEventListener(this....
    method removeChangeListener (line 1) | removeChangeListener(t,e){this.eventSupport.removeEventListener(this.n...
    method title (line 1) | title(){return this.#_?this.#_:this.#D?this.#D():""}
    method setTitleFunction (line 1) | setTitleFunction(t){t&&(this.#D=t)}
    method setTitle (line 1) | setTitle(t){this.#_=t}
    method setRequiresUserAction (line 1) | setRequiresUserAction(t){this.#j=t}
    method disabled (line 1) | disabled(){if(this.#F?.disabledCondition){const{disabled:e}=this.#F.di...
    method disabledReasons (line 1) | disabledReasons(){if(this.#F?.disabledCondition){const e=this.#F.disab...
    method setDisabled (line 1) | setDisabled(t){this.#q=t,this.eventSupport.dispatchEventToListeners(th...
    method #K (line 1) | #K(t){const e="string"==typeof t||"number"==typeof t||"boolean"==typeo...
    method #J (line 1) | #J(t){this.#Z||(this.#K(t),this.#Z=!0)}
    method get (line 1) | get(){if(this.#j&&!this.#H)return this.#J(this.defaultValue),this.defa...
    method getIfNotDisabled (line 1) | getIfNotDisabled(){if(!this.disabled())return this.get()}
    method forceGet (line 1) | async forceGet(){const t=this.name,e=this.storage.get(t),r=await this....
    method set (line 1) | set(t){this.#K(t),this.#H=!0,this.#U=t;try{const e=this.#$.stringify(t...
    method setRegistration (line 1) | setRegistration(e){this.#F=e;const{deprecationNotice:r}=e;if(r?.disabl...
    method type (line 1) | type(){return this.#F?this.#F.settingType:null}
    method options (line 1) | options(){return this.#F&&this.#F.options?this.#F.options.map((t=>{con...
    method reloadRequired (line 1) | reloadRequired(){return this.#F&&this.#F.reloadRequired||null}
    method category (line 1) | category(){return this.#F&&this.#F.category||null}
    method tags (line 1) | tags(){return this.#F&&this.#F.tags?this.#F.tags.map((t=>t())).join("\...
    method order (line 1) | order(){return this.#F&&this.#F.order||null}
    method learnMore (line 1) | learnMore(){return this.#F?.learnMore??null}
    method deprecation (line 1) | get deprecation(){return this.#F&&this.#F.deprecationNotice?(this.#Y||...
    method printSettingsSavingError (line 1) | printSettingsSavingError(t,e,r){const s="Error saving setting with nam...
  class He (line 1) | class He extends $e{#Q;#tt;constructor(t,e,r,s,n,i){super(t,e?[{pattern:...
    method constructor (line 1) | constructor(t,e,r,s,n,i){super(t,e?[{pattern:e}]:[],r,s,i),this.#Q=n}
    method get (line 1) | get(){const t=[],e=this.getAsArray();for(let r=0;r<e.length;++r){const...
    method getAsArray (line 1) | getAsArray(){return super.get()}
    method set (line 1) | set(t){this.setAsArray([{pattern:t,disabled:!1}])}
    method setAsArray (line 1) | setAsArray(t){this.#tt=void 0,super.set(t)}
    method asRegExp (line 1) | asRegExp(){if(void 0!==this.#tt)return this.#tt;this.#tt=null;try{cons...
  class qe (line 1) | class qe{static GLOBAL_VERSION_SETTING_NAME="inspectorVersion";static SY...
    method constructor (line 1) | constructor(){this.#et=Xe.instance().createSetting(qe.GLOBAL_VERSION_S...
    method resetToCurrent (line 1) | resetToCurrent(){this.#et.set(qe.CURRENT_VERSION),this.#rt.set(qe.CURR...
    method updateVersion (line 1) | updateVersion(){const t=qe.CURRENT_VERSION,e=Math.min(this.#et.get(),t...
    method methodsToRunToUpdateVersion (line 1) | methodsToRunToUpdateVersion(t,e){const r=[];for(let s=t;s<e;++s)r.push...
    method updateVersionFrom0To1 (line 1) | updateVersionFrom0To1(){this.clearBreakpointsWhenTooMany(Xe.instance()...
    method updateVersionFrom1To2 (line 1) | updateVersionFrom1To2(){Xe.instance().createSetting("previouslyViewedF...
    method updateVersionFrom2To3 (line 1) | updateVersionFrom2To3(){Xe.instance().createSetting("fileSystemMapping...
    method updateVersionFrom3To4 (line 1) | updateVersionFrom3To4(){const t=Xe.instance().createSetting("showHeaSn...
    method updateVersionFrom4To5 (line 1) | updateVersionFrom4To5(){const t={FileSystemViewSidebarWidth:"fileSyste...
    method updateVersionFrom5To6 (line 1) | updateVersionFrom5To6(){const t={debuggerSidebarHidden:"sourcesPanelSp...
    method updateVersionFrom6To7 (line 1) | updateVersionFrom6To7(){const t={sourcesPanelNavigatorSplitViewState:"...
    method updateVersionFrom7To8 (line 1) | updateVersionFrom7To8(){}
    method updateVersionFrom8To9 (line 1) | updateVersionFrom8To9(){const t=["skipStackFramesPattern","workspaceFo...
    method updateVersionFrom9To10 (line 1) | updateVersionFrom9To10(){if(window.localStorage)for(const t in window....
    method updateVersionFrom10To11 (line 1) | updateVersionFrom10To11(){const t=Xe.instance().createSetting("customD...
    method updateVersionFrom11To12 (line 1) | updateVersionFrom11To12(){this.migrateSettingsFromLocalStorage()}
    method updateVersionFrom12To13 (line 1) | updateVersionFrom12To13(){this.migrateSettingsFromLocalStorage(),je(Xe...
    method updateVersionFrom13To14 (line 1) | updateVersionFrom13To14(){const t={throughput:-1,latency:0};Xe.instanc...
    method updateVersionFrom14To15 (line 1) | updateVersionFrom14To15(){const t=Xe.instance().createLocalSetting("wo...
    method updateVersionFrom15To16 (line 1) | updateVersionFrom15To16(){const t=Xe.instance().createSetting("Inspect...
    method updateVersionFrom16To17 (line 1) | updateVersionFrom16To17(){const t=Xe.instance().createSetting("network...
    method updateVersionFrom17To18 (line 1) | updateVersionFrom17To18(){const t=Xe.instance().createLocalSetting("wo...
    method updateVersionFrom18To19 (line 1) | updateVersionFrom18To19(){const t=Xe.instance().createSetting("network...
    method updateVersionFrom19To20 (line 1) | updateVersionFrom19To20(){const t=Xe.instance().createSetting("Inspect...
    method updateVersionFrom20To21 (line 1) | updateVersionFrom20To21(){const t=Xe.instance().createSetting("network...
    method updateVersionFrom21To22 (line 1) | updateVersionFrom21To22(){const t=Xe.instance().createLocalSetting("br...
    method updateVersionFrom22To23 (line 1) | updateVersionFrom22To23(){}
    method updateVersionFrom23To24 (line 1) | updateVersionFrom23To24(){const t=Xe.instance().createSetting("searchI...
    method updateVersionFrom24To25 (line 1) | updateVersionFrom24To25(){const t=Xe.instance().createSetting("network...
    method updateVersionFrom25To26 (line 1) | updateVersionFrom25To26(){const t=Xe.instance().createSetting("message...
    method updateVersionFrom26To27 (line 1) | updateVersionFrom26To27(){function t(t,e,r){const s=Xe.instance().crea...
    method updateVersionFrom27To28 (line 1) | updateVersionFrom27To28(){const t=Xe.instance().createSetting("uiTheme...
    method updateVersionFrom28To29 (line 1) | updateVersionFrom28To29(){function t(t,e,r){const s=Xe.instance().crea...
    method updateVersionFrom29To30 (line 1) | updateVersionFrom29To30(){const t=Xe.instance().createSetting("closeab...
    method updateVersionFrom30To31 (line 1) | updateVersionFrom30To31(){je(Xe.instance().createSetting("recorder_rec...
    method updateVersionFrom31To32 (line 1) | updateVersionFrom31To32(){const t=Xe.instance().createLocalSetting("br...
    method updateVersionFrom32To33 (line 1) | updateVersionFrom32To33(){const t=Xe.instance().createLocalSetting("pr...
    method updateVersionFrom33To34 (line 1) | updateVersionFrom33To34(){const t=Xe.instance().createLocalSetting("br...
    method updateVersionFrom34To35 (line 1) | updateVersionFrom34To35(){const t=Xe.instance().createLocalSetting("br...
    method updateVersionFrom35To36 (line 1) | updateVersionFrom35To36(){Xe.instance().createSetting("showThirdPartyI...
    method updateVersionFrom36To37 (line 1) | updateVersionFrom36To37(){const t=t=>{for(const e of t.keys()){const r...
    method updateVersionFrom37To38 (line 1) | updateVersionFrom37To38(){const t=(()=>{try{return Ye("console-insight...
    method migrateSettingsFromLocalStorage (line 1) | migrateSettingsFromLocalStorage(){const t=new Set(["advancedSearchConf...
    method clearBreakpointsWhenTooMany (line 1) | clearBreakpointsWhenTooMany(t,e){t.get().length>e&&t.set([])}
  function Ye (line 1) | function Ye(t){return Xe.instance().moduleSetting(t)}
  method constructor (line 1) | constructor(t){this.#nt=[],this.#it=-1,this.#at=0,this.#ot=t}
  method readOnlyLock (line 1) | readOnlyLock(){++this.#at}
  method releaseReadOnlyLock (line 1) | releaseReadOnlyLock(){--this.#at}
  method getPreviousValidIndex (line 1) | getPreviousValidIndex(){if(this.empty())return-1;let t=this.#it-1;for(;t...
  method getNextValidIndex (line 1) | getNextValidIndex(){let t=this.#it+1;for(;t<this.#nt.length&&!this.#nt[t...
  method readOnly (line 1) | readOnly(){return Boolean(this.#at)}
  method filterOut (line 1) | filterOut(t){if(this.readOnly())return;const e=[];let r=0;for(let s=0;s<...
  method empty (line 1) | empty(){return!this.#nt.length}
  method active (line 1) | active(){return this.empty()?null:this.#nt[this.#it]}
  method push (line 1) | push(t){this.readOnly()||(this.empty()||this.#nt.splice(this.#it+1),this...
  method canRollback (line 1) | canRollback(){return this.getPreviousValidIndex()>=0}
  method canRollover (line 1) | canRollover(){return this.getNextValidIndex()>=0}
  method rollback (line 1) | rollback(){const t=this.getPreviousValidIndex();return-1!==t&&(this.read...
  method rollover (line 1) | rollover(){const t=this.getNextValidIndex();return-1!==t&&(this.readOnly...
  method constructor (line 1) | constructor(){this.#lt=""}
  method write (line 1) | async write(t){this.#lt+=t}
  method close (line 1) | async close(){}
  method data (line 1) | data(){return this.#lt}
  class Qe (line 1) | class Qe{#ht;#ct;#ut;#gt;#dt;#pt;#mt;constructor(t){this.#ct=0,this.#mt=...
    method constructor (line 1) | constructor(t){this.#ct=0,this.#mt=t,this.clear()}
    method newStringTrie (line 1) | static newStringTrie(){return new Qe({empty:()=>"",append:(t,e)=>t+e,s...
    method newArrayTrie (line 1) | static newArrayTrie(){return new Qe({empty:()=>[],append:(t,e)=>t.conc...
    method add (line 1) | add(t){let e=this.#ct;++this.#dt[this.#ct];for(let r=0;r<t.length;++r)...
    method remove (line 1) | remove(t){if(!this.has(t))return!1;let e=this.#ct;--this.#dt[this.#ct]...
    method has (line 1) | has(t){let e=this.#ct;for(let r=0;r<t.length;++r)if(e=this.#ut[e].get(...
    method words (line 1) | words(t){t=t??this.#mt.empty();let e=this.#ct;for(let r=0;r<t.length;+...
    method dfs (line 1) | dfs(t,e,r){this.#gt[t]&&r.push(e);const s=this.#ut[t];for(const[t,n]of...
    method longestPrefix (line 1) | longestPrefix(t,e){let r=this.#ct,s=0;for(let n=0;n<t.length&&(r=this....
    method clear (line 1) | clear(){this.#ht=1,this.#ct=0,this.#ut=[new Map],this.#gt=[!1],this.#d...
  method addWord (line 1) | addWord(t){let e=this.words.get(t)||0;++e,this.words.set(t,e),this.index...
  method removeWord (line 1) | removeWord(t){let e=this.words.get(t)||0;if(e){if(1===e)return this.word...
  method wordsWithPrefix (line 1) | wordsWithPrefix(t){return this.index.words(t)}
  method hasWord (line 1) | hasWord(t){return this.words.has(t)}
  method wordCount (line 1) | wordCount(t){return this.words.get(t)||0}
  method reset (line 1) | reset(){this.words.clear(),this.index.clear()}
  method constructor (line 1) | constructor(t){this.#yt=t,this.#bt=!1,this.#ft=!1,this.#wt=null,this.#St=0}
  method #Tt (line 1) | #Tt(){this.#St=this.#Rt(),this.#bt=!1,this.#wt&&this.#zt(!1)}
  method process (line 1) | get process(){return this.#wt}
  method processCompleted (line 1) | get processCompleted(){return this.#wt?this.#xt.promise:null}
  method #It (line 1) | #It(){this.#vt=void 0,this.#ft=!1,this.#bt=!0,Promise.resolve().then(thi...
  method schedule (line 1) | async schedule(t,e="Default"){this.#wt=t;const r=Boolean(this.#vt)||this...
  method #zt (line 1) | #zt(t){if(this.#bt)return;if(this.#vt&&!t)return;clearTimeout(this.#vt);...
  method #Rt (line 1) | #Rt(){return window.performance.now()}
  class sr (line 1) | class sr{#At;#Pt;constructor(t){this.#At=new Promise((e=>{const r=new Wo...
    method constructor (line 1) | constructor(t){this.#At=new Promise((e=>{const r=new Worker(t,{type:"m...
    method fromURL (line 1) | static fromURL(t){return new sr(t)}
    method postMessage (line 1) | postMessage(t,e){this.#At.then((r=>{this.#Pt||r.postMessage(t,e??[])}))}
    method dispose (line 1) | dispose(){this.#Pt=!0,this.#At.then((t=>t.terminate()))}
    method terminate (line 1) | terminate(){this.dispose()}
    method onmessage (line 1) | set onmessage(t){this.#At.then((e=>{e.onmessage=t}))}
    method onerror (line 1) | set onerror(t){this.#At.then((e=>{e.onerror=t}))}

FILE: packages/debugger-frontend/dist/third-party/front_end/core/dom_extension/dom_extension.js
  method constructor (line 1) | constructor(t,e,o,n){this.x=t||0,this.y=e||0,this.width=o||0,this.height...
  method contains (line 1) | contains(t,e){return t>=this.x&&t<=this.x+this.width&&e>=this.y&&e<=this...
  method relativeTo (line 1) | relativeTo(t){return new AnchorBox(this.x-t.x,this.y-t.y,this.width,this...
  method relativeToElement (line 1) | relativeToElement(t){return this.relativeTo(t.boxInWindow(t.ownerDocumen...
  method equals (line 1) | equals(t){return Boolean(t)&&this.x===t.x&&this.y===t.y&&this.width===t....
  function r (line 1) | function r(t){if(!t.assignedSlot)return t.nextSibling;const e=t.assigned...

FILE: packages/debugger-frontend/dist/third-party/front_end/core/host/host.js
  method Events (line 1) | get Events(){return o}
  function h (line 1) | function h(e,r,t){if(void 0===e||void 0===t)return null;if(0!==e){if(fun...
  function l (line 1) | function l(e){if(o){const{success:r,description:t}=function(e){const{sta...
  class E (line 1) | class E{#e=new Map;events;#r=null;recordedCountHistograms=[];recordedEnu...
    method constructor (line 1) | constructor(){function e(e){!("mac"===this.platform()?e.metaKey:e.ctrl...
    method platform (line 1) | platform(){const e=navigator.userAgent;return e.includes("Windows NT")...
    method loadCompleted (line 1) | loadCompleted(){}
    method bringToFront (line 1) | bringToFront(){}
    method closeWindow (line 1) | closeWindow(){}
    method setIsDocked (line 1) | setIsDocked(e,r){window.setTimeout(r,0)}
    method showSurvey (line 1) | showSurvey(e,r){window.setTimeout((()=>r({surveyShown:!1})),0)}
    method canShowSurvey (line 1) | canShowSurvey(e,r){window.setTimeout((()=>r({canShowSurvey:!1})),0)}
    method setInspectedPageBounds (line 1) | setInspectedPageBounds(e){}
    method inspectElementCompleted (line 1) | inspectElementCompleted(){}
    method setInjectedScriptForOrigin (line 1) | setInjectedScriptForOrigin(e,r){}
    method inspectedURLChanged (line 1) | inspectedURLChanged(e){document.title=w(C.devtoolsS,{PH1:e.replace(/^h...
    method copyText (line 1) | copyText(e){null!=e&&navigator.clipboard.writeText(e)}
    method openInNewTab (line 1) | openInNewTab(r){e.ParsedURL.schemeIs(r,"javascript:")||window.open(r,"...
    method openSearchResultsInNewTab (line 1) | openSearchResultsInNewTab(r){e.Console.Console.instance().error("Searc...
    method showItemInFolder (line 1) | showItemInFolder(r){e.Console.Console.instance().error("Show item in f...
    method save (line 1) | save(e,r,t,n){let s=this.#e.get(e);s||(s=[],this.#e.set(e,s)),s.push(r...
    method append (line 1) | append(e,r){const t=this.#e.get(e);t&&(t.push(r),this.events.dispatchE...
    method close (line 1) | close(e){const r=this.#e.get(e)||[];this.#e.delete(e);let t="";if(e)tr...
    method sendMessageToBackend (line 1) | sendMessageToBackend(e){}
    method recordCountHistogram (line 1) | recordCountHistogram(e,r,t,n,o){this.recordedCountHistograms.length>=1...
    method recordEnumeratedHistogram (line 1) | recordEnumeratedHistogram(e,r,t){this.recordedEnumeratedHistograms.len...
    method recordPerformanceHistogram (line 1) | recordPerformanceHistogram(e,r){this.recordedPerformanceHistograms.len...
    method recordUserMetricsAction (line 1) | recordUserMetricsAction(e){}
    method connectAutomaticFileSystem (line 1) | connectAutomaticFileSystem(e,r,t,n){queueMicrotask((()=>n({success:!1}...
    method disconnectAutomaticFileSystem (line 1) | disconnectAutomaticFileSystem(e){}
    method requestFileSystems (line 1) | requestFileSystems(){this.events.dispatchEventToListeners(o.FileSystem...
    method addFileSystem (line 1) | addFileSystem(e){window.webkitRequestFileSystem(window.TEMPORARY,10485...
    method removeFileSystem (line 1) | removeFileSystem(e){const r=e=>{e.forEach((e=>{e.isDirectory?e.removeR...
    method isolatedFileSystem (line 1) | isolatedFileSystem(e,r){return this.#r}
    method loadNetworkResource (line 1) | loadNetworkResource(e,r,t,n){fetch(e).then((async e=>{const r=await e....
    method registerPreference (line 1) | registerPreference(e,r){}
    method getPreferences (line 1) | getPreferences(e){const r={};for(const e in window.localStorage)r[e]=w...
    method getPreference (line 1) | getPreference(e,r){r(window.localStorage[e])}
    method setPreference (line 1) | setPreference(e,r){window.localStorage[e]=r}
    method removePreference (line 1) | removePreference(e){delete window.localStorage[e]}
    method clearPreferences (line 1) | clearPreferences(){window.localStorage.clear()}
    method getSyncInformation (line 1) | getSyncInformation(e){if("getSyncInformationForTesting"in globalThis)r...
    method getHostConfig (line 1) | getHostConfig(e){const r={devToolsVeLogging:{enabled:!0},thirdPartyCoo...
    method upgradeDraggedFileSystemPermissions (line 1) | upgradeDraggedFileSystemPermissions(e){}
    method indexPath (line 1) | indexPath(e,r,t){}
    method stopIndexing (line 1) | stopIndexing(e){}
    method searchInPath (line 1) | searchInPath(e,r,t){}
    method zoomFactor (line 1) | zoomFactor(){return 1}
    method zoomIn (line 1) | zoomIn(){}
    method zoomOut (line 1) | zoomOut(){}
    method resetZoom (line 1) | resetZoom(){}
    method setWhitelistedShortcuts (line 1) | setWhitelistedShortcuts(e){}
    method setEyeDropperActive (line 1) | setEyeDropperActive(e){}
    method showCertificateViewer (line 1) | showCertificateViewer(e){}
    method reattach (line 1) | reattach(e){e()}
    method readyForTest (line 1) | readyForTest(){}
    method connectionReady (line 1) | connectionReady(){}
    method setOpenNewWindowForPopups (line 1) | setOpenNewWindowForPopups(e){}
    method setDevicesDiscoveryConfig (line 1) | setDevicesDiscoveryConfig(e){}
    method setDevicesUpdatesEnabled (line 1) | setDevicesUpdatesEnabled(e){}
    method openRemotePage (line 1) | openRemotePage(e,r){}
    method openNodeFrontend (line 1) | openNodeFrontend(){}
    method showContextMenuAtPoint (line 1) | showContextMenuAtPoint(e,r,t,n){throw new Error("Soft context menu sho...
    method isHostedMode (line 1) | isHostedMode(){return!0}
    method setAddExtensionCallback (line 1) | setAddExtensionCallback(e){}
    method initialTargetId (line 1) | async initialTargetId(){return null}
    method doAidaConversation (line 1) | doAidaConversation(e,r,t){t({error:"Not implemented"})}
    method registerAidaClientEvent (line 1) | registerAidaClientEvent(e,r){r({error:"Not implemented"})}
    method recordImpression (line 1) | recordImpression(e){}
    method recordResize (line 1) | recordResize(e){}
    method recordClick (line 1) | recordClick(e){}
    method recordHover (line 1) | recordHover(e){}
    method recordDrag (line 1) | recordDrag(e){}
    method recordChange (line 1) | recordChange(e){}
    method recordKeyDown (line 1) | recordKeyDown(e){}
    method recordSettingAccess (line 1) | recordSettingAccess(e){}
  class y (line 1) | class y{constructor(){for(const e of s)this[e[1]]=this.dispatch.bind(thi...
    method constructor (line 1) | constructor(){for(const e of s)this[e[1]]=this.dispatch.bind(this,e[0]...
    method dispatch (line 1) | dispatch(e,r,t,...n){if(r.length<2){try{f.events.dispatchEventToListen...
    method streamWrite (line 1) | streamWrite(e,r){p(e,r)}
  method InspectorFrontendHostInstance (line 1) | get InspectorFrontendHostInstance(){return f}
  class O (line 1) | class O extends Error{}
  class N (line 1) | class N extends Error{}
  class L (line 1) | class L{static buildConsoleInsightsRequest(e){const t=r.Runtime.hostConf...
    method buildConsoleInsightsRequest (line 1) | static buildConsoleInsightsRequest(e){const t=r.Runtime.hostConfig.aid...
    method checkAccessPreconditions (line 1) | static async checkAccessPreconditions(){if(!navigator.onLine)return"no...
    method fetch (line 1) | async*fetch(e,r){if(!f.doAidaConversation)throw new Error("doAidaConve...
    method registerClientEvent (line 1) | registerClientEvent(e){const{promise:r,resolve:t}=Promise.withResolver...
  class H (line 1) | class H extends e.ObjectWrapper.ObjectWrapper{#t;#n;constructor(){super(...
    method constructor (line 1) | constructor(){super()}
    method instance (line 1) | static instance(){return D||(D=new H),D}
    method addEventListener (line 1) | addEventListener(e,r){const t=!this.hasEventListeners(e),n=super.addEv...
    method removeEventListener (line 1) | removeEventListener(e,r){super.removeEventListener(e,r),this.hasEventL...
    method pollAidaAvailability (line 1) | async pollAidaAvailability(){this.#t=window.setTimeout((()=>this.pollA...
  method CitationSourceType (line 1) | get CitationSourceType(){return x}
  method ClientFeature (line 1) | get ClientFeature(){return P}
  method FunctionalityType (line 1) | get FunctionalityType(){return A}
  method RecitationAction (line 1) | get RecitationAction(){return T}
  method Role (line 1) | get Role(){return b}
  method UserTier (line 1) | get UserTier(){return R}
  function q (line 1) | function q(){return W||(W=f.platform()),W}
  function K (line 1) | function K(){return null===z&&(z=new $),z}
  class $ (line 1) | class ${#o="error";#s=new Set;#i=null;#a=null;#d="rn_fusebox";#c={};#l=n...
    method isEnabled (line 1) | isEnabled(){return!0===globalThis.enableReactNativePerfMetrics}
    method addEventListener (line 1) | addEventListener(e){this.#s.add(e);return()=>{this.#s.delete(e)}}
    method removeAllEventListeners (line 1) | removeAllEventListeners(){this.#s.clear()}
    method sendEvent (line 1) | sendEvent(e){if(!0!==globalThis.enableReactNativePerfMetrics)return;co...
    method registerPerfMetricsGlobalPostMessageHandler (line 1) | registerPerfMetricsGlobalPostMessageHandler(){!0===globalThis.enableRe...
    method registerGlobalErrorReporting (line 1) | registerGlobalErrorReporting(){window.addEventListener("error",(e=>{co...
    method setLaunchId (line 1) | setLaunchId(e){this.#i=e}
    method setAppId (line 1) | setAppId(e){this.#a=e}
    method setTelemetryInfo (line 1) | setTelemetryInfo(e){this.#c=e}
    method entryPointLoadingStarted (line 1) | entryPointLoadingStarted(e){this.#d=e,this.sendEvent({eventName:"Entry...
    method entryPointLoadingFinished (line 1) | entryPointLoadingFinished(e){this.sendEvent({eventName:"Entrypoint.Loa...
    method browserVisibilityChanged (line 1) | browserVisibilityChanged(e){this.sendEvent({eventName:"Browser.Visibil...
    method remoteDebuggingTerminated (line 1) | remoteDebuggingTerminated(e={}){this.sendEvent({eventName:"Connection....
    method developerResourceLoadingStarted (line 1) | developerResourceLoadingStarted(e,r){const t=Q(e);this.sendEvent({even...
    method developerResourceLoadingFinished (line 1) | developerResourceLoadingFinished(e,r,t){const n=Q(e);this.sendEvent({e...
    method developerResourcesStartupLoadingFinishedEvent (line 1) | developerResourcesStartupLoadingFinishedEvent(e,r){this.sendEvent({eve...
    method fuseboxSetClientMetadataStarted (line 1) | fuseboxSetClientMetadataStarted(){this.sendEvent({eventName:"FuseboxSe...
    method fuseboxSetClientMetadataFinished (line 1) | fuseboxSetClientMetadataFinished(e,r){if(e)this.sendEvent({eventName:"...
    method traceRequested (line 1) | traceRequested(){this.sendEvent({eventName:"Tracing.TraceRequested"})}
    method heapSnapshotStarted (line 1) | heapSnapshotStarted(){this.sendEvent({eventName:"MemoryPanelActionStar...
    method heapSnapshotFinished (line 1) | heapSnapshotFinished(e){this.sendEvent({eventName:"MemoryPanelActionFi...
    method heapProfilingStarted (line 1) | heapProfilingStarted(){this.sendEvent({eventName:"MemoryPanelActionSta...
    method heapProfilingFinished (line 1) | heapProfilingFinished(e){this.sendEvent({eventName:"MemoryPanelActionF...
    method heapSamplingStarted (line 1) | heapSamplingStarted(){this.sendEvent({eventName:"MemoryPanelActionStar...
    method heapSamplingFinished (line 1) | heapSamplingFinished(e){this.sendEvent({eventName:"MemoryPanelActionFi...
    method stackTraceSymbolicationSucceeded (line 1) | stackTraceSymbolicationSucceeded(e){this.sendEvent({eventName:"StackTr...
    method stackTraceSymbolicationFailed (line 1) | stackTraceSymbolicationFailed(e,r,t){this.sendEvent({eventName:"StackT...
    method stackTraceFrameUrlResolutionSucceeded (line 1) | stackTraceFrameUrlResolutionSucceeded(){this.sendEvent({eventName:"Sta...
    method stackTraceFrameUrlResolutionFailed (line 1) | stackTraceFrameUrlResolutionFailed(e){this.sendEvent({eventName:"Stack...
    method manualBreakpointSetSucceeded (line 1) | manualBreakpointSetSucceeded(e){this.sendEvent({eventName:"ManualBreak...
    method stackTraceFrameClicked (line 1) | stackTraceFrameClicked(e){this.sendEvent({eventName:"StackTraceFrameCl...
    method panelShown (line 1) | panelShown(e,r){}
    method panelShownInLocation (line 1) | panelShownInLocation(e,r){this.sendEvent({eventName:"PanelShown",param...
    method #u (line 1) | #u(e){return{...e,...{timestamp:performance.timeOrigin+performance.now...
  function Q (line 1) | function Q(e){const{url:r}=e;return"http"===e.scheme||"https"===e.scheme...
  function Y (line 1) | function Y(e,r){if(r instanceof Error){return[`${e}: ${r.message}`,r]}co...
  class me (line 1) | class me{#m;#g;#p;constructor(){this.#m=!1,this.#g=!1,this.#p=""}panelSh...
    method constructor (line 1) | constructor(){this.#m=!1,this.#g=!1,this.#p=""}
    method panelShown (line 1) | panelShown(e,r){const t=Z[e]||0;f.recordEnumeratedHistogram("DevTools....
    method panelShownInLocation (line 1) | panelShownInLocation(e,r){const t=ee[`${e}-${r}`]||0;f.recordEnumerate...
    method settingsPanelShown (line 1) | settingsPanelShown(e){this.panelShown("settings-"+e)}
    method sourcesPanelFileDebugged (line 1) | sourcesPanelFileDebugged(e){const r=e&&te[e]||te.Unknown;f.recordEnume...
    method sourcesPanelFileOpened (line 1) | sourcesPanelFileOpened(e){const r=e&&te[e]||te.Unknown;f.recordEnumera...
    method networkPanelResponsePreviewOpened (line 1) | networkPanelResponsePreviewOpened(e){const r=e&&te[e]||te.Unknown;f.re...
    method actionTaken (line 1) | actionTaken(e){f.recordEnumeratedHistogram("DevTools.ActionTaken",e,J....
    method panelLoaded (line 1) | panelLoaded(e,r){this.#g||e!==this.#p||(this.#g=!0,requestAnimationFra...
    method setLaunchPanel (line 1) | setLaunchPanel(e){this.#p=e}
    method performanceTraceLoad (line 1) | performanceTraceLoad(e){f.recordPerformanceHistogram("DevTools.TraceLo...
    method keybindSetSettingChanged (line 1) | keybindSetSettingChanged(e){const r=ne[e]||0;f.recordEnumeratedHistogr...
    method keyboardShortcutFired (line 1) | keyboardShortcutFired(e){const r=oe[e]||oe.OtherShortcut;f.recordEnume...
    method issuesPanelOpenedFrom (line 1) | issuesPanelOpenedFrom(e){f.recordEnumeratedHistogram("DevTools.IssuesP...
    method issuesPanelIssueExpanded (line 1) | issuesPanelIssueExpanded(e){if(void 0===e)return;const r=ie[e];void 0!...
    method issuesPanelResourceOpened (line 1) | issuesPanelResourceOpened(e,r){const t=ae[e+r];void 0!==t&&f.recordEnu...
    method issueCreated (line 1) | issueCreated(e){const r=de[e];void 0!==r&&f.recordEnumeratedHistogram(...
    method experimentEnabledAtLaunch (line 1) | experimentEnabledAtLaunch(e){const r=se[e];void 0!==r&&f.recordEnumera...
    method navigationSettingAtFirstTimelineLoad (line 1) | navigationSettingAtFirstTimelineLoad(e){f.recordEnumeratedHistogram("D...
    method experimentDisabledAtLaunch (line 1) | experimentDisabledAtLaunch(e){const r=se[e];void 0!==r&&f.recordEnumer...
    method experimentChanged (line 1) | experimentChanged(e,r){const t=se[e];if(void 0===t)return;const n=r?"D...
    method developerResourceLoaded (line 1) | developerResourceLoaded(e){e>=8||f.recordEnumeratedHistogram("DevTools...
    method developerResourceScheme (line 1) | developerResourceScheme(e){e>=9||f.recordEnumeratedHistogram("DevTools...
    method language (line 1) | language(e){const r=ce[e];void 0!==r&&f.recordEnumeratedHistogram("Dev...
    method syncSetting (line 1) | syncSetting(e){f.getSyncInformation((r=>{let t=1;r.isSyncActive&&!r.ar...
    method recordingAssertion (line 1) | recordingAssertion(e){f.recordEnumeratedHistogram("DevTools.RecordingA...
    method recordingToggled (line 1) | recordingToggled(e){f.recordEnumeratedHistogram("DevTools.RecordingTog...
    method recordingReplayFinished (line 1) | recordingReplayFinished(e){f.recordEnumeratedHistogram("DevTools.Recor...
    method recordingReplaySpeed (line 1) | recordingReplaySpeed(e){f.recordEnumeratedHistogram("DevTools.Recordin...
    method recordingReplayStarted (line 1) | recordingReplayStarted(e){f.recordEnumeratedHistogram("DevTools.Record...
    method recordingEdited (line 1) | recordingEdited(e){f.recordEnumeratedHistogram("DevTools.RecordingEdit...
    method recordingExported (line 1) | recordingExported(e){f.recordEnumeratedHistogram("DevTools.RecordingEx...
    method recordingCodeToggled (line 1) | recordingCodeToggled(e){f.recordEnumeratedHistogram("DevTools.Recordin...
    method recordingCopiedToClipboard (line 1) | recordingCopiedToClipboard(e){f.recordEnumeratedHistogram("DevTools.Re...
    method cssHintShown (line 1) | cssHintShown(e){f.recordEnumeratedHistogram("DevTools.CSSHintShown",e,...
    method lighthouseModeRun (line 1) | lighthouseModeRun(e){f.recordEnumeratedHistogram("DevTools.LighthouseM...
    method lighthouseCategoryUsed (line 1) | lighthouseCategoryUsed(e){f.recordEnumeratedHistogram("DevTools.Lighth...
    method swatchActivated (line 1) | swatchActivated(e){f.recordEnumeratedHistogram("DevTools.SwatchActivat...
    method animationPlaybackRateChanged (line 1) | animationPlaybackRateChanged(e){f.recordEnumeratedHistogram("DevTools....
    method animationPointDragged (line 1) | animationPointDragged(e){f.recordEnumeratedHistogram("DevTools.Animati...
    method workspacesPopulated (line 1) | workspacesPopulated(e){f.recordPerformanceHistogram("DevTools.Workspac...
    method visualLoggingProcessingDone (line 1) | visualLoggingProcessingDone(e){f.recordPerformanceHistogram("DevTools....
    method freestylerQueryLength (line 1) | freestylerQueryLength(e){f.recordCountHistogram("DevTools.Freestyler.Q...
    method freestylerEvalResponseSize (line 1) | freestylerEvalResponseSize(e){f.recordCountHistogram("DevTools.Freesty...
  method Action (line 1) | get Action(){return J}
  method DevtoolsExperiments (line 1) | get DevtoolsExperiments(){return se}
  method ElementsSidebarTabCodes (line 1) | get ElementsSidebarTabCodes(){return re}
  method IssueCreated (line 1) | get IssueCreated(){return de}
  method IssueExpanded (line 1) | get IssueExpanded(){return ie}
  method IssueResourceOpened (line 1) | get IssueResourceOpened(){return ae}
  method KeybindSetSettings (line 1) | get KeybindSetSettings(){return ne}
  method KeyboardShortcutAction (line 1) | get KeyboardShortcutAction(){return oe}
  method Language (line 1) | get Language(){return ce}
  method ManifestSectionCodes (line 1) | get ManifestSectionCodes(){return le}
  method MediaTypes (line 1) | get MediaTypes(){return te}
  method PanelCodes (line 1) | get PanelCodes(){return Z}
  method PanelWithLocation (line 1) | get PanelWithLocation(){return ee}

FILE: packages/debugger-frontend/dist/third-party/front_end/core/i18n/i18n.js
  class o (line 1) | class o{locale;lookupClosestDevToolsLocale;constructor(t){this.lookupClo...
    method constructor (line 1) | constructor(t){this.lookupClosestDevToolsLocale=t.lookupClosestDevTool...
    method instance (line 1) | static instance(t={create:!1}){if(!n&&!t.create)throw new Error("No La...
    method removeInstance (line 1) | static removeInstance(){n=null}
    method forceFallbackLocale (line 1) | forceFallbackLocale(){this.locale="en-US"}
    method languageIsSupportedByDevTools (line 1) | languageIsSupportedByDevTools(t){return r(t,this.lookupClosestDevTools...
  function r (line 1) | function r(t,i){const e=new Intl.Locale(t),n=new Intl.Locale(i);return e...
  function s (line 1) | function s(t){let i;return{format:e=>(i||(i=new Intl.NumberFormat(o.inst...
  function S (line 1) | function S(t,i,e={}){return t.getLocalizedStringSetFor(o.instance().loca...
  function x (line 1) | function x(t,i){if(!isFinite(t))return"-";if(i&&t<.1)return T.format(1e3...

FILE: packages/debugger-frontend/dist/third-party/front_end/core/platform/platform.js
  function e (line 1) | function e(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}
  function t (line 1) | function t(r,n,o,i,a,s){if(i<=o)return;const l=function(t,r,n,o,i){const...
  function r (line 1) | function r(e,t,r,n){const o=[];let i=0,a=0;for(;i<e.length&&a<t.length;)...
  function n (line 1) | function n(e,t,r,n,o){let i=n||0,a=void 0!==o?o:e.length;for(;i<a;){cons...
  function o (line 1) | function o(e,t,r){const n="END"===r;if(0===e.length)return null;let o=0,...
  function t (line 1) | function t(e){return(e>9?"":"0")+e}
  class p (line 1) | class p{map=new Map;set(e,t){let r=this.map.get(e);r||(r=new Set,this.ma...
    method set (line 1) | set(e,t){let r=this.map.get(e);r||(r=new Set,this.map.set(e,r)),r.add(t)}
    method get (line 1) | get(e){return this.map.get(e)||new Set}
    method has (line 1) | has(e){return this.map.has(e)}
    method hasValue (line 1) | hasValue(e,t){const r=this.map.get(e);return!!r&&r.has(t)}
    method size (line 1) | get size(){return this.map.size}
    method delete (line 1) | delete(e,t){const r=this.get(e);if(!r)return!1;const n=r.delete(t);ret...
    method deleteAll (line 1) | deleteAll(e){this.map.delete(e)}
    method keysArray (line 1) | keysArray(){return[...this.map.keys()]}
    method keys (line 1) | keys(){return this.map.keys()}
    method valuesArray (line 1) | valuesArray(){const e=[];for(const t of this.map.values())e.push(...t....
    method clear (line 1) | clear(){this.map.clear()}
  function m (line 1) | function m(e,t,r=0){for(let n=r;n<e.length;n++)if(t.includes(e[n]))retur...
  function b (line 1) | function b(e,t,r=0){for(let n=r;n<e.length;n++)if(!t.includes(e[n]))retu...
  function t (line 1) | function t(e){return e<26?e+65:e<52?e+71:e<62?e-4:62===e?43:63===e?47:65}
  class R (line 1) | class R extends Uint32Array{getValue(e){return this[e]}setValue(e,t){thi...
    method getValue (line 1) | getValue(e){return this[e]}
    method setValue (line 1) | setValue(e,t){this[e]=t}
    method asUint32ArrayOrFail (line 1) | asUint32ArrayOrFail(){return this}
    method asArrayOrFail (line 1) | asArrayOrFail(){throw new Error("Not an array")}
  class j (line 1) | class j{#e;#t;length;constructor(e,t){this.#e=[],this.length=e;let r=1;f...
    method constructor (line 1) | constructor(e,t){this.#e=[],this.length=e;let r=1;for(;;){r*=2,this.#t...
    method getValue (line 1) | getValue(e){if(e>=0&&e<this.length){const t=this.#t;return this.#e[Mat...
    method setValue (line 1) | setValue(e,t){if(e>=0&&e<this.length){const r=this.#t;this.#e[Math.flo...
    method asUint32ArrayOrFail (line 1) | asUint32ArrayOrFail(){throw new Error("Not a Uint32Array")}
    method asArrayOrFail (line 1) | asArrayOrFail(){throw new Error("Not an array")}
  class F (line 1) | class F extends Array{getValue(e){return this[e]}setValue(e,t){this[e]=t...
    method getValue (line 1) | getValue(e){return this[e]}
    method setValue (line 1) | setValue(e,t){this[e]=t}
    method asUint32ArrayOrFail (line 1) | asUint32ArrayOrFail(){throw new Error("Not a Uint32Array")}
    method asArrayOrFail (line 1) | asArrayOrFail(){return this}
  class $ (line 1) | class $ extends Uint8Array{constructor(e){super("number"==typeof e?Math....
    method constructor (line 1) | constructor(e){super("number"==typeof e?Math.ceil(e/8):e)}
    method getBit (line 1) | getBit(e){return 0!==(this[e>>3]&1<<(7&e))}
    method setBit (line 1) | setBit(e){this[e>>3]|=1<<(7&e)}
    method clearBit (line 1) | clearBit(e){this[e>>3]&=~(1<<(7&e))}
    method previous (line 1) | previous(e){for(;e!==e>>3<<3;)if(--e,this.getBit(e))return e;let t=(e>...
  function V (line 1) | function V(e,t){if(null==e)throw new Error(`Expected given value to not ...
  function k (line 1) | function k(e,t){throw new Error(t)}
  function D (line 1) | function D(e){return e}
  class K (line 1) | class K extends Error{message;constructor(e){super(e),this.message=e}}
    method constructor (line 1) | constructor(e){super(e),this.message=e}

FILE: packages/debugger-frontend/dist/third-party/front_end/core/protocol_client/protocol_client.js
  class n (line 1) | class n{static patch(i){!function i(o,r){o.url&&n.isPlatformPath(o.url,t...
    method patch (line 1) | static patch(i){!function i(o,r){o.url&&n.isPlatformPath(o.url,t.Platf...
    method isPlatformPath (line 1) | static isPlatformPath(e,t){if(t){return/^([a-z]:[\/\\]|\\\\)/i.test(e)...
  class l (line 1) | class l{agentPrototypes=new Map;#e=!1;#t=new Map;typeMap=new Map;enumMap...
    method getOrCreateEventParameterNamesForDomain (line 1) | getOrCreateEventParameterNamesForDomain(e){let t=this.#t.get(e);return...
    method getOrCreateEventParameterNamesForDomainForTesting (line 1) | getOrCreateEventParameterNamesForDomainForTesting(e){return this.getOr...
    method getEventParameterNames (line 1) | getEventParameterNames(){return this.#t}
    method reportProtocolError (line 1) | static reportProtocolError(e,t){console.error(e+": "+JSON.stringify(t))}
    method reportProtocolWarning (line 1) | static reportProtocolWarning(e,t){console.warn(e+": "+JSON.stringify(t))}
    method isInitialized (line 1) | isInitialized(){return this.#e}
    method agentPrototype (line 1) | agentPrototype(e){let t=this.agentPrototypes.get(e);return t||(t=new y...
    method registerCommand (line 1) | registerCommand(e,t,n,i){const[o,r]=s(e);this.agentPrototype(o).regist...
    method registerEnum (line 1) | registerEnum(e,t){const[n,i]=s(e);globalThis.Protocol[n]||(globalThis....
    method registerType (line 1) | registerType(e,t){this.typeMap.set(e,t),this.#e=!0}
    method registerEvent (line 1) | registerEvent(e,t){const n=e.split(".")[0];this.getOrCreateEventParame...
  class m (line 1) | class m{#n;#i=1;#o=0;#r=new Set;#a=new Map;#s=[];constructor(e){this.#n=...
    method constructor (line 1) | constructor(e){this.#n=e,c.deprecatedRunAfterPendingDispatches=this.de...
    method registerSession (line 1) | registerSession(e,t,n){if(n)for(const e of this.#a.values())if(e.proxy...
    method unregisterSession (line 1) | unregisterSession(e){const t=this.#a.get(e);if(t){for(const e of t.cal...
    method getTargetBySessionId (line 1) | getTargetBySessionId(e){const t=this.#a.get(e||"");return t?t.target:n...
    method nextMessageId (line 1) | nextMessageId(){return this.#i++}
    method connection (line 1) | connection(){return this.#n}
    method sendMessage (line 1) | sendMessage(e,t,n,i,o){const r=this.nextMessageId(),a={id:r,method:n};...
    method sendRawMessageForTesting (line 1) | sendRawMessageForTesting(e,t,n,i=""){const o=e.split(".")[0];this.send...
    method onMessage (line 1) | onMessage(e){if(c.dumpProtocol&&c.dumpProtocol("backend: "+("string"==...
    method hasOutstandingNonLongPollingRequests (line 1) | hasOutstandingNonLongPollingRequests(){return this.#o-this.#r.size>0}
    method deprecatedRunAfterPendingDispatches (line 1) | deprecatedRunAfterPendingDispatches(e){e&&this.#s.push(e),window.setTi...
    method executeAfterPendingDispatches (line 1) | executeAfterPendingDispatches(){if(!this.hasOutstandingNonLongPollingR...
    method dispatchConnectionError (line 1) | static dispatchConnectionError(e,t){const n={message:`Connection is cl...
    method dispatchUnregisterSessionError (line 1) | static dispatchUnregisterSessionError({callback:e,method:t}){const n={...
  class y (line 1) | class y{replyArgs;description="";metadata;domain;target;constructor(e){t...
    method constructor (line 1) | constructor(e){this.replyArgs={},this.domain=e,this.metadata={}}
    method registerCommand (line 1) | registerCommand(e,t,n,i){const o=p(this.domain,e);this[e]=function(......
    method prepareParameters (line 1) | prepareParameters(e,t,n,i){const o={};let r=!1;for(const a of t){const...
    method sendMessageToBackendPromise (line 1) | sendMessageToBackendPromise(e,t,n){let i;const s=this.prepareParameter...
    method invoke (line 1) | invoke(e,t){return new Promise((n=>{const i=(t,i)=>{t&&!c.suppressRequ...
  class g (line 1) | class g{#p;#l=[];constructor(e){this.#p=e}addDomainDispatcher(e){this.#l...
    method constructor (line 1) | constructor(e){this.#p=e}
    method addDomainDispatcher (line 1) | addDomainDispatcher(e){this.#l.push(e)}
    method removeDomainDispatcher (line 1) | removeDomainDispatcher(e){const t=this.#l.indexOf(e);-1!==t&&this.#l.s...
    method dispatch (line 1) | dispatch(e,t){if(this.#l.length)if(this.#p.has(t.method))for(let n=0;n...
  method constructor (line 1) | constructor(){}
  method setOnMessage (line 1) | setOnMessage(e){}
  method setOnDisconnect (line 1) | setOnDisconnect(e){}
  method sendRawMessage (line 1) | sendRawMessage(e){}
  method disconnect (line 1) | disconnect(){throw new Error("not implemented")}
  method setFactory (line 1) | static setFactory(e){d=e}
  method getFactory (line 1) | static getFactory(){return d}
  method constructor (line 1) | constructor(e,t,n,i){if(this.needsNodeJSPatching=e,this.sessionId=n,!t&&...
  method dispatch (line 1) | dispatch(e){const[t,n]=s(e.method),i=this.#l.get(t);i?i.dispatch(n,e):l....
  method dispose (line 1) | dispose(e){this.routerInternal&&(this.routerInternal.unregisterSession(t...
  method isDisposed (line 1) | isDisposed(){return!this.routerInternal}
  method markAsNodeJSForTest (line 1) | markAsNodeJSForTest(){this.needsNodeJSPatching=!0}
  method router (line 1) | router(){return this.routerInternal}
  method getAgent (line 1) | getAgent(e){const t=this.#d.get(e);if(!t)throw new Error("Accessing unde...
  method accessibilityAgent (line 1) | accessibilityAgent(){return this.getAgent("Accessibility")}
  method animationAgent (line 1) | animationAgent(){return this.getAgent("Animation")}
  method auditsAgent (line 1) | auditsAgent(){return this.getAgent("Audits")}
  method autofillAgent (line 1) | autofillAgent(){return this.getAgent("Autofill")}
  method browserAgent (line 1) | browserAgent(){return this.getAgent("Browser")}
  method backgroundServiceAgent (line 1) | backgroundServiceAgent(){return this.getAgent("BackgroundService")}
  method cacheStorageAgent (line 1) | cacheStorageAgent(){return this.getAgent("CacheStorage")}
  method cssAgent (line 1) | cssAgent(){return this.getAgent("CSS")}
  method debuggerAgent (line 1) | debuggerAgent(){return this.getAgent("Debugger")}
  method deviceOrientationAgent (line 1) | deviceOrientationAgent(){return this.getAgent("DeviceOrientation")}
  method domAgent (line 1) | domAgent(){return this.getAgent("DOM")}
  method domdebuggerAgent (line 1) | domdebuggerAgent(){return this.getAgent("DOMDebugger")}
  method domsnapshotAgent (line 1) | domsnapshotAgent(){return this.getAgent("DOMSnapshot")}
  method domstorageAgent (line 1) | domstorageAgent(){return this.getAgent("DOMStorage")}
  method emulationAgent (line 1) | emulationAgent(){return this.getAgent("Emulation")}
  method eventBreakpointsAgent (line 1) | eventBreakpointsAgent(){return this.getAgent("EventBreakpoints")}
  method extensionsAgent (line 1) | extensionsAgent(){return this.getAgent("Extensions")}
  method fetchAgent (line 1) | fetchAgent(){return this.getAgent("Fetch")}
  method heapProfilerAgent (line 1) | heapProfilerAgent(){return this.getAgent("HeapProfiler")}
  method indexedDBAgent (line 1) | indexedDBAgent(){return this.getAgent("IndexedDB")}
  method inputAgent (line 1) | inputAgent(){return this.getAgent("Input")}
  method ioAgent (line 1) | ioAgent(){return this.getAgent("IO")}
  method inspectorAgent (line 1) | inspectorAgent(){return this.getAgent("Inspector")}
  method layerTreeAgent (line 1) | layerTreeAgent(){return this.getAgent("LayerTree")}
  method logAgent (line 1) | logAgent(){return this.getAgent("Log")}
  method mediaAgent (line 1) | mediaAgent(){return this.getAgent("Media")}
  method memoryAgent (line 1) | memoryAgent(){return this.getAgent("Memory")}
  method networkAgent (line 1) | networkAgent(){return this.getAgent("Network")}
  method overlayAgent (line 1) | overlayAgent(){return this.getAgent("Overlay")}
  method pageAgent (line 1) | pageAgent(){return this.getAgent("Page")}
  method preloadAgent (line 1) | preloadAgent(){return this.getAgent("Preload")}
  method profilerAgent (line 1) | profilerAgent(){return this.getAgent("Profiler")}
  method performanceAgent (line 1) | performanceAgent(){return this.getAgent("Performance")}
  method reactNativeApplicationAgent (line 1) | reactNativeApplicationAgent(){return this.getAgent("ReactNativeApplicati...
  method runtimeAgent (line 1) | runtimeAgent(){return this.getAgent("Runtime")}
  method securityAgent (line 1) | securityAgent(){return this.getAgent("Security")}
  method serviceWorkerAgent (line 1) | serviceWorkerAgent(){return this.getAgent("ServiceWorker")}
  method storageAgent (line 1) | storageAgent(){return this.getAgent("Storage")}
  method systemInfo (line 1) | systemInfo(){return this.getAgent("SystemInfo")}
  method targetAgent (line 1) | targetAgent(){return this.getAgent("Target")}
  method tracingAgent (line 1) | tracingAgent(){return this.getAgent("Tracing")}
  method webAudioAgent (line 1) | webAudioAgent(){return this.getAgent("WebAudio")}
  method webAuthnAgent (line 1) | webAuthnAgent(){return this.getAgent("WebAuthn")}
  method registerDispatcher (line 1) | registerDispatcher(e,t){const n=this.#l.get(e);n&&n.addDomainDispatcher(t)}
  method unregisterDispatcher (line 1) | unregisterDispatcher(e,t){const n=this.#l.get(e);n&&n.removeDomainDispat...
  method registerAccessibilityDispatcher (line 1) | registerAccessibilityDispatcher(e){this.registerDispatcher("Accessibilit...
  method registerAutofillDispatcher (line 1) | registerAutofillDispatcher(e){this.registerDispatcher("Autofill",e)}
  method registerAnimationDispatcher (line 1) | registerAnimationDispatcher(e){this.registerDispatcher("Animation",e)}
  method registerAuditsDispatcher (line 1) | registerAuditsDispatcher(e){this.registerDispatcher("Audits",e)}
  method registerCSSDispatcher (line 1) | registerCSSDispatcher(e){this.registerDispatcher("CSS",e)}
  method registerBackgroundServiceDispatcher (line 1) | registerBackgroundServiceDispatcher(e){this.registerDispatcher("Backgrou...
  method registerDebuggerDispatcher (line 1) | registerDebuggerDispatcher(e){this.registerDispatcher("Debugger",e)}
  method unregisterDebuggerDispatcher (line 1) | unregisterDebuggerDispatcher(e){this.unregisterDispatcher("Debugger",e)}
  method registerDOMDispatcher (line 1) | registerDOMDispatcher(e){this.registerDispatcher("DOM",e)}
  method registerDOMStorageDispatcher (line 1) | registerDOMStorageDispatcher(e){this.registerDispatcher("DOMStorage",e)}
  method registerFetchDispatcher (line 1) | registerFetchDispatcher(e){this.registerDispatcher("Fetch",e)}
  method registerHeapProfilerDispatcher (line 1) | registerHeapProfilerDispatcher(e){this.registerDispatcher("HeapProfiler"...
  method registerInspectorDispatcher (line 1) | registerInspectorDispatcher(e){this.registerDispatcher("Inspector",e)}
  method registerLayerTreeDispatcher (line 1) | registerLayerTreeDispatcher(e){this.registerDispatcher("LayerTree",e)}
  method registerLogDispatcher (line 1) | registerLogDispatcher(e){this.registerDispatcher("Log",e)}
  method registerMediaDispatcher (line 1) | registerMediaDispatcher(e){this.registerDispatcher("Media",e)}
  method registerNetworkDispatcher (line 1) | registerNetworkDispatcher(e){this.registerDispatcher("Network",e)}
  method registerOverlayDispatcher (line 1) | registerOverlayDispatcher(e){this.registerDispatcher("Overlay",e)}
  method registerPageDispatcher (line 1) | registerPageDispatcher(e){this.registerDispatcher("Page",e)}
  method registerPreloadDispatcher (line 1) | registerPreloadDispatcher(e){this.registerDispatcher("Preload",e)}
  method registerProfilerDispatcher (line 1) | registerProfilerDispatcher(e){this.registerDispatcher("Profiler",e)}
  method registerReactNativeApplicationDispatcher (line 1) | registerReactNativeApplicationDispatcher(e){this.registerDispatcher("Rea...
  method registerRuntimeDispatcher (line 1) | registerRuntimeDispatcher(e){this.registerDispatcher("Runtime",e)}
  method registerSecurityDispatcher (line 1) | registerSecurityDispatcher(e){this.registerDispatcher("Security",e)}
  method registerServiceWorkerDispatcher (line 1) | registerServiceWorkerDispatcher(e){this.registerDispatcher("ServiceWorke...
  method registerStorageDispatcher (line 1) | registerStorageDispatcher(e){this.registerDispatcher("Storage",e)}
  method registerTargetDispatcher (line 1) | registerTargetDispatcher(e){this.registerDispatcher("Target",e)}
  method registerTracingDispatcher (line 1) | registerTracingDispatcher(e){this.registerDispatcher("Tracing",e)}
  method registerWebAudioDispatcher (line 1) | registerWebAudioDispatcher(e){this.registerDispatcher("WebAudio",e)}
  method registerWebAuthnDispatcher (line 1) | registerWebAuthnDispatcher(e){this.registerDispatcher("WebAuthn",e)}
  method getNeedsNodeJSPatching (line 1) | getNeedsNodeJSPatching(){return this.needsNodeJSPatching}

FILE: packages/debugger-frontend/dist/third-party/front_end/core/rn_experiments/rn_experiments.js
  class n (line 1) | class n{name;title;unstable;docLink;feedbackLink;enabledByDefault;constr...
    method constructor (line 1) | constructor(e){this.name=e.name,this.title=e.title,this.unstable=e.uns...
  method register (line 1) | register(e){if(i.didInitializeExperiments)throw new Error("Experiments m...
  method enableExperimentsByDefault (line 1) | enableExperimentsByDefault(e){if(i.didInitializeExperiments)throw new Er...
  method copyInto (line 1) | copyInto(e,t=""){for(const[n,r]of this.#e)e.register(n,t+r.title,r.unsta...

FILE: packages/debugger-frontend/dist/third-party/front_end/core/root/root.js
  function i (line 1) | function i(){return window.location.pathname}
  function a (line 1) | function a(e){return["node_app","js_app"].some((t=>e.includes(t)))}
  class o (line 1) | class o{constructor(){}static instance(e={forceNew:null}){const{forceNew...
    method constructor (line 1) | constructor(){}
    method instance (line 1) | static instance(e={forceNew:null}){const{forceNew:t}=e;return n&&!t||(...
    method removeInstance (line 1) | static removeInstance(){n=void 0}
    method queryParam (line 1) | static queryParam(e){return t.get(e)}
    method setQueryParamForTesting (line 1) | static setQueryParamForTesting(e,n){t.set(e,n)}
    method isNode (line 1) | static isNode(){return void 0===r&&(r=a(i())),r}
    method setPlatform (line 1) | static setPlatform(e){s=e}
    method platform (line 1) | static platform(){return s}
    method isDescriptorEnabled (line 1) | static isDescriptorEnabled(e){const{experiment:t}=e;if("*"===t)return!...
    method loadLegacyModule (line 1) | loadLegacyModule(e){console.log("Loading legacy module: "+e);return im...
  class l (line 1) | class l{#e=[];#t=new Set;#n=new Set;#r=new Set;#s=new Set;#i=new c;allCo...
    method allConfigurableExperiments (line 1) | allConfigurableExperiments(){const e=[];for(const t of this.#e)this.#n...
    method register (line 1) | register(t,n,r,s,i){if(this.#t.has(t))throw new Error(`Duplicate regis...
    method isEnabled (line 1) | isEnabled(e){return this.checkExperiment(e),!1!==this.#i.get(e)&&(!(!t...
    method setEnabled (line 1) | setEnabled(e,t){this.checkExperiment(e),this.#i.set(e,t)}
    method enableExperimentsTransiently (line 1) | enableExperimentsTransiently(e){for(const t of e)this.checkExperiment(...
    method enableExperimentsByDefault (line 1) | enableExperimentsByDefault(e){for(const t of e)this.checkExperiment(t)...
    method setServerEnabledExperiments (line 1) | setServerEnabledExperiments(e){for(const t of e)this.checkExperiment(t...
    method enableForTest (line 1) | enableForTest(e){this.checkExperiment(e),this.#n.add(e)}
    method disableForTest (line 1) | disableForTest(e){this.checkExperiment(e),this.#n.delete(e)}
    method clearForTest (line 1) | clearForTest(){this.#e=[],this.#t.clear(),this.#n.clear(),this.#r.clea...
    method cleanUpStaleExperiments (line 1) | cleanUpStaleExperiments(){this.#i.cleanUpStaleExperiments(this.#t)}
    method checkExperiment (line 1) | checkExperiment(e){if(!this.#t.has(e))throw new Error(`Unknown experim...
  class c (line 1) | class c{#e={};constructor(){try{const e=self.localStorage?.getItem("expe...
    method constructor (line 1) | constructor(){try{const e=self.localStorage?.getItem("experiments");e&...
    method get (line 1) | get(e){return this.#e[e]}
    method set (line 1) | set(e,t){this.#e[e]=t,this.#a()}
    method cleanUpStaleExperiments (line 1) | cleanUpStaleExperiments(e){for(const[t]of Object.entries(this.#e))e.ha...
    method #a (line 1) | #a(){self.localStorage?.setItem("experiments",JSON.stringify(this.#e))}
  class m (line 1) | class m{name;title;unstable;docLink;feedbackLink;#e;constructor(e,t,n,r,...
    method constructor (line 1) | constructor(e,t,n,r,s,i){this.name=t,this.title=n,this.unstable=r,this...
    method isEnabled (line 1) | isEnabled(){return this.#e.isEnabled(this.name)}
    method setEnabled (line 1) | setEnabled(e){this.#e.setEnabled(this.name,e)}
  method ConditionName (line 1) | get ConditionName(){return p}
  method GenAiEnterprisePolicyValue (line 1) | get GenAiEnterprisePolicyValue(){return d}
  method HostConfigFreestylerExecutionMode (line 1) | get HostConfigFreestylerExecutionMode(){return u}
  method RNExperimentName (line 1) | get RNExperimentName(){return E}

FILE: packages/debugger-frontend/dist/third-party/front_end/core/sdk/sdk.js
  class h (line 1) | class h extends e.ObjectWrapper.ObjectWrapper{#e;constructor(e){super(),...
    method constructor (line 1) | constructor(e){super(),this.#e=e}
    method target (line 1) | target(){return this.#e}
    method preSuspendModel (line 1) | async preSuspendModel(e){}
    method suspendModel (line 1) | async suspendModel(e){}
    method resumeModel (line 1) | async resumeModel(){}
    method postResumeModel (line 1) | async postResumeModel(){}
    method dispose (line 1) | dispose(){}
    method register (line 1) | static register(e,t){if(t.early&&!t.autostart)throw new Error(`Error r...
    method registeredModels (line 1) | static get registeredModels(){return c}
  class f (line 1) | class f{#t=[];#n=new Map;#r=new Map;#s=new Set;#i=new Set;#o=new Map;#a=...
    method constructor (line 1) | constructor(e,t){this.#a=t;for(let t=0;t<e.length;++t){const n=e[t],r=...
    method isCSSWideKeyword (line 1) | static isCSSWideKeyword(e){return y.includes(e)}
    method isPositionTryOrderKeyword (line 1) | static isPositionTryOrderKeyword(e){return v.includes(e)}
    method sortPrefixesAndCSSWideKeywordsToEnd (line 1) | static sortPrefixesAndCSSWideKeywordsToEnd(e,t){const n=f.isCSSWideKey...
    method allProperties (line 1) | allProperties(){return this.#t}
    method aliasesFor (line 1) | aliasesFor(){return this.#a}
    method nameValuePresets (line 1) | nameValuePresets(e){return e?this.#d:this.#l}
    method isSVGProperty (line 1) | isSVGProperty(e){return e=e.toLowerCase(),this.#i.has(e)}
    method getLonghands (line 1) | getLonghands(e){return this.#n.get(e)||null}
    method getShorthands (line 1) | getShorthands(e){return this.#r.get(e)||null}
    method isColorAwareProperty (line 1) | isColorAwareProperty(e){return E.has(e.toLowerCase())||this.isCustomPr...
    method isFontFamilyProperty (line 1) | isFontFamilyProperty(e){return"font-family"===e.toLowerCase()}
    method isAngleAwareProperty (line 1) | isAngleAwareProperty(e){const t=e.toLowerCase();return E.has(t)||L.has...
    method isGridAreaDefiningProperty (line 1) | isGridAreaDefiningProperty(e){return"grid"===(e=e.toLowerCase())||"gri...
    method isGridColumnNameAwareProperty (line 1) | isGridColumnNameAwareProperty(e){return e=e.toLowerCase(),["grid-colum...
    method isGridRowNameAwareProperty (line 1) | isGridRowNameAwareProperty(e){return e=e.toLowerCase(),["grid-row","gr...
    method isGridAreaNameAwareProperty (line 1) | isGridAreaNameAwareProperty(e){return"grid-area"===(e=e.toLowerCase())}
    method isGridNameAwareProperty (line 1) | isGridNameAwareProperty(e){return this.isGridAreaNameAwareProperty(e)|...
    method isLengthProperty (line 1) | isLengthProperty(e){return"line-height"!==(e=e.toLowerCase())&&(T.has(...
    method isBezierAwareProperty (line 1) | isBezierAwareProperty(e){return e=e.toLowerCase(),M.has(e)||this.isCus...
    method isFontAwareProperty (line 1) | isFontAwareProperty(e){return e=e.toLowerCase(),P.has(e)||this.isCusto...
    method isCustomProperty (line 1) | isCustomProperty(e){return e.startsWith("--")}
    method isShadowProperty (line 1) | isShadowProperty(e){return"box-shadow"===(e=e.toLowerCase())||"text-sh...
    method isStringProperty (line 1) | isStringProperty(e){return"content"===(e=e.toLowerCase())}
    method canonicalPropertyName (line 1) | canonicalPropertyName(e){if(this.isCustomProperty(e))return e;e=e.toLo...
    method isCSSPropertyName (line 1) | isCSSPropertyName(e){return!!((e=e.toLowerCase()).startsWith("--")&&e....
    method isPropertyInherited (line 1) | isPropertyInherited(e){return(e=e.toLowerCase()).startsWith("--")||thi...
    method specificPropertyValues (line 1) | specificPropertyValues(e){const t=e.replace(/^-webkit-/,""),n=this.#o;...
    method getPropertyValues (line 1) | getPropertyValues(t){t=t.toLowerCase();const n=[...this.specificProper...
    method propertyUsageWeight (line 1) | propertyUsageWeight(e){return N.get(e)||N.get(this.canonicalPropertyNa...
    method getValuePreset (line 1) | getValuePreset(e,t){const n=R.get(e);let r=n?n.get(t):null;if(!r)retur...
    method isHighlightPseudoType (line 1) | isHighlightPseudoType(e){return"highlight"===e||"selection"===e||"targ...
  function S (line 1) | function S(){if(!w){w=new f(g,m)}return w}
  class H (line 1) | class H{#h;#u;#g;#p=new Map;#m=0;#f;#b=null;#y;constructor(e,t,n,r,s){th...
    method constructor (line 1) | constructor(e,t,n,r,s){this.#h=e,this.#u=t,this.#g=n,this.#f=r||"Mediu...
    method fromProtocolCookie (line 1) | static fromProtocolCookie(e){const t=new H(e.name,e.value,null,e.prior...
    method key (line 1) | key(){return(this.domain()||"-")+" "+this.name()+" "+(this.path()||"-"...
    method name (line 1) | name(){return this.#h}
    method value (line 1) | value(){return this.#u}
    method type (line 1) | type(){return this.#g}
    method httpOnly (line 1) | httpOnly(){return this.#p.has("http-only")}
    method secure (line 1) | secure(){return this.#p.has("secure")}
    method partitioned (line 1) | partitioned(){return this.#p.has("partitioned")||Boolean(this.partitio...
    method sameSite (line 1) | sameSite(){return this.#p.get("same-site")}
    method partitionKey (line 1) | partitionKey(){return this.#y}
    method setPartitionKey (line 1) | setPartitionKey(e,t){this.#y={topLevelSite:e,hasCrossSiteAncestor:t},t...
    method topLevelSite (line 1) | topLevelSite(){return this.#y?this.#y?.topLevelSite:""}
    method setTopLevelSite (line 1) | setTopLevelSite(e,t){this.setPartitionKey(e,t)}
    method hasCrossSiteAncestor (line 1) | hasCrossSiteAncestor(){return!!this.#y&&this.#y?.hasCrossSiteAncestor}
    method setHasCrossSiteAncestor (line 1) | setHasCrossSiteAncestor(e){this.partitionKey()&&Boolean(this.topLevelS...
    method partitionKeyOpaque (line 1) | partitionKeyOpaque(){return!!this.#y&&this.topLevelSite()===_}
    method setPartitionKeyOpaque (line 1) | setPartitionKeyOpaque(){this.addAttribute("partition-key",_),this.setP...
    method priority (line 1) | priority(){return this.#f}
    method session (line 1) | session(){return!(this.#p.has("expires")||this.#p.has("max-age"))}
    method path (line 1) | path(){return this.#p.get("path")}
    method domain (line 1) | domain(){return this.#p.get("domain")}
    method expires (line 1) | expires(){return this.#p.get("expires")}
    method maxAge (line 1) | maxAge(){return this.#p.get("max-age")}
    method sourcePort (line 1) | sourcePort(){return this.#p.get("source-port")}
    method sourceScheme (line 1) | sourceScheme(){return this.#p.get("source-scheme")}
    method size (line 1) | size(){return this.#m}
    method url (line 1) | url(){if(!this.domain()||!this.path())return null;let e="";const t=thi...
    method setSize (line 1) | setSize(e){this.#m=e}
    method expiresDate (line 1) | expiresDate(e){return this.maxAge()?new Date(e.getTime()+1e3*this.maxA...
    method addAttribute (line 1) | addAttribute(e,t){if(e)if("priority"===e)this.#f=t;else this.#p.set(e,t)}
    method hasAttribute (line 1) | hasAttribute(e){return this.#p.has(e)}
    method getAttribute (line 1) | getAttribute(e){return this.#p.get(e)}
    method setCookieLine (line 1) | setCookieLine(e){this.#b=e}
    method getCookieLine (line 1) | getCookieLine(){return this.#b}
    method matchesSecurityOrigin (line 1) | matchesSecurityOrigin(e){const t=new URL(e).hostname;return H.isDomain...
    method isDomainMatch (line 1) | static isDomainMatch(e,t){return t===e||!(!e||"."!==e[0])&&(e.substr(1...
  class z (line 1) | class z extends l.InspectorBackend.TargetBase{#v;#h;#I=r.DevToolsPath.Em...
    method constructor (line 1) | constructor(t,n,r,s,i,o,a,l,d){switch(super(s===U.NODE,i,o,l),this.#v=...
    method createModels (line 1) | createModels(e){this.#P=!0;const t=Array.from(h.registeredModels.entri...
    method id (line 1) | id(){return this.#C}
    method name (line 1) | name(){return this.#h||this.#w}
    method setName (line 1) | setName(e){this.#h!==e&&(this.#h=e,this.#v.onNameChange(this))}
    method type (line 1) | type(){return this.#g}
    method markAsNodeJSForTest (line 1) | markAsNodeJSForTest(){super.markAsNodeJSForTest(),this.#g=U.NODE}
    method targetManager (line 1) | targetManager(){return this.#v}
    method hasAllCapabilities (line 1) | hasAllCapabilities(e){return(this.#S&e)===e}
    method decorateLabel (line 1) | decorateLabel(e){return this.#g===U.Worker||this.#g===U.ServiceWorker?...
    method parentTarget (line 1) | parentTarget(){return this.#k}
    method outermostTarget (line 1) | outermostTarget(){let e=null,t=this;do{t.type()!==U.TAB&&t.type()!==U....
    method dispose (line 1) | dispose(e){super.dispose(e),this.#v.removeTarget(this);for(const e of ...
    method model (line 1) | model(e){if(!this.#x.get(e)){const t=h.registeredModels.get(e);if(void...
    method models (line 1) | models(){return this.#x}
    method inspectedURL (line 1) | inspectedURL(){return this.#I}
    method setInspectedURL (line 1) | setInspectedURL(t){this.#I=t;const n=e.ParsedURL.ParsedURL.fromString(...
    method hasCrashed (line 1) | hasCrashed(){return this.#T}
    method setHasCrashed (line 1) | setHasCrashed(e){const t=this.#T;this.#T=e,t&&!e&&this.resume()}
    method suspend (line 1) | async suspend(e){this.#R||(this.#R=!0,this.#T||(await Promise.all(Arra...
    method resume (line 1) | async resume(){this.#R&&(this.#R=!1,this.#T||(await Promise.all(Array....
    method suspended (line 1) | suspended(){return this.#R}
    method updateTargetInfo (line 1) | updateTargetInfo(e){this.#M=e}
    method targetInfo (line 1) | targetInfo(){return this.#M}
  method Type (line 1) | get Type(){return U}
  class W (line 1) | class W extends e.ObjectWrapper.ObjectWrapper{#E;#L;#A;#O;#D;#R;#N;#F;#B...
    method constructor (line 1) | constructor(){super(),this.#E=new Set,this.#L=new Set,this.#A=new r.Ma...
    method instance (line 1) | static instance({forceNew:e}={forceNew:!1}){return V&&!e||(V=new W),V}
    method removeInstance (line 1) | static removeInstance(){V=void 0}
    method onInspectedURLChange (line 1) | onInspectedURLChange(e){e===this.#F&&(a.InspectorFrontendHost.Inspecto...
    method onNameChange (line 1) | onNameChange(e){this.dispatchEventToListeners("NameChanged",e)}
    method suspendAllTargets (line 1) | async suspendAllTargets(e){if(this.#R)return;this.#R=!0,this.dispatchE...
    method resumeAllTargets (line 1) | async resumeAllTargets(){if(!this.#R)return;this.#R=!1,this.dispatchEv...
    method allTargetsSuspended (line 1) | allTargetsSuspended(){return this.#R}
    method models (line 1) | models(e,t){const n=[];for(const r of this.#E){if(t?.scoped&&!this.isI...
    method inspectedURL (line 1) | inspectedURL(){const e=this.primaryPageTarget();return e?e.inspectedUR...
    method observeModels (line 1) | observeModels(e,t,n){const r=this.models(e,n);this.#O.set(e,t),n?.scop...
    method unobserveModels (line 1) | unobserveModels(e,t){this.#O.delete(e,t),this.#D.delete(t)}
    method modelAdded (line 1) | modelAdded(e,t,n,r){for(const e of this.#O.get(t).values())this.#D.has...
    method modelRemoved (line 1) | modelRemoved(e,t,n,r){for(const e of this.#O.get(t).values())this.#D.h...
    method addModelListener (line 1) | addModelListener(e,t,n,r,s){const i=e=>{s?.scoped&&!this.isInScope(e)|...
    method removeModelListener (line 1) | removeModelListener(e,t,n,r){if(!this.#A.has(t))return;let s=null;for(...
    method observeTargets (line 1) | observeTargets(e,t){if(this.#L.has(e))throw new Error("Observer can on...
    method unobserveTargets (line 1) | unobserveTargets(e){this.#L.delete(e),this.#D.delete(e)}
    method createTarget (line 1) | createTarget(e,t,n,r,s,i,o,a){const l=new z(this,e,t,n,r,s||"",this.#R...
    method removeTarget (line 1) | removeTarget(e){if(!this.#E.has(e))return;const t=this.isInScope(e);th...
    method targets (line 1) | targets(){return[...this.#E]}
    method targetById (line 1) | targetById(e){return this.targets().find((t=>t.id()===e))||null}
    method rootTarget (line 1) | rootTarget(){return 0===this.#E.size?null:this.#E.values().next().valu...
    method primaryPageTarget (line 1) | primaryPageTarget(){let e=this.rootTarget();return e?.type()===U.TAB&&...
    method browserTarget (line 1) | browserTarget(){return this.#N}
    method maybeAttachInitialTarget (line 1) | async maybeAttachInitialTarget(){if(!Boolean(o.Runtime.Runtime.queryPa...
    method clearAllTargetsForTest (line 1) | clearAllTargetsForTest(){this.#E.clear()}
    method isInScope (line 1) | isInScope(e){if(!e)return!1;for(function(e){return"source"in e&&e.sour...
    method setScopeTarget (line 1) | setScopeTarget(e){if(e!==this.#F){for(const e of this.targets())if(thi...
    method addScopeChangeListener (line 1) | addScopeChangeListener(e){this.#_.add(e)}
    method scopeTarget (line 1) | scopeTarget(){return this.#F}
  method targetAdded (line 1) | targetAdded(e){}
  method targetRemoved (line 1) | targetRemoved(e){}
  method modelAdded (line 1) | modelAdded(e){}
  method modelRemoved (line 1) | modelRemoved(e){}
  class Z (line 1) | class Z extends h{dispatcher;fetchDispatcher;#H;#U;constructor(t){super(...
    method constructor (line 1) | constructor(t){super(t),this.dispatcher=new le(this),this.fetchDispatc...
    method forRequest (line 1) | static forRequest(e){return J.get(e)||null}
    method canReplayRequest (line 1) | static canReplayRequest(t){return Boolean(J.get(t))&&Boolean(t.backend...
    method replayRequest (line 1) | static replayRequest(e){const t=J.get(e),n=e.backendRequestId();t&&n&&...
    method searchInRequest (line 1) | static async searchInRequest(e,n,r,s){const i=Z.forRequest(e),o=e.back...
    method requestContentData (line 1) | static async requestContentData(n){if(n.resourceType()===e.ResourceTyp...
    method streamResponseBody (line 1) | static async streamResponseBody(e){if(e.finished)return{error:"Streami...
    method requestPostData (line 1) | static async requestPostData(e){const t=Z.forRequest(e);if(!t)return c...
    method connectionType (line 1) | static connectionType(e){if(!e.download&&!e.upload)return"none";try{co...
    method lowercaseHeaders (line 1) | static lowercaseHeaders(e){const t={};for(const n in e)t[n.toLowerCase...
    method requestForURL (line 1) | requestForURL(e){return this.dispatcher.requestForURL(e)}
    method requestForId (line 1) | requestForId(e){return this.dispatcher.requestForId(e)}
    method requestForLoaderId (line 1) | requestForLoaderId(e){return this.dispatcher.requestForLoaderId(e)}
    method cacheDisabledSettingChanged (line 1) | cacheDisabledSettingChanged({data:e}){this.#H.invoke_setCacheDisabled(...
    method cookieControlFlagsSettingChanged (line 1) | cookieControlFlagsSettingChanged(){const t=Boolean(e.Settings.Settings...
    method dispose (line 1) | dispose(){e.Settings.Settings.instance().moduleSetting("cache-disabled...
    method bypassServiceWorkerChanged (line 1) | bypassServiceWorkerChanged(){this.#H.invoke_setBypassServiceWorker({by...
    method getSecurityIsolationStatus (line 1) | async getSecurityIsolationStatus(e){const t=await this.#H.invoke_getSe...
    method enableReportingApi (line 1) | async enableReportingApi(e=!0){return await this.#H.invoke_enableRepor...
    method loadNetworkResource (line 1) | async loadNetworkResource(e,t,n){const r=await this.#H.invoke_loadNetw...
    method clearRequests (line 1) | clearRequests(){this.dispatcher.clearRequests()}
  class ae (line 1) | class ae{#q;#z;constructor(e,t){this.#q=e,this.#z=t}requestPaused({reque...
    method constructor (line 1) | constructor(e,t){this.#q=e,this.#z=t}
    method requestPaused (line 1) | requestPaused({requestId:e,request:t,resourceType:n,responseStatusCode...
    method authRequired (line 1) | authRequired({}){}
  class le (line 1) | class le{#z;#j=new Map;#V=new Map;#W=new Map;#G=new Map;#K=new Map;const...
    method constructor (line 1) | constructor(e){this.#z=e,ce.instance().addEventListener("RequestInterc...
    method #Q (line 1) | #Q(e){const t=this.requestForId(e.data);t&&t.setWasIntercepted(!0)}
    method headersMapToHeadersArray (line 1) | headersMapToHeadersArray(e){const t=[];for(const n in e){const r=e[n]....
    method updateNetworkRequestWithRequest (line 1) | updateNetworkRequestWithRequest(e,t){e.requestMethod=t.method,e.setReq...
    method updateNetworkRequestWithResponse (line 1) | updateNetworkRequestWithResponse(t,n){n.url&&t.url()!==n.url&&t.setUrl...
    method requestForId (line 1) | requestForId(e){return this.#j.get(e)||null}
    method requestForURL (line 1) | requestForURL(e){return this.#V.get(e)||null}
    method requestForLoaderId (line 1) | requestForLoaderId(e){return this.#W.get(e)||null}
    method resourceChangedPriority (line 1) | resourceChangedPriority({requestId:e,newPriority:t}){const n=this.#j.g...
    method signedExchangeReceived (line 1) | signedExchangeReceived({requestId:t,info:n}){let r=this.#j.get(t);(r||...
    method requestWillBeSent (line 1) | requestWillBeSent({requestId:t,loaderId:n,documentURL:r,request:s,time...
    method requestServedFromCache (line 1) | requestServedFromCache({requestId:e}){const t=this.#j.get(e);t&&t.setF...
    method responseReceived (line 1) | responseReceived({requestId:t,loaderId:n,timestamp:r,type:s,response:i...
    method dataReceived (line 1) | dataReceived(e){let t=this.#j.get(e.requestId);t||(t=this.maybeAdoptMa...
    method loadingFinished (line 1) | loadingFinished({requestId:e,timestamp:t,encodedDataLength:n}){let r=t...
    method loadingFailed (line 1) | loadingFailed({requestId:t,timestamp:n,type:r,errorText:s,canceled:i,b...
    method webSocketCreated (line 1) | webSocketCreated({requestId:t,url:n,initiator:r}){const s=Ri.createFor...
    method webSocketWillSendHandshakeRequest (line 1) | webSocketWillSendHandshakeRequest({requestId:e,timestamp:t,wallTime:n,...
    method webSocketHandshakeResponseReceived (line 1) | webSocketHandshakeResponseReceived({requestId:e,timestamp:t,response:n...
    method webSocketFrameReceived (line 1) | webSocketFrameReceived({requestId:e,timestamp:t,response:n}){const r=t...
    method webSocketFrameSent (line 1) | webSocketFrameSent({requestId:e,timestamp:t,response:n}){const r=this....
    method webSocketFrameError (line 1) | webSocketFrameError({requestId:e,timestamp:t,errorMessage:n}){const r=...
    method webSocketClosed (line 1) | webSocketClosed({requestId:e,timestamp:t}){const n=this.#j.get(e);n&&t...
    method eventSourceMessageReceived (line 1) | eventSourceMessageReceived({requestId:e,timestamp:t,eventName:n,eventI...
    method requestIntercepted (line 1) | requestIntercepted({}){}
    method requestWillBeSentExtraInfo (line 1) | requestWillBeSentExtraInfo({requestId:e,associatedCookies:t,headers:n,...
    method responseReceivedEarlyHints (line 1) | responseReceivedEarlyHints({requestId:e,headers:t}){this.getExtraInfoB...
    method responseReceivedExtraInfo (line 1) | responseReceivedExtraInfo({requestId:e,blockedCookies:t,headers:n,head...
    method getExtraInfoBuilder (line 1) | getExtraInfoBuilder(e){let t;return this.#G.has(e)?t=this.#G.get(e):(t...
    method appendRedirect (line 1) | appendRedirect(e,t,n){const r=this.#j.get(e);if(!r)throw new Error(`Co...
    method maybeAdoptMainResourceRequest (line 1) | maybeAdoptMainResourceRequest(e){const t=ce.instance().inflightMainRes...
    method startNetworkRequest (line 1) | startNetworkRequest(e,t){this.#j.set(e.requestId(),e),this.#V.set(e.ur...
    method updateNetworkRequest (line 1) | updateNetworkRequest(e){this.#z.dispatchEventToListeners(ee.RequestUpd...
    method finishNetworkRequest (line 1) | finishNetworkRequest(t,n,r){if(t.endTime=n,t.finished=!0,r>=0){const e...
    method clearRequests (line 1) | clearRequests(){for(const[e,t]of this.#j)t.finished&&this.#j.delete(e)...
    method webTransportCreated (line 1) | webTransportCreated({transportId:t,url:n,timestamp:r,initiator:s}){con...
    method webTransportConnectionEstablished (line 1) | webTransportConnectionEstablished({transportId:e,timestamp:t}){const n...
    method webTransportClosed (line 1) | webTransportClosed({transportId:e,timestamp:t}){const n=this.#j.get(e)...
    method directTCPSocketCreated (line 1) | directTCPSocketCreated(t){const r=0===t.remotePort?t.remoteAddr:`${t.r...
    method directTCPSocketOpened (line 1) | directTCPSocketOpened(e){const t=this.#j.get(e.identifier);if(!t?.dire...
    method directTCPSocketAborted (line 1) | directTCPSocketAborted(e){const t=this.#j.get(e.identifier);t?.directS...
    method directTCPSocketClosed (line 1) | directTCPSocketClosed(e){const t=this.#j.get(e.identifier);t?.directSo...
    method trustTokenOperationDone (line 1) | trustTokenOperationDone(e){const t=this.#j.get(e.requestId);t?t.setTru...
    method subresourceWebBundleMetadataReceived (line 1) | subresourceWebBundleMetadataReceived({requestId:e,urls:t}){const n=thi...
    method subresourceWebBundleMetadataError (line 1) | subresourceWebBundleMetadataError({requestId:e,errorMessage:t}){const ...
    method subresourceWebBundleInnerResponseParsed (line 1) | subresourceWebBundleInnerResponseParsed({innerRequestId:e,bundleReques...
    method subresourceWebBundleInnerResponseError (line 1) | subresourceWebBundleInnerResponseError({innerRequestId:e,errorMessage:...
    method reportingApiReportAdded (line 1) | reportingApiReportAdded(e){this.#z.dispatchEventToListeners(ee.Reporti...
    method reportingApiReportUpdated (line 1) | reportingApiReportUpdated(e){this.#z.dispatchEventToListeners(ee.Repor...
    method reportingApiEndpointsChangedForOrigin (line 1) | reportingApiEndpointsChangedForOrigin(e){this.#z.dispatchEventToListen...
    method policyUpdated (line 1) | policyUpdated(){}
    method createNetworkRequest (line 1) | createNetworkRequest(e,t,n,r,s,i){const o=Ri.create(e,r,s,t,n,i);retur...
  class ce (line 1) | class ce extends e.ObjectWrapper.ObjectWrapper{#$="";#X=null;#J=null;#Y=...
    method constructor (line 1) | constructor(){super();const e=()=>{this.updateBlockedPatterns(),this.d...
    method instance (line 1) | static instance(e={forceNew:null}){const{forceNew:t}=e;return de&&!t||...
    method dispose (line 1) | static dispose(){de=null}
    method patchUserAgentWithChromeVersion (line 1) | static patchUserAgentWithChromeVersion(e){const t=o.Runtime.getChromeV...
    method patchUserAgentMetadataWithChromeVersion (line 1) | static patchUserAgentMetadataWithChromeVersion(e){if(!e.brands)return;...
    method modelAdded (line 1) | modelAdded(e){const t=e.target().networkAgent(),n=e.target().fetchAgen...
    method modelRemoved (line 1) | modelRemoved(e){for(const t of this.inflightMainResourceRequests){Z.fo...
    method isThrottling (line 1) | isThrottling(){return this.#ee.download>=0||this.#ee.upload>=0||this.#...
    method isOffline (line 1) | isOffline(){return!this.#ee.download&&!this.#ee.upload}
    method setNetworkConditions (line 1) | setNetworkConditions(e){this.#ee=e;for(const e of this.#Y)this.updateN...
    method networkConditions (line 1) | networkConditions(){return this.#ee}
    method updateNetworkConditions (line 1) | updateNetworkConditions(e){const t=this.#ee;this.isThrottling()?e.invo...
    method setExtraHTTPHeaders (line 1) | setExtraHTTPHeaders(e){this.#oe=e;for(const e of this.#Y)e.invoke_setE...
    method currentUserAgent (line 1) | currentUserAgent(){return this.#ae?this.#ae:this.#$}
    method updateUserAgentOverride (line 1) | updateUserAgentOverride(){const e=this.currentUserAgent();for(const t ...
    method setUserAgentOverride (line 1) | setUserAgentOverride(e,t){const n=this.#$!==e;this.#$=e,this.#ae?this....
    method userAgentOverride (line 1) | userAgentOverride(){return this.#$}
    method setCustomUserAgentOverride (line 1) | setCustomUserAgentOverride(e,t=null){this.#ae=e,this.#X=t,this.updateU...
    method setCustomAcceptedEncodingsOverride (line 1) | setCustomAcceptedEncodingsOverride(e){this.#J=e,this.updateAcceptedEnc...
    method clearCustomAcceptedEncodingsOverride (line 1) | clearCustomAcceptedEncodingsOverride(){this.#J=null,this.updateAccepte...
    method isAcceptedEncodingOverrideSet (line 1) | isAcceptedEncodingOverrideSet(){return null!==this.#J}
    method updateAcceptedEncodingsOverride (line 1) | updateAcceptedEncodingsOverride(){const e=this.#J;for(const t of this....
    method blockedPatterns (line 1) | blockedPatterns(){return this.#re.get().slice()}
    method blockingEnabled (line 1) | blockingEnabled(){return this.#ne.get()}
    method isBlocking (line 1) | isBlocking(){return Boolean(this.#se.length)}
    method setBlockedPatterns (line 1) | setBlockedPatterns(e){this.#re.set(e)}
    method setBlockingEnabled (line 1) | setBlockingEnabled(e){this.#ne.get()!==e&&this.#ne.set(e)}
    method updateBlockedPatterns (line 1) | updateBlockedPatterns(){const e=[];if(this.#ne.get())for(const t of th...
    method isIntercepting (line 1) | isIntercepting(){return Boolean(this.#ie.size)}
    method setInterceptionHandlerForPatterns (line 1) | setInterceptionHandlerForPatterns(e,t){this.#ie.deleteAll(t);for(const...
    method updateInterceptionPatternsOnNextTick (line 1) | updateInterceptionPatternsOnNextTick(){return this.#te||(this.#te=Prom...
    method updateInterceptionPatterns (line 1) | async updateInterceptionPatterns(){e.Settings.Settings.instance().modu...
    method requestIntercepted (line 1) | async requestIntercepted(e){for(const t of this.#ie.keysArray())if(awa...
    method clearBrowserCache (line 1) | clearBrowserCache(){for(const e of this.#Y)e.invoke_clearBrowserCache()}
    method clearBrowserCookies (line 1) | clearBrowserCookies(){for(const e of this.#Y)e.invoke_clearBrowserCook...
    method getCertificate (line 1) | async getCertificate(e){const t=W.instance().primaryPageTarget();if(!t...
    method loadResource (line 1) | async loadResource(t){const n={},r=this.currentUserAgent();r&&(n["User...
  class he (line 1) | class he{#q;#le;request;resourceType;responseStatusCode;responseHeaders;...
    method constructor (line 1) | constructor(e,t,n,r,s,i,o){this.#q=e,this.#le=!1,this.request=t,this.r...
    method hasResponded (line 1) | hasResponded(){return this.#le}
    method mergeSetCookieHeaders (line 1) | static mergeSetCookieHeaders(e,t){const n=e=>{const t=new Map;for(cons...
    method continueRequestWithContent (line 1) | async continueRequestWithContent(t,n,r,s){this.#le=!0;const i=n?await ...
    method continueRequestWithoutChange (line 1) | continueRequestWithoutChange(){console.assert(!this.#le),this.#le=!0,t...
    method continueRequestWithError (line 1) | continueRequestWithError(e){console.assert(!this.#le),this.#le=!0,this...
    method responseBody (line 1) | async responseBody(){const e=await this.#q.invoke_getResponseBody({req...
    method isRedirect (line 1) | isRedirect(){return void 0!==this.responseStatusCode&&this.responseSta...
    method getMimeTypeAndCharset (line 1) | getMimeTypeAndCharset(){for(const e of this.responseHeaders??[])if("co...
  class ue (line 1) | class ue{#de;#ce;#he;#ue;#ge;#pe;#me;constructor(){this.#de=[],this.#ce=...
    method constructor (line 1) | constructor(){this.#de=[],this.#ce=[],this.#ue=[],this.#he=[],this.#ge...
    method addRequest (line 1) | addRequest(e){this.#de.push(e),this.sync(this.#de.length-1)}
    method addRequestExtraInfo (line 1) | addRequestExtraInfo(e){this.#ce.push(e),this.sync(this.#ce.length-1)}
    method addResponseExtraInfo (line 1) | addResponseExtraInfo(e){this.#he.push(e),this.sync(this.#he.length-1)}
    method setEarlyHintsHeaders (line 1) | setEarlyHintsHeaders(e){this.#ue=e,this.updateFinalRequest()}
    method setWebBundleInfo (line 1) | setWebBundleInfo(e){this.#pe=e,this.updateFinalRequest()}
    method setWebBundleInnerRequestInfo (line 1) | setWebBundleInnerRequestInfo(e){this.#me=e,this.updateFinalRequest()}
    method finished (line 1) | finished(){this.#ge=!0,this.updateFinalRequest()}
    method isFinished (line 1) | isFinished(){return this.#ge}
    method sync (line 1) | sync(e){const t=this.#de[e];if(!t)return;const n=this.#ce[e];n&&(t.add...
    method finalRequest (line 1) | finalRequest(){return this.#ge&&this.#de[this.#de.length-1]||null}
    method updateFinalRequest (line 1) | updateFinalRequest(){if(!this.#ge)return;const e=this.finalRequest();e...
  method stringify (line 1) | stringify(e){const t=e;return JSON.stringify({...t,title:"function"==typ...
  method parse (line 1) | parse(e){const t=JSON.parse(e);return{...t,title:t.i18nTitleKey?X(t.i18n...
  method Events (line 1) | get Events(){return ee}
  class pe (line 1) | class pe{#fe;#be;#ye=new Map;#ve;#Ie;constructor(e){this.#fe=e.fontFamil...
    method constructor (line 1) | constructor(e){this.#fe=e.fontFamily,this.#be=e.fontVariationAxes||[],...
    method getFontFamily (line 1) | getFontFamily(){return this.#fe}
    method getSrc (line 1) | getSrc(){return this.#ve}
    method getFontDisplay (line 1) | getFontDisplay(){return this.#Ie}
    method getVariationAxisByTag (line 1) | getVariationAxisByTag(e){return this.#ye.get(e)}
  class fe (line 1) | class fe{text;node;name;fallback;matching;computedTextCallback;construct...
    method constructor (line 1) | constructor(e,t,n,r,s,i){this.text=e,this.node=t,this.name=n,this.fall...
    method computedText (line 1) | computedText(){return this.computedTextCallback(this,this.matching)}
  class be (line 1) | class be extends(kt(fe)){#we;constructor(e){super(),this.#we=e}matches(e...
    method constructor (line 1) | constructor(e){super(),this.#we=e}
    method matches (line 1) | matches(e,t){const n=e.getChild("Callee"),r=e.getChild("ArgList");if("...
  class ye (line 1) | class ye extends fe{matchedStyles;style;constructor(e,t,n,r,s,i,o){super...
    method constructor (line 1) | constructor(e,t,n,r,s,i,o){super(e,t,n,r,s,(()=>this.resolveVariable()...
    method resolveVariable (line 1) | resolveVariable(){return this.matchedStyles.computeCSSVariable(this.st...
    method fallbackValue (line 1) | fallbackValue(){return 0===this.fallback.length||this.matching.hasUnre...
  class ve (line 1) | class ve extends(kt(ye)){matchedStyles;style;constructor(e,t){super(),th...
    method constructor (line 1) | constructor(e,t){super(),this.matchedStyles=e,this.style=t}
    method matches (line 1) | matches(e,t){const n=new be((()=>null)).matches(e,t);return n?new ye(n...
  class Ie (line 1) | class Ie{text;node;constructor(e,t){this.text=e,this.node=t}}
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
  class we (line 1) | class we extends(kt(Ie)){accepts(){return!0}matches(e,t){return"BinaryEx...
    method accepts (line 1) | accepts(){return!0}
    method matches (line 1) | matches(e,t){return"BinaryExpression"===e.name?new Ie(t.ast.text(e),e)...
  class Se (line 1) | class Se{text;node;computedText;constructor(e,t){this.text=e,this.node=t...
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t,"Comment"===t.name&&(this.com...
    method render (line 1) | render(){const e=document.createElement("span");return e.appendChild(d...
  class ke (line 1) | class ke extends(kt(Se)){accepts(){return!0}matches(e,t){if(!e.firstChil...
    method accepts (line 1) | accepts(){return!0}
    method matches (line 1) | matches(e,t){if(!e.firstChild||"NumberLiteral"===e.name){const n=t.ast...
  class Ce (line 1) | class Ce{text;node;constructor(e,t){this.text=e,this.node=t}computedText...
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
    method computedText (line 1) | computedText(){return this.text}
  class xe (line 1) | class xe extends(kt(Ce)){accepts(e){return S().isAngleAwareProperty(e)}m...
    method accepts (line 1) | accepts(e){return S().isAngleAwareProperty(e)}
    method matches (line 1) | matches(e,t){if("NumberLiteral"!==e.name)return null;const n=e.getChil...
  function Re (line 1) | function Re(e,t){if("NumberLiteral"!==e.type.name)return null;const n=t....
  class Te (line 1) | class Te{text;node;space;color1;color2;constructor(e,t,n,r,s){this.text=...
    method constructor (line 1) | constructor(e,t,n,r,s){this.text=e,this.node=t,this.space=n,this.color...
  class Me (line 1) | class Me extends(kt(Te)){accepts(e){return S().isColorAwareProperty(e)}m...
    method accepts (line 1) | accepts(e){return S().isColorAwareProperty(e)}
    method matches (line 1) | matches(e,t){if("CallExpression"!==e.name||"color-mix"!==t.ast.text(e....
  class Pe (line 1) | class Pe{url;text;node;constructor(e,t,n){this.url=e,this.text=t,this.no...
    method constructor (line 1) | constructor(e,t,n){this.url=e,this.text=t,this.node=n}
  class Ee (line 1) | class Ee extends(kt(Pe)){matches(e,t){if("CallLiteral"!==e.name)return n...
    method matches (line 1) | matches(e,t){if("CallLiteral"!==e.name)return null;const n=e.getChild(...
  class Le (line 1) | class Le{text;node;constructor(e,t){this.text=e,this.node=t}}
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
  class Ae (line 1) | class Ae extends(kt(Le)){matches(e,t){const n=t.ast.text(e);return"CallE...
    method matches (line 1) | matches(e,t){const n=t.ast.text(e);return"CallExpression"===e.name&&"l...
    method accepts (line 1) | accepts(e){return["background","background-image","-webkit-mask-image"...
  class Oe (line 1) | class Oe{text;node;currentColorCallback;computedText;constructor(e,t,n){...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.currentColorCallback=n...
  class De (line 1) | class De extends(kt(Oe)){currentColorCallback;constructor(e){super(),thi...
    method constructor (line 1) | constructor(e){super(),this.currentColorCallback=e}
    method accepts (line 1) | accepts(e){return S().isColorAwareProperty(e)}
    method matches (line 1) | matches(t,n){const r=n.ast.text(t);if("ColorLiteral"===t.name)return n...
  class Ne (line 1) | class Ne{text;node;light;dark;style;constructor(e,t,n,r,s){this.text=e,t...
    method constructor (line 1) | constructor(e,t,n,r,s){this.text=e,this.node=t,this.light=n,this.dark=...
  class Fe (line 1) | class Fe extends(kt(Ne)){style;constructor(e){super(),this.style=e}accep...
    method constructor (line 1) | constructor(e){super(),this.style=e}
    method accepts (line 1) | accepts(e){return S().isColorAwareProperty(e)}
    method matches (line 1) | matches(e,t){if("CallExpression"!==e.name||"light-dark"!==t.ast.text(e...
  class Be (line 1) | class Be{text;node;auto;base;constructor(e,t,n,r){this.text=e,this.node=...
    method constructor (line 1) | constructor(e,t,n,r){this.text=e,this.node=t,this.auto=n,this.base=r}
  class _e (line 1) | class _e extends(kt(Be)){matches(e,t){if("CallExpression"!==e.name||"-in...
    method matches (line 1) | matches(e,t){if("CallExpression"!==e.name||"-internal-auto-base"!==t.a...
  class He (line 1) | class He{text;node;propertyName;constructor(e,t,n){this.text=e,this.node...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.propertyName=n}
  class Ue (line 1) | class Ue extends(kt(He)){static isLinkableNameProperty(e){return["animat...
    method isLinkableNameProperty (line 1) | static isLinkableNameProperty(e){return["animation","animation-name","...
    method matchAnimationNameInShorthand (line 1) | matchAnimationNameInShorthand(e,t){const n=t.ast.text(e);if(!Ue.identi...
    method accepts (line 1) | accepts(e){return Ue.isLinkableNameProperty(e)}
    method matches (line 1) | matches(e,t){const{propertyName:n}=t.ast,r=t.ast.text(e),s=e.parent;if...
  class qe (line 1) | class qe{text;node;constructor(e,t){this.text=e,this.node=t}}
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
  class ze (line 1) | class ze extends(kt(qe)){accepts(e){return S().isBezierAwareProperty(e)}...
    method accepts (line 1) | accepts(e){return S().isBezierAwareProperty(e)}
    method matches (line 1) | matches(e,t){const n=t.ast.text(e),r="ValueName"===e.name&&b.has(n),s=...
  class je (line 1) | class je{text;node;constructor(e,t){this.text=e,this.node=t}}
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
  class Ve (line 1) | class Ve extends(kt(je)){matches(e,t){return"StringLiteral"===e.name?new...
    method matches (line 1) | matches(e,t){return"StringLiteral"===e.name?new je(t.ast.text(e),e):null}
  class We (line 1) | class We{text;node;shadowType;constructor(e,t,n){this.text=e,this.node=t...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.shadowType=n}
  class Ge (line 1) | class Ge extends(kt(We)){accepts(e){return S().isShadowProperty(e)}match...
    method accepts (line 1) | accepts(e){return S().isShadowProperty(e)}
    method matches (line 1) | matches(e,t){if("Declaration"!==e.name)return null;const n=Pt.siblings...
  class Ke (line 1) | class Ke{text;node;constructor(e,t){this.text=e,this.node=t}}
    method constructor (line 1) | constructor(e,t){this.text=e,this.node=t}
  class Qe (line 1) | class Qe extends(kt(Ke)){accepts(e){return S().isFontAwareProperty(e)}ma...
    method accepts (line 1) | accepts(e){return S().isFontAwareProperty(e)}
    method matches (line 1) | matches(e,t){if("Declaration"!==e.name)return null;const n=Pt.siblings...
  class $e (line 1) | class $e{text;node;unit;constructor(e,t,n){this.text=e,this.node=t,this....
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.unit=n}
  class Xe (line 1) | class Xe extends(kt($e)){static LENGTH_UNITS=new Set(["em","ex","ch","ca...
    method matches (line 1) | matches(e,t){if("NumberLiteral"!==e.name)return null;const n=t.ast.tex...
  class Je (line 1) | class Je{text;node;func;args;constructor(e,t,n,r){this.text=e,this.node=...
    method constructor (line 1) | constructor(e,t,n,r){this.text=e,this.node=t,this.func=n,this.args=r}
  class Ye (line 1) | class Ye extends(kt(Je)){matches(e,t){if("CallExpression"!==e.name)retur...
    method matches (line 1) | matches(e,t){if("CallExpression"!==e.name)return null;const n=t.ast.te...
  class Ze (line 1) | class Ze{text;node;isFlex;constructor(e,t,n){this.text=e,this.node=t,thi...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.isFlex=n}
  class et (line 1) | class et extends(kt(Ze)){static FLEX=["flex","inline-flex","block flex",...
    method accepts (line 1) | accepts(e){return"display"===e}
    method matches (line 1) | matches(e,t){if("Declaration"!==e.name)return null;const n=Pt.siblings...
  class tt (line 1) | class tt{text;node;lines;constructor(e,t,n){this.text=e,this.node=t,this...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.lines=n}
  class nt (line 1) | class nt extends(kt(tt)){accepts(e){return S().isGridAreaDefiningPropert...
    method accepts (line 1) | accepts(e){return S().isGridAreaDefiningProperty(e)}
    method matches (line 1) | matches(e,t){if("Declaration"!==e.name||t.hasUnresolvedVars(e))return ...
  class rt (line 1) | class rt{text;node;functionName;constructor(e,t,n){this.text=e,this.node...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.node=t,this.functionName=n}
  class st (line 1) | class st extends(kt(rt)){anchorFunction(e,t){if("CallExpression"!==e.nam...
    method anchorFunction (line 1) | anchorFunction(e,t){if("CallExpression"!==e.name)return null;const n=t...
    method matches (line 1) | matches(e,t){if("VariableName"===e.name){let n=e.parent;return n&&"Arg...
  class it (line 1) | class it{text;matching;node;constructor(e,t,n){this.text=e,this.matching...
    method constructor (line 1) | constructor(e,t,n){this.text=e,this.matching=t,this.node=n}
  class ot (line 1) | class ot extends(kt(it)){accepts(e){return"position-anchor"===e}matches(...
    method accepts (line 1) | accepts(e){return"position-anchor"===e}
    method matches (line 1) | matches(e,t){if("VariableName"!==e.name)return null;const n=t.ast.text...
  class at (line 1) | class at{text;node;property;matchedStyles;constructor(e,t,n,r){this.text...
    method constructor (line 1) | constructor(e,t,n,r){this.text=e,this.node=t,this.property=n,this.matc...
    method resolveProperty (line 1) | resolveProperty(){return this.matchedStyles.resolveGlobalKeyword(this....
    method computedText (line 1) | computedText(){return this.resolveProperty()?.value??null}
  class lt (line 1) | class lt extends(kt(at)){property;matchedStyles;constructor(e,t){super()...
    method constructor (line 1) | constructor(e,t){super(),this.property=e,this.matchedStyles=t}
    method matches (line 1) | matches(e,t){const n=e.parent;if("ValueName"!==e.name||"Declaration"!=...
  class dt (line 1) | class dt{text;node;preamble;fallbacks;constructor(e,t,n,r){this.text=e,t...
    method constructor (line 1) | constructor(e,t,n,r){this.text=e,this.node=t,this.preamble=n,this.fall...
  class ct (line 1) | class ct extends(kt(dt)){accepts(e){return"position-try"===e||"position-...
    method accepts (line 1) | accepts(e){return"position-try"===e||"position-try-fallbacks"===e}
    method matches (line 1) | matches(e,t){if("Declaration"!==e.name)return null;let n=[];const r=Pt...
  function ft (line 1) | function ft(e){return e.split(",").map((e=>e.trim()))}
  function bt (line 1) | function bt(e){return e.replaceAll(/(\/\*(?:.|\s)*?\*\/)/g,"")}
  function vt (line 1) | function vt(e,t){return It(e,e,t)}
  function It (line 1) | function It(e,t,n){return n.substring(e.from,t.to)}
  class wt (line 1) | class wt{propertyValue;rule;tree;trailingNodes;propertyName;constructor(...
    method constructor (line 1) | constructor(e,t,n,r,s=[]){this.propertyName=r,this.propertyValue=e,thi...
    method text (line 1) | text(e){return null===e?"":vt(e??this.tree,this.rule)}
    method textRange (line 1) | textRange(e,t){return It(e,t,this.rule)}
    method subtree (line 1) | subtree(e){return new wt(this.propertyValue,this.rule,e)}
  class St (line 1) | class St{ast;constructor(e){this.ast=e}static walkExcludingSuccessors(e,...
    method constructor (line 1) | constructor(e){this.ast=e}
    method walkExcludingSuccessors (line 1) | static walkExcludingSuccessors(e,...t){const n=new this(e,...t);return...
    method walk (line 1) | static walk(e,...t){const n=new this(e,...t);return"Declaration"===e.t...
    method iterateDeclaration (line 1) | iterateDeclaration(e){if("Declaration"===e.name){if(this.enter(e))for(...
    method iterate (line 1) | iterate(e){for(const t of Pt.siblings(e))t.cursor().iterate(this.enter...
    method iterateExcludingSuccessors (line 1) | iterateExcludingSuccessors(e){e.cursor().iterate(this.enter.bind(this)...
    method enter (line 1) | enter(e){return!0}
    method leave (line 1) | leave(e){}
  function kt (line 1) | function kt(e){return class{matchType=e;accepts(e){return!0}matches(e,t)...
  class Ct (line 1) | class Ct extends St{#Se=[];#ke=new Map;computedText;#Ce(e){return`${e.fr...
    method #Ce (line 1) | #Ce(e){return`${e.from}:${e.to}`}
    method constructor (line 1) | constructor(e,t){super(e),this.computedText=new Rt(e.rule.substring(e....
    method leave (line 1) | leave({node:e}){for(const t of this.#Se){const n=t.matches(e,this);if(...
    method matchText (line 1) | matchText(e){const t=this.#Se.splice(0);this.#Se.push(new ke),this.ite...
    method hasMatches (line 1) | hasMatches(...e){return Boolean(this.#ke.values().find((t=>e.some((e=>...
    method getMatch (line 1) | getMatch(e){return this.#ke.get(this.#Ce(e))}
    method hasUnresolvedVars (line 1) | hasUnresolvedVars(e){return this.hasUnresolvedVarsRange(e,e)}
    method hasUnresolvedVarsRange (line 1) | hasUnresolvedVarsRange(e,t){return this.computedText.hasUnresolvedVars...
    method getComputedText (line 1) | getComputedText(e,t){return this.getComputedTextRange(e,e,t)}
    method getComputedPropertyValueText (line 1) | getComputedPropertyValueText(){const[e,t]=Pt.range(Pt.siblings(Pt.decl...
    method getComputedTextRange (line 1) | getComputedTextRange(e,t,n){return this.computedText.get(e.from-this.a...
  class xt (line 1) | class xt{match;offset;#xe=null;constructor(e,t){this.match=e,this.offset...
    method constructor (line 1) | constructor(e,t){this.match=e,this.offset=t}
    method end (line 1) | get end(){return this.offset+this.length}
    method length (line 1) | get length(){return this.match.text.length}
    method computedText (line 1) | get computedText(){return null===this.#xe&&(this.#xe=this.match.comput...
  class Rt (line 1) | class Rt{#Re=[];text;#Te=!0;constructor(e){this.text=e}clear(){this.#Re....
    method constructor (line 1) | constructor(e){this.text=e}
    method clear (line 1) | clear(){this.#Re.splice(0)}
    method chunkCount (line 1) | get chunkCount(){return this.#Re.length}
    method #Me (line 1) | #Me(){this.#Te||(this.#Re.sort(((e,t)=>e.offset<t.offset?-1:t.offset<e...
    method push (line 1) | push(e,t){if(!function(e){return Boolean(e.computedText)}(e)||t<0||t>=...
    method #Pe (line 1) | *#Pe(e,t){this.#Me();let n=this.#Re.findIndex((t=>t.offset>=e));for(;n...
    method hasUnresolvedVars (line 1) | hasUnresolvedVars(e,t){for(const n of this.#Pe(e,t))if(null===n.comput...
    method #Ee (line 1) | *#Ee(e,t){for(const n of this.#Pe(e,t)){const r=this.text.substring(e,...
    method get (line 1) | get(e,t,n){const r=[],s=e=>{if("string"==typeof e)return e;const t=n?....
  function Tt (line 1) | function Tt(e,t){const n=Array.isArray(e)?e.findLast((e=>e.textContent))...
  function Et (line 1) | function Et(e){return yt.parse(e).topNode.getChild("RuleSet")?.getChild(...
  function Lt (line 1) | function Lt(e,t){const n=At(e);if(!n)return null;const r=`*{${n}: ${t};}...
  function At (line 1) | function At(e){const t=`*{${e}: inherit;}`,n=Et(t);if(!n||n.type.isError...
  function Ot (line 1) | function Ot(e,t,n){const r=Lt(e,t),s=r&&Ct.walk(r,n);return r?.trailingN...
  function t (line 1) | function t(e){const t=[];for(;e;)t.push(e),e=e.nextSibling;return t}
  function n (line 1) | function n(e){return t(e?.firstChild??null)}
  function r (line 1) | function r(e){const t=[];let n=[];for(const r of e)","===r.name?(t.push(...
  class Dt (line 1) | class Dt extends St{#Le=null;#Ae;constructor(e,t){super(e),this.#Ae=t}en...
    method constructor (line 1) | constructor(e,t){super(e),this.#Ae=t}
    method enter (line 1) | enter({node:e}){return!this.#Le&&(!this.#Ae(e)||(this.#Le=this.#Le??e,...
    method find (line 1) | static find(e,t){return Dt.walk(e,t).#Le}
    method findAll (line 1) | static findAll(e,t){const n=[];return Dt.walk(e,(e=>(t(e)&&n.push(e),!...
  method ASTUtils (line 1) | get ASTUtils(){return Pt}
  class Ft (line 1) | class Ft extends e.ObjectWrapper.ObjectWrapper{ownerStyle;index;name;val...
    method constructor (line 1) | constructor(e,n,r,s,i,o,a,l,d,c,h){if(super(),this.ownerStyle=e,this.i...
    method parsePayload (line 1) | static parsePayload(e,t,n){return new Ft(e,t,n.name,n.value,n.importan...
    method parseExpression (line 1) | parseExpression(e,t,n){return this.parsedOk?Ot(this.name,e,this.#Se(t,...
    method parseValue (line 1) | parseValue(e,t){return this.parsedOk?Ot(this.name,this.value,this.#Se(...
    method #Se (line 1) | #Se(e,t){const n=e.propertyMatchers(this.ownerStyle,t);return n.push(n...
    method ensureRanges (line 1) | ensureRanges(){if(this.#De&&this.#Ne)return;const e=this.range,n=this....
    method nameRange (line 1) | nameRange(){return this.ensureRanges(),this.#De}
    method valueRange (line 1) | valueRange(){return this.ensureRanges(),this.#Ne}
    method rebase (line 1) | rebase(e){this.ownerStyle.styleSheetId===e.styleSheetId&&this.range&&(...
    method setActive (line 1) | setActive(e){this.#Oe=e}
    method propertyText (line 1) | get propertyText(){return void 0!==this.text?this.text:""===this.name?...
    method activeInStyle (line 1) | activeInStyle(){return this.#Oe}
    method setText (line 1) | async setText(n,s,i){if(!this.ownerStyle)throw new Error("No ownerStyl...
    method formatStyle (line 1) | static async formatStyle(e,n,r){const s=n.substring(r.length)+n;n&&(n=...
    method detectIndentation (line 1) | detectIndentation(e){const n=e.split("\n");return n.length<2?"":t.Text...
    method setValue (line 1) | setValue(e,t,n,r){const s=this.name+": "+e+(this.important?" !importan...
    method setLocalValue (line 1) | setLocalValue(e){this.value=e,this.dispatchEventToListeners("localValu...
    method setDisabled (line 1) | async setDisabled(e){if(!this.ownerStyle)return!1;if(e===this.disabled...
    method setDisplayedStringForInvalidProperty (line 1) | setDisplayedStringForInvalidProperty(e){this.#Fe=e}
    method getInvalidStringForInvalidProperty (line 1) | getInvalidStringForInvalidProperty(){return this.#Fe}
    method getLonghandProperties (line 1) | getLonghandProperties(){return this.#Be}
  class _t (line 1) | class _t{text="";range;styleSheetId;cssModel;constructor(e){this.cssMode...
    method constructor (line 1) | constructor(e){this.cssModel=e}
    method rebase (line 1) | rebase(e){this.styleSheetId===e.styleSheetId&&this.range&&(e.oldRange....
    method equal (line 1) | equal(e){return!!(this.styleSheetId&&this.range&&e.range)&&(this.style...
    method lineNumberInSource (line 1) | lineNumberInSource(){if(this.range)return this.header()?.lineNumberInS...
    method columnNumberInSource (line 1) | columnNumberInSource(){if(this.range)return this.header()?.columnNumbe...
    method header (line 1) | header(){return this.styleSheetId?this.cssModel.styleSheetHeaderForId(...
    method rawLocation (line 1) | rawLocation(){const e=this.header();if(!e||void 0===this.lineNumberInS...
  class Ut (line 1) | class Ut extends _t{name;physicalAxes;logicalAxes;queriesScrollState;sta...
    method parseContainerQueriesPayload (line 1) | static parseContainerQueriesPayload(e,t){return t.map((t=>new Ut(e,t)))}
    method constructor (line 1) | constructor(e,t){super(e),this.reinitialize(t)}
    method reinitialize (line 1) | reinitialize(e){this.text=e.text,this.range=e.range?t.TextRange.TextRa...
    method active (line 1) | active(){return!0}
    method getContainerForNode (line 1) | async getContainerForNode(e){const t=await this.cssModel.domModel().ge...
  class qt (line 1) | class qt{containerNode;constructor(e){this.containerNode=e}async getCont...
    method constructor (line 1) | constructor(e){this.containerNode=e}
    method getContainerSizeDetails (line 1) | async getContainerSizeDetails(){const e=await this.containerNode.domMo...
  class Wt (line 1) | class Wt extends _t{static parseLayerPayload(e,t){return t.map((t=>new W...
    method parseLayerPayload (line 1) | static parseLayerPayload(e,t){return t.map((t=>new Wt(e,t)))}
    method constructor (line 1) | constructor(e,t){super(e),this.reinitialize(t)}
    method reinitialize (line 1) | reinitialize(e){this.text=e.text,this.range=e.range?t.TextRange.TextRa...
    method active (line 1) | active(){return!0}
  class Kt (line 1) | class Kt{#_e;#He;constructor(e){this.#_e=e.active,this.#He=[];for(let t=...
    method constructor (line 1) | constructor(e){this.#_e=e.active,this.#He=[];for(let t=0;t<e.expressio...
    method parsePayload (line 1) | static parsePayload(e){return new Kt(e)}
    method active (line 1) | active(){return this.#_e}
    method expressions (line 1) | expressions(){return this.#He}
  class Qt (line 1) | class Qt{#u;#Ue;#qe;#Ne;#ze;constructor(e){this.#u=e.value,this.#Ue=e.un...
    method constructor (line 1) | constructor(e){this.#u=e.value,this.#Ue=e.unit,this.#qe=e.feature,this...
    method parsePayload (line 1) | static parsePayload(e){return new Qt(e)}
    method value (line 1) | value(){return this.#u}
    method unit (line 1) | unit(){return this.#Ue}
    method feature (line 1) | feature(){return this.#qe}
    method valueRange (line 1) | valueRange(){return this.#Ne}
    method computedLength (line 1) | computedLength(){return this.#ze}
  class $t (line 1) | class $t extends _t{source;sourceURL;mediaList;static parseMediaArrayPay...
    method parseMediaArrayPayload (line 1) | static parseMediaArrayPayload(e,t){return t.map((t=>new $t(e,t)))}
    method constructor (line 1) | constructor(e,t){super(e),this.reinitialize(t)}
    method reinitialize (line 1) | reinitialize(e){if(this.text=e.text,this.source=e.source,this.sourceUR...
    method active (line 1) | active(){if(!this.mediaList)return!0;for(let e=0;e<this.mediaList.leng...
  class Jt (line 1) | class Jt extends _t{static parseScopesPayload(e,t){return t.map((t=>new ...
    method parseScopesPayload (line 1) | static parseScopesPayload(e,t){return t.map((t=>new Jt(e,t)))}
    method constructor (line 1) | constructor(e,t){super(e),this.reinitialize(t)}
    method reinitialize (line 1) | reinitialize(e){this.text=e.text,this.range=e.range?t.TextRange.TextRa...
    method active (line 1) | active(){return!0}
  class en (line 1) | class en{#je;parentRule;#Ve;styleSheetId;range;cssText;#We=new Map;#Ge=n...
    method constructor (line 1) | constructor(e,t,n,r,s){this.#je=e,this.parentRule=t,this.#Xe(n),this.t...
    method rebase (line 1) | rebase(e){if(this.styleSheetId===e.styleSheetId&&this.range)if(e.oldRa...
    method animationName (line 1) | animationName(){return this.#$e}
    method #Xe (line 1) | #Xe(e){this.styleSheetId=e.styleSheetId,this.range=e.range?t.TextRange...
    method #Je (line 1) | #Je(){if(this.range)return;if(!this.#We.size)return;const e=new Set;fo...
    method #Ze (line 1) | #Ze(){if(this.range)return this.#Ve.filter((function(e){return Boolean...
    method leadingProperties (line 1) | leadingProperties(){return this.#Qe||(this.#Qe=this.#Ze()),this.#Qe}
    method target (line 1) | target(){return this.#je.target()}
    method cssModel (line 1) | cssModel(){return this.#je}
    method #Ye (line 1) | #Ye(){const e=new Map,t=new Set;for(const n of this.#Ve){const r=S(),s...
    method allProperties (line 1) | allProperties(){return this.#Ve}
    method hasActiveProperty (line 1) | hasActiveProperty(e){return this.#Ke.has(e)}
    method getPropertyValue (line 1) | getPropertyValue(e){const t=this.#Ke.get(e);return t?t.value:""}
    method isPropertyImplicit (line 1) | isPropertyImplicit(e){const t=this.#Ke.get(e);return!!t&&t.implicit}
    method propertyAt (line 1) | propertyAt(e){return e<this.allProperties().length?this.allProperties(...
    method pastLastSourcePropertyIndex (line 1) | pastLastSourcePropertyIndex(){for(let e=this.allProperties().length-1;...
    method #et (line 1) | #et(e){const t=this.propertyAt(e);if(t?.range)return t.range.collapseT...
    method newBlankProperty (line 1) | newBlankProperty(e){e=void 0===e?this.pastLastSourcePropertyIndex():e;...
    method setText (line 1) | setText(e,t){return this.range&&this.styleSheetId?this.#je.setStyleTex...
    method insertPropertyAt (line 1) | insertPropertyAt(e,t,n,r){this.newBlankProperty(e).setText(t+": "+n+";...
    method appendProperty (line 1) | appendProperty(e,t,n){this.insertPropertyAt(this.allProperties().lengt...
  method Type (line 1) | get Type(){return Yt}
  class nn (line 1) | class nn extends _t{static parseSupportsPayload(e,t){return t.map((t=>ne...
    method parseSupportsPayload (line 1) | static parseSupportsPayload(e,t){return t.map((t=>new nn(e,t)))}
    method constructor (line 1) | constructor(e,t){super(e),this.reinitialize(t)}
    method reinitialize (line 1) | reinitialize(e){this.text=e.text,this.range=e.range?t.TextRange.TextRa...
    method active (line 1) | active(){return this.#Oe}
  class sn (line 1) | class sn{cssModelInternal;styleSheetId;sourceURL;origin;style;constructo...
    method constructor (line 1) | constructor(e,t){if(this.cssModelInternal=e,this.styleSheetId=t.styleS...
    method rebase (line 1) | rebase(e){this.styleSheetId===e.styleSheetId&&this.style.rebase(e)}
    method resourceURL (line 1) | resourceURL(){if(!this.styleSheetId)return r.DevToolsPath.EmptyUrlStri...
    method isUserAgent (line 1) | isUserAgent(){return"user-agent"===this.origin}
    method isInjected (line 1) | isInjected(){return"injected"===this.origin}
    method isViaInspector (line 1) | isViaInspector(){return"inspector"===this.origin}
    method isRegular (line 1) | isRegular(){return"regular"===this.origin}
    method isKeyframeRule (line 1) | isKeyframeRule(){return!1}
    method cssModel (line 1) | cssModel(){return this.cssModelInternal}
    method getStyleSheetHeader (line 1) | getStyleSheetHeader(e){const t=this.cssModelInternal.styleSheetHeaderF...
  class on (line 1) | class on{text;range;specificity;constructor(e){this.text=e.text,e.range&...
    method constructor (line 1) | constructor(e){this.text=e.text,e.range&&(this.range=t.TextRange.TextR...
    method rebase (line 1) | rebase(e){this.range&&(this.range=this.range.rebaseAfterTextEdit(e.old...
  class an (line 1) | class an extends sn{selectors;nestingSelectors;media;containerQueries;su...
    method constructor (line 1) | constructor(e,t,n){super(e,{origin:t.origin,style:t.style,styleSheetId...
    method createDummyRule (line 1) | static createDummyRule(e,n){const r={selectorList:{text:"",selectors:[...
    method reinitializeSelectors (line 1) | reinitializeSelectors(e){this.selectors=[];for(let t=0;t<e.selectors.l...
    method setSelectorText (line 1) | setSelectorText(e){const t=this.styleSheetId;if(!t)throw new Error("No...
    method selectorText (line 1) | selectorText(){return this.selectors.map((e=>e.text)).join(", ")}
    method selectorRange (line 1) | selectorRange(){if(0===this.selectors.length)return null;const e=this....
    method lineNumberInSource (line 1) | lineNumberInSource(e){const t=this.selectors[e];if(!t?.range||!this.st...
    method columnNumberInSource (line 1) | columnNumberInSource(e){const t=this.selectors[e];if(!t?.range||!this....
    method rebase (line 1) | rebase(e){if(this.styleSheetId!==e.styleSheetId)return;const t=this.se...
  class ln (line 1) | class ln extends sn{#tt;constructor(e,t){super(e,{origin:t.origin,style:...
    method constructor (line 1) | constructor(e,t){super(e,{origin:t.origin,style:t.style,styleSheetId:t...
    method propertyName (line 1) | propertyName(){return this.#tt}
    method initialValue (line 1) | initialValue(){return this.style.hasActiveProperty("initial-value")?th...
    method syntax (line 1) | syntax(){return this.style.getPropertyValue("syntax")}
    method inherits (line 1) | inherits(){return"true"===this.style.getPropertyValue("inherits")}
    method setPropertyName (line 1) | setPropertyName(e){const t=this.styleSheetId;if(!t)throw new Error("No...
  class dn (line 1) | class dn extends sn{#nt;constructor(e,t){super(e,{origin:t.origin,style:...
    method constructor (line 1) | constructor(e,t){super(e,{origin:t.origin,style:t.style,styleSheetId:t...
    method name (line 1) | name(){return this.#nt}
  class cn (line 1) | class cn{#$e;#rt;constructor(e,t){this.#$e=new on(t.animationName),this....
    method constructor (line 1) | constructor(e,t){this.#$e=new on(t.animationName),this.#rt=t.keyframes...
    method name (line 1) | name(){return this.#$e}
    method keyframes (line 1) | keyframes(){return this.#rt}
  class hn (line 1) | class hn extends sn{#st;constructor(e,t){super(e,{origin:t.origin,style:...
    method constructor (line 1) | constructor(e,t){super(e,{origin:t.origin,style:t.style,styleSheetId:t...
    method key (line 1) | key(){return this.#st}
    method reinitializeKey (line 1) | reinitializeKey(e){this.#st=new on(e)}
    method rebase (line 1) | rebase(e){this.styleSheetId===e.styleSheetId&&this.#st.range&&(e.oldRa...
    method isKeyframeRule (line 1) | isKeyframeRule(){return!0}
    method setKeyText (line 1) | setKeyText(e){const t=this.styleSheetId;if(!t)throw new Error("No rule...
  class un (line 1) | class un extends sn{#tt;#Oe;constructor(e,t){super(e,{origin:t.origin,st...
    method constructor (line 1) | constructor(e,t){super(e,{origin:t.origin,style:t.style,styleSheetId:t...
    method name (line 1) | name(){return this.#tt}
    method active (line 1) | active(){return this.#Oe}
  class gn (line 1) | class gn extends sn{#tt;#it;#ot;constructor(e,t){super(e,{origin:t.origi...
    method constructor (line 1) | constructor(e,t){super(e,{origin:t.origin,style:{cssProperties:[],shor...
    method functionName (line 1) | functionName(){return this.#tt}
    method parameters (line 1) | parameters(){return this.#it}
    method children (line 1) | children(){return this.#ot}
    method protocolNodesToNestedStyles (line 1) | protocolNodesToNestedStyles(e){const t=[];for(const n of e){const e=th...
    method protocolNodeToNestedStyle (line 1) | protocolNodeToNestedStyle(e){if(e.style)return{style:new en(this.cssMo...
  function mn (line 1) | function mn(e,t){if(!t.styleSheetId||!t.range)return!1;for(const n of e)...
  function fn (line 1) | function fn(e){const t=e.allProperties();for(let e=0;e<t.length;++e){con...
  function bn (line 1) | function bn(e){for(const t of e)s(t);const t=[];for(const s of e){const ...
  function yn (line 1) | function yn(e){const t=new Map;for(let n=0;n<e.matchingSelectors.length;...
  class vn (line 1) | class vn{#at;#lt;#dt;constructor(e,t){this.#lt=e,this.#at=t}propertyName...
    method constructor (line 1) | constructor(e,t){this.#lt=e,this.#at=t}
    method propertyName (line 1) | propertyName(){return this.#at instanceof ln?this.#at.propertyName().t...
    method initialValue (line 1) | initialValue(){return this.#at instanceof ln?this.#at.initialValue():t...
    method inherits (line 1) | inherits(){return this.#at instanceof ln?this.#at.inherits():this.#at....
    method syntax (line 1) | syntax(){return this.#at instanceof ln?this.#at.syntax():`"${this.#at....
    method parseValue (line 1) | parseValue(e,t){const n=this.initialValue();return n?Ot(this.propertyN...
    method #ct (line 1) | #ct(){if(this.#at instanceof ln)return[];const{inherits:e,initialValue...
    method style (line 1) | style(){return this.#dt||(this.#dt=this.#at instanceof ln?this.#at.sty...
  class In (line 1) | class In{#je;#ht;#ut=new Map;#gt=new Map;#rt=[];#pt;#mt=new Map;#ft=new ...
    method create (line 1) | static async create(e){const t=new In(e);return await t.init(e),t}
    method constructor (line 1) | constructor({cssModel:e,node:t,animationsPayload:n,parentLayoutNodeId:...
    method init (line 1) | async init({matchedPayload:e,inheritedPayload:t,inlinePayload:n,attrib...
    method buildMainCascade (line 1) | async buildMainCascade(e,t,n,r,s,i,o){const a=[],l=[];function d(){if(...
    method buildSplitCustomHighlightCascades (line 1) | buildSplitCustomHighlightCascades(e,t,n,r){const s=new Map;for(let r=e...
    method buildPseudoCascades (line 1) | buildPseudoCascades(e,t){const n=new Map,r=new Map;if(!e)return[n,r];c...
    method addMatchingSelectors (line 1) | addMatchingSelectors(e,t,n){for(const r of n){const n=t.selectors[r];n...
    method node (line 1) | node(){return this.#ht}
    method cssModel (line 1) | cssModel(){return this.#je}
    method hasMatchingSelectors (line 1) | hasMatchingSelectors(e){return(0===e.selectors.length||this.getMatchin...
    method getParentLayoutNodeId (line 1) | getParentLayoutNodeId(){return this.#vt}
    method getMatchingSelectors (line 1) | getMatchingSelectors(e){const t=this.nodeForStyle(e.style);if(!t||"num...
    method recomputeMatchingSelectors (line 1) | async recomputeMatchingSelectors(e){const t=this.nodeForStyle(e.style)...
    method addNewRule (line 1) | addNewRule(e,t){return this.#ut.set(e.style,t),this.recomputeMatchingS...
    method setSelectorMatches (line 1) | setSelectorMatches(e,t,n){if("number"!=typeof e.id)return;let r=this.#...
    method nodeStyles (line 1) | nodeStyles(){return r.assertNotNullOrUndefined(this.#St),this.#St.styl...
    method inheritedStyles (line 1) | inheritedStyles(){return this.#St?.styles().filter((e=>this.isInherite...
    method animationStyles (line 1) | animationStyles(){return this.#St?.styles().filter((e=>!this.isInherit...
    method transitionsStyle (line 1) | transitionsStyle(){return this.#St?.styles().find((e=>!this.isInherite...
    method registeredProperties (line 1) | registeredProperties(){return this.#pt}
    method getRegisteredProperty (line 1) | getRegisteredProperty(e){return this.#mt.get(e)}
    method functionRules (line 1) | functionRules(){return this.#xt}
    method fontPaletteValuesRule (line 1) | fontPaletteValuesRule(){return this.#Rt}
    method keyframes (line 1) | keyframes(){return this.#rt}
    method positionTryRules (line 1) | positionTryRules(){return this.#It}
    method activePositionFallbackIndex (line 1) | activePositionFallbackIndex(){return this.#wt}
    method pseudoStyles (line 1) | pseudoStyles(e){r.assertNotNullOrUndefined(this.#kt);const t=this.#kt....
    method pseudoTypes (line 1) | pseudoTypes(){return r.assertNotNullOrUndefined(this.#kt),new Set(this...
    method customHighlightPseudoStyles (line 1) | customHighlightPseudoStyles(e){r.assertNotNullOrUndefined(this.#Ct);co...
    method customHighlightPseudoNames (line 1) | customHighlightPseudoNames(){return r.assertNotNullOrUndefined(this.#C...
    method nodeForStyle (line 1) | nodeForStyle(e){return this.#ut.get(e)||this.#ft.get(e)||null}
    method availableCSSVariables (line 1) | availableCSSVariables(e){const t=this.#yt.get(e);return t?t.findAvaila...
    method computeCSSVariable (line 1) | computeCSSVariable(e,t){const n=this.#yt.get(e);return n?n.computeCSSV...
    method resolveProperty (line 1) | resolveProperty(e,t){return this.#yt.get(t)?.resolveProperty(e,t)??null}
    method resolveGlobalKeyword (line 1) | resolveGlobalKeyword(e,t){const n=this.#yt.get(e.ownerStyle)?.resolveG...
    method isInherited (line 1) | isInherited(e){return this.#bt.has(e)}
    method propertyState (line 1) | propertyState(e){const t=this.#yt.get(e.ownerStyle);return t?t.propert...
    method resetActiveProperties (line 1) | resetActiveProperties(){r.assertNotNullOrUndefined(this.#St),r.assertN...
    method propertyMatchers (line 1) | propertyMatchers(e,t){return[new ve(this,e),new De((()=>t?.get("color"...
  class wn (line 1) | class wn{#Tt;styles;#Mt;#Pt;propertiesState=new Map;activeProperties=new...
    method constructor (line 1) | constructor(e,t,n,r=!1){this.#Tt=e,this.styles=t,this.#Mt=n,this.#Pt=r}
    method computeActiveProperties (line 1) | computeActiveProperties(){this.propertiesState.clear(),this.activeProp...
    method updatePropertyState (line 1) | updatePropertyState(e,t){const n=this.activeProperties.get(t);!n?.impo...
  function Sn (line 1) | function Sn(e){return"ownerStyle"in e}
  class kn (line 1) | class kn{declaration;constructor(e){this.declaration=e}get value(){retur...
    method constructor (line 1) | constructor(e){this.declaration=e}
    method value (line 1) | get value(){return Sn(this.declaration)?this.declaration.value:this.de...
    method style (line 1) | get style(){return Sn(this.declaration)?this.declaration.ownerStyle:th...
    method name (line 1) | get name(){return Sn(this.declaration)?this.declaration.name:this.decl...
  class Cn (line 1) | class Cn{nodeCascade;name;discoveryTime;rootDiscoveryTime;get isRootEntr...
    method isRootEntry (line 1) | get isRootEntry(){return this.rootDiscoveryTime===this.discoveryTime}
    method updateRoot (line 1) | updateRoot(e){this.rootDiscoveryTime=Math.min(this.rootDiscoveryTime,e...
    method constructor (line 1) | constructor(e,t,n){this.nodeCascade=e,this.name=t,this.discoveryTime=n...
  class xn (line 1) | class xn{#Et=0;#Lt=[];#At=new Map;get(e,t){return this.#At.get(e)?.get(t...
    method get (line 1) | get(e,t){return this.#At.get(e)?.get(t)}
    method add (line 1) | add(e,t){const n=this.get(e,t);if(n)return n;const r=new Cn(e,t,this.#...
    method isInInProgressSCC (line 1) | isInInProgressSCC(e){return this.#Lt.includes(e)}
    method finishSCC (line 1) | finishSCC(e){const t=this.#Lt.lastIndexOf(e);return console.assert(t>=...
  class Tn (line 1) | class Tn{#Ot=new Map;#Dt=new Map;#Nt=new Map;#Ft=new Map;#Bt=!1;#_t;#pt;...
    method constructor (line 1) | constructor(e,t){this.#_t=e,this.#pt=t;for(const t of e)for(const e of...
    method findAvailableCSSVariables (line 1) | findAvailableCSSVariables(e){const t=this.#Ft.get(e);if(!t)return[];th...
    method #Ht (line 1) | #Ht(e,t){const n=this.#Ft.get(e.ownerStyle);if(!n)return null;for(cons...
    method resolveProperty (line 1) | resolveProperty(e,t){const n=this.#Ft.get(t);if(!n)return null;for(con...
    method #qt (line 1) | #qt(e){const t=this.#Ft.get(e.ownerStyle);if(!t)return null;for(const ...
    method #Ut (line 1) | #Ut(e){return S().isPropertyInherited(e.name)&&(this.#zt(e.name)?.inhe...
    method #zt (line 1) | #zt(e){const t=this.#pt.find((t=>t.propertyName()===e));return t||null}
    method resolveGlobalKeyword (line 1) | resolveGlobalKeyword(e,t){const n=t=>t.ownerStyle.parentRule instanceo...
    method computeCSSVariable (line 1) | computeCSSVariable(e,t){const n=this.#Ft.get(e);return n?(this.ensureI...
    method innerComputeCSSVariable (line 1) | innerComputeCSSVariable(e,t,n=new xn){const r=this.#Dt.get(e),s=this.#...
    method styles (line 1) | styles(){return Array.from(this.#Ft.keys())}
    method propertyState (line 1) | propertyState(e){return this.ensureInitialized(),this.#Ot.get(e)||null}
    method reset (line 1) | reset(){this.#Bt=!1,this.#Ot.clear(),this.#Dt.clear(),this.#Nt.clear()}
    method ensureInitialized (line 1) | ensureInitialized(){if(this.#Bt)return;this.#Bt=!0;const e=new Map;for...
  class An (line 1) | class An{#je;id;frameId;sourceURL;hasSourceURL;origin;title;disabled;isI...
    method constructor (line 1) | constructor(e,t){this.#je=e,this.id=t.styleSheetId,this.frameId=t.fram...
    method originalContentProvider (line 1) | originalContentProvider(){if(!this.#jt){const e=async()=>{const e=awai...
    method setSourceMapURL (line 1) | setSourceMapURL(e){this.sourceMapURL=e}
    method cssModel (line 1) | cssModel(){return this.#je}
    method isAnonymousInlineStyleSheet (line 1) | isAnonymousInlineStyleSheet(){return!this.resourceURL()&&!this.#je.sou...
    method isConstructedByNew (line 1) | isConstructedByNew(){return this.isConstructed&&0===this.sourceURL.len...
    method resourceURL (line 1) | resourceURL(){return this.isViaInspector()?this.viaInspectorResourceUR...
    method getFrameURLPath (line 1) | getFrameURLPath(){const t=this.#je.target().model(ii);if(console.asser...
    method viaInspectorResourceURL (line 1) | viaInspectorResourceURL(){return`inspector:///inspector-stylesheet#${t...
    method lineNumberInSource (line 1) | lineNumberInSource(e){return this.startLine+e}
    method columnNumberInSource (line 1) | columnNumberInSource(e,t){return(e?0:this.startColumn)+t}
    method containsLocation (line 1) | containsLocation(e,t){const n=e===this.startLine&&t>=this.startColumn|...
    method contentURL (line 1) | contentURL(){return this.resourceURL()}
    method contentType (line 1) | contentType(){return e.ResourceType.resourceTypes.Stylesheet}
    method requestContent (line 1) | requestContent(){return this.requestContentData().then(t.ContentData.C...
    method requestContentData (line 1) | async requestContentData(){const e=await this.#je.getStyleSheetText(th...
    method searchInContent (line 1) | async searchInContent(e,n,r){const s=await this.requestContentData();r...
    method isViaInspector (line 1) | isViaInspector(){return"inspector"===this.origin}
    method createPageResourceLoadInitiator (line 1) | createPageResourceLoadInitiator(){return{target:this.#je.target(),fram...
  class Nn (line 1) | class Nn extends e.ObjectWrapper.ObjectWrapper{#Vt=new WeakMap;#Wt=new M...
    method constructor (line 1) | constructor(){super(),W.instance().observeModels(ii,this)}
    method instance (line 1) | static instance({forceNew:e}={forceNew:!1}){return Dn&&!e||(Dn=new Nn)...
    method removeInstance (line 1) | static removeInstance(){Dn=null}
    method modelAdded (line 1) | modelAdded(e){const t=e.addEventListener(ri.FrameAdded,this.frameAdded...
    method modelRemoved (line 1) | modelRemoved(t){const n=this.#Vt.get(t);n&&e.EventTarget.removeEventLi...
    method frameAdded (line 1) | frameAdded(e){const t=e.data,n=this.#Wt.get(t.id);if(n)t.setCreationSt...
    method frameDetached (line 1) | frameDetached(e){const{frame:t,isSwap:n}=e.data;if(this.decreaseOrRemo...
    method frameNavigated (line 1) | frameNavigated(e){const t=e.data;this.dispatchEventToListeners("FrameN...
    method resourceAdded (line 1) | resourceAdded(e){this.dispatchEventToListeners("ResourceAdded",{resour...
    method decreaseOrRemoveFrame (line 1) | decreaseOrRemoveFrame(e){const t=this.#Wt.get(e);t&&(1===t.count?(this...
    method resetOutermostFrame (line 1) | resetOutermostFrame(){const e=this.getAllFrames().filter((e=>e.isOuter...
    method getFrame (line 1) | getFrame(e){const t=this.#Wt.get(e);return t?t.frame:null}
    method getAllFrames (line 1) | getAllFrames(){return Array.from(this.#Wt.values(),(e=>e.frame))}
    method getOutermostFrame (line 1) | getOutermostFrame(){return this.#Kt}
    method getOrWaitForFrame (line 1) | async getOrWaitForFrame(e,t){const n=this.getFrame(e);return!n||t&&t==...
    method resolveAwaitedFrame (line 1) | resolveAwaitedFrame(e){const t=this.#$t.get(e.id);if(!t)return;const n...
  class Bn (line 1) | class Bn{static fromLocalObject(e){return new zn(e)}static type(e){if(nu...
    method fromLocalObject (line 1) | static fromLocalObject(e){return new zn(e)}
    method type (line 1) | static type(e){if(null===e)return"null";const t=typeof e;return"object...
    method isNullOrUndefined (line 1) | static isNullOrUndefined(e){if(void 0===e)return!0;switch(e.type){case...
    method arrayNameFromDescription (line 1) | static arrayNameFromDescription(e){return e.replace(Gn,"").replace(Kn,...
    method arrayLength (line 1) | static arrayLength(e){if("array"!==e.subtype&&"typedarray"!==e.subtype...
    method arrayBufferByteLength (line 1) | static arrayBufferByteLength(e){if("arraybuffer"!==e.subtype)return 0;...
    method unserializableDescription (line 1) | static unserializableDescription(e){if("number"==typeof e){const t=Str...
    method toCallArgument (line 1) | static toCallArgument(e){const t=typeof e;if("undefined"===t)return{};...
    method loadFromObjectPerProto (line 1) | static async loadFromObjectPerProto(e,t,n=!1){const r=await Promise.al...
    method customPreview (line 1) | customPreview(){return null}
    method unserializableValue (line 1) | unserializableValue(){throw new Error("Not implemented")}
    method preview (line 1) | get preview(){}
    method className (line 1) | get className(){return null}
    method callFunction (line 1) | callFunction(e,t){throw new Error("Not implemented")}
    method callFunctionJSON (line 1) | callFunctionJSON(e,t){throw new Error("Not implemented")}
    method arrayBufferByteLength (line 1) | arrayBufferByteLength(){throw new Error("Not implemented")}
    method deleteProperty (line 1) | deleteProperty(e){throw new Error("Not implemented")}
    method setPropertyValue (line 1) | setPropertyValue(e,t){throw new Error("Not implemented")}
    method release (line 1) | release(){}
    method debuggerModel (line 1) | debuggerModel(){throw new Error("DebuggerModel-less object")}
    method runtimeModel (line 1) | runtimeModel(){throw new Error("RuntimeModel-less object")}
    method isNode (line 1) | isNode(){return!1}
    method isLinearMemoryInspectable (line 1) | isLinearMemoryInspectable(){return!1}
  class _n (line 1) | class _n extends Bn{runtimeModelInternal;#Xt;#g;#Jt;#Yt;#Zt;hasChildrenI...
    method constructor (line 1) | constructor(e,t,n,r,s,i,o,a,l,d){super(),this.runtimeModelInternal=e,t...
    method customPreview (line 1) | customPreview(){return this.#nn}
    method objectId (line 1) | get objectId(){return this.#Yt}
    method type (line 1) | get type(){return this.#g}
    method subtype (line 1) | get subtype(){return this.#Jt}
    method value (line 1) | get value(){return this.#u}
    method unserializableValue (line 1) | unserializableValue(){return this.#tn}
    method description (line 1) | get description(){return this.#Zt}
    method description (line 1) | set description(e){this.#Zt=e}
    method hasChildren (line 1) | get hasChildren(){return this.hasChildrenInternal}
    method preview (line 1) | get preview(){return this.#en}
    method className (line 1) | get className(){return this.#rn}
    method getOwnProperties (line 1) | getOwnProperties(e,t=!1){return this.doGetProperties(!0,!1,t,e)}
    method getAllProperties (line 1) | getAllProperties(e,t,n=!1){return this.doGetProperties(!1,e,n,t)}
    method createRemoteObject (line 1) | async createRemoteObject(e){return this.runtimeModelInternal.createRem...
    method doGetProperties (line 1) | async doGetProperties(e,t,n,r){if(!this.#Yt)return{properties:null,int...
    method setPropertyValue (line 1) | async setPropertyValue(e,t){if(!this.#Yt)return"Can’t set a property o...
    method doSetObjectPropertyValue (line 1) | async doSetObjectPropertyValue(e,t){const n=[t,Bn.toCallArgument(e)],r...
    method deleteProperty (line 1) | async deleteProperty(e){if(!this.#Yt)return"Can’t delete a property of...
    method callFunction (line 1) | async callFunction(e,t){const n=await this.#Xt.invoke_callFunctionOn({...
    method callFunctionJSON (line 1) | async callFunctionJSON(e,t){const n=await this.#Xt.invoke_callFunction...
    method release (line 1) | release(){this.#Yt&&this.#Xt.invoke_releaseObject({objectId:this.#Yt})}
    method arrayLength (line 1) | arrayLength(){return Bn.arrayLength(this)}
    method arrayBufferByteLength (line 1) | arrayBufferByteLength(){return Bn.arrayBufferByteLength(this)}
    method debuggerModel (line 1) | debuggerModel(){return this.runtimeModelInternal.debuggerModel()}
    method runtimeModel (line 1) | runtimeModel(){return this.runtimeModelInternal}
    method isNode (line 1) | isNode(){return Boolean(this.#Yt)&&"object"===this.type&&"node"===this...
    method isLinearMemoryInspectable (line 1) | isLinearMemoryInspectable(){return"object"===this.type&&void 0!==this....
  class Hn (line 1) | class Hn extends _n{#sn;#in;constructor(e,t,n,r,s,i,o,a,l){super(e,t,r,s...
    method constructor (line 1) | constructor(e,t,n,r,s,i,o,a,l){super(e,t,r,s,i,o,a,l),this.#sn=n,this....
    method doGetProperties (line 1) | async doGetProperties(e,t,n){if(t)return{properties:[],internalPropert...
    method doSetObjectPropertyValue (line 1) | async doSetObjectPropertyValue(e,t){const n=t.value,r=await this.debug...
  class Un (line 1) | class Un{number;callFrameId;constructor(e,t){this.number=e,this.callFram...
    method constructor (line 1) | constructor(e,t){this.number=e,this.callFrameId=t}
  class qn (line 1) | class qn{name;value;enumerable;writable;isOwn;wasThrown;symbol;synthetic...
    method constructor (line 1) | constructor(e,t,n,r,s,i,o,a,l,d){this.name=e,this.value=null!==t?t:voi...
    method setSyntheticValue (line 1) | async setSyntheticValue(e){if(!this.syntheticSetter)return!1;const t=a...
    method isAccessorProperty (line 1) | isAccessorProperty(){return Boolean(this.getter||this.setter)}
    method match (line 1) | match({includeNullOrUndefinedValues:e,regex:t}){return!(null!==t&&!t.t...
    method cloneWithNewName (line 1) | cloneWithNewName(e){const t=new qn(e,this.value??null,this.enumerable,...
  class zn (line 1) | class zn extends Bn{valueInternal;#on;#an;constructor(e){super(),this.va...
    method constructor (line 1) | constructor(e){super(),this.valueInternal=e}
    method objectId (line 1) | get objectId(){}
    method value (line 1) | get value(){return this.valueInternal}
    method unserializableValue (line 1) | unserializableValue(){return Bn.unserializableDescription(this.valueIn...
    method description (line 1) | get description(){if(this.#on)return this.#on;if("object"===this.type)...
    method formatValue (line 1) | formatValue(e){if(!e)return"undefined";const t=e.description||"";retur...
    method concatenate (line 1) | concatenate(e,t,n){let r=e;const s=this.children();for(let e=0;e<s.len...
    method type (line 1) | get type(){return typeof this.valueInternal}
    method subtype (line 1) | get subtype(){return null===this.valueInternal?"null":Array.isArray(th...
    method hasChildren (line 1) | get hasChildren(){return"object"==typeof this.valueInternal&&null!==th...
    method getOwnProperties (line 1) | async getOwnProperties(e,t=!1){let n=this.children();return t&&(n=n.fi...
    method getAllProperties (line 1) | async getAllProperties(e,t,n=!1){return e?{properties:[],internalPrope...
    method children (line 1) | children(){return this.hasChildren?(this.#an||(this.#an=Object.entries...
    method arrayLength (line 1) | arrayLength(){return Array.isArray(this.valueInternal)?this.valueInter...
    method callFunction (line 1) | async callFunction(e,t){const n=this.valueInternal,r=t?t.map((e=>e.val...
    method callFunctionJSON (line 1) | async callFunctionJSON(e,t){const n=this.valueInternal,r=t?t.map((e=>e...
  class jn (line 1) | class jn{#ln;constructor(e){this.#ln=e}static objectAsArray(e){if(!e||"o...
    method constructor (line 1) | constructor(e){this.#ln=e}
    method objectAsArray (line 1) | static objectAsArray(e){if(!e||"object"!==e.type||"array"!==e.subtype&...
    method createFromRemoteObjects (line 1) | static async createFromRemoteObjects(e){if(!e.length)throw new Error("...
    method at (line 1) | async at(e){if(e<0||e>this.#ln.arrayLength())throw new Error("Out of r...
    method length (line 1) | length(){return this.#ln.arrayLength()}
    method map (line 1) | map(e){const t=[];for(let n=0;n<this.length();++n)t.push(this.at(n).th...
    method object (line 1) | object(){return this.#ln}
  class Vn (line 1) | class Vn{#dn;constructor(e){this.#dn=e}static objectAsFunction(e){if("fu...
    method constructor (line 1) | constructor(e){this.#dn=e}
    method objectAsFunction (line 1) | static objectAsFunction(e){if("function"!==e.type)throw new Error("Obj...
    method targetFunction (line 1) | async targetFunction(){const e=await this.#dn.getOwnProperties(!1),t=e...
    method targetFunctionDetails (line 1) | async targetFunctionDetails(){const e=await this.targetFunction(),t=aw...
  class Wn (line 1) | class Wn{#dn;#cn;#hn;constructor(e){this.#dn=e}static objectAsError(e){i...
    method constructor (line 1) | constructor(e){this.#dn=e}
    method objectAsError (line 1) | static objectAsError(e){if("error"!==e.subtype)throw new Error(`Object...
    method errorStack (line 1) | get errorStack(){return this.#dn.description??""}
    method exceptionDetails (line 1) | exceptionDetails(){return this.#cn||(this.#cn=this.#un()),thi
Copy disabled (too large) Download .json
Condensed preview — 7392 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (62,494K chars).
[
  {
    "path": ".babelrc",
    "chars": 139,
    "preview": "{\n    \"presets\": [\n        \"module:@react-native/babel-preset\"\n    ],\n    \"plugins\": [\n        \"babel-plugin-transform-f"
  },
  {
    "path": ".bundle/config",
    "chars": 59,
    "preview": "BUNDLE_PATH: \"vendor/bundle\"\nBUNDLE_FORCE_RUBY_PLATFORM: 1\n"
  },
  {
    "path": ".clang-format",
    "chars": 2655,
    "preview": "---\nAccessModifierOffset: -1\nAlignAfterOpenBracket: AlwaysBreak\nAlignConsecutiveAssignments: false\nAlignConsecutiveDecla"
  },
  {
    "path": ".editorconfig",
    "chars": 236,
    "preview": "# EditorConfig is awesome: https://EditorConfig.org\n\n# top-most EditorConfig file\nroot = true\n\n# Unix-style newlines wit"
  },
  {
    "path": ".eslintignore",
    "chars": 569,
    "preview": "**/main.js\n**/staticBundle.js\ndocs/generatedComponentApiDocs.js\npackages/react-native/flow/\npackages/react-native/sdks/\n"
  },
  {
    "path": ".eslintrc.js",
    "chars": 4380,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".flowconfig",
    "chars": 2321,
    "preview": "[ignore]\n; Ignore build cache folder\n<PROJECT_ROOT>/packages/react-native/sdks/.*\n\n; Ignore fb_internal modules\n<PROJECT"
  },
  {
    "path": ".gitattributes",
    "chars": 39,
    "preview": "*.js.flow linguist-language=JavaScript\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.yml",
    "chars": 5238,
    "preview": "name: 🐛 React Native - Bug Report\ndescription: Report a reproducible bug or regression in React Native.\nlabels: [\"Needs:"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/config.yml",
    "chars": 1725,
    "preview": "blank_issues_enabled: false\ncontact_links:\n    - name: ⬆️ Upgrade - Build Regression\n      url: https://github.com/react"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/debugger_bug_report.yml",
    "chars": 3052,
    "preview": "name: 🔍 Debugger - Bug Report\ndescription: Report a bug with React Native DevTools and the New Debugger\nlabels: [\"Needs:"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/new_architecture_bug_report.yml",
    "chars": 5543,
    "preview": "name: 💫 New Architecture - Bug Report\ndescription: Report a reproducible bug or a build issue when using the New Archite"
  },
  {
    "path": ".github/ISSUE_TEMPLATE.md",
    "chars": 180,
    "preview": "✋ To keep the backlog clean and actionable, issues will be\n🚫 closed if they do not follow one of the issue templates:\n👉 "
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE.md",
    "chars": 868,
    "preview": "<!-- Thanks for submitting a pull request! We appreciate you spending the time to work on these changes. Please provide "
  },
  {
    "path": ".github/RELEASE_TEMPLATE.md",
    "chars": 727,
    "preview": "<!-- Template for pre-release GitHub release -->\n\n<!-- TODO Post about this release to https://github.com/reactwg/react-"
  },
  {
    "path": ".github/SUPPORT.md",
    "chars": 2395,
    "preview": "Thanks for using React Native! If you need help with your React Native app, the right place to go depends on the type of"
  },
  {
    "path": ".github/actions/build-android/action.yml",
    "chars": 5496,
    "preview": "name: build-android\ndescription: This action builds android\ninputs:\n  release-type:\n    required: true\n    description: "
  },
  {
    "path": ".github/actions/build-fantom-runner/action.yml",
    "chars": 3397,
    "preview": "name: Build Fantom Runner\ninputs:\n  release-type:\n    required: true\n    description: The type of release we are buildin"
  },
  {
    "path": ".github/actions/build-npm-package/action.yml",
    "chars": 3207,
    "preview": "name: build-npm-package\ndescription: This action builds the NPM package and uploads it to Maven\ninputs:\n  release-type:\n"
  },
  {
    "path": ".github/actions/create-release/action.yml",
    "chars": 1543,
    "preview": "name: create_release\ndescription: Creates a new React Native release\ninputs:\n  version:\n    description: \"The version of"
  },
  {
    "path": ".github/actions/diff-js-api-changes/action.yml",
    "chars": 2735,
    "preview": "name: diff-js-api-changes\ndescription: Check for breaking changes in the public React Native JS API\noutputs:\n  message:\n"
  },
  {
    "path": ".github/actions/maestro-android/action.yml",
    "chars": 3334,
    "preview": "name: Maestro E2E Android\ndescription: Runs E2E Tests on Android using Maestro\ninputs:\n  app-path:\n    required: true\n  "
  },
  {
    "path": ".github/actions/maestro-ios/action.yml",
    "chars": 2584,
    "preview": "name: Maestro E2E iOS\ndescription: Runs E2E Tests on iOS using Maestro\ninputs:\n  app-path:\n    required: true\n    descri"
  },
  {
    "path": ".github/actions/post-pr-comment/action.yml",
    "chars": 1858,
    "preview": "name: post-pr-comment\ndescription: Post or update a PR comment, or delete if no sections\ninputs:\n  sections:\n    descrip"
  },
  {
    "path": ".github/actions/prepare-hermes-v1-app/action.yml",
    "chars": 1270,
    "preview": "name: prepare-hermes-v1-app\ndescription: Prepares a React Native app with Hermes V1 enabled\ninputs:\n  retry-count:\n    d"
  },
  {
    "path": ".github/actions/prepare-ios-tests/action.yml",
    "chars": 630,
    "preview": "name: prepare-ios-tests\ndescription: Prepare iOS Tests\nruns:\n  using: composite\n  steps:\n    - name: Run Ruby Tests\n    "
  },
  {
    "path": ".github/actions/run-fantom-tests/action.yml",
    "chars": 1486,
    "preview": "name: Run Fantom Tests\nruns:\n  using: composite\n  steps:\n    - name: Install runtime dependencies\n      shell: bash\n    "
  },
  {
    "path": ".github/actions/setup-gradle/action.yml",
    "chars": 1415,
    "preview": "name: Setup gradle\ndescription: \"Set up your GitHub Actions workflow with a specific version of gradle\"\ninputs:\n  cache-"
  },
  {
    "path": ".github/actions/setup-node/action.yml",
    "chars": 396,
    "preview": "name: Setup node.js\ndescription: 'Set up your GitHub Actions workflow with a specific version of node.js'\ninputs:\n  node"
  },
  {
    "path": ".github/actions/setup-xcode/action.yml",
    "chars": 415,
    "preview": "name: Setup xcode\ndescription: 'Set up your GitHub Actions workflow with a specific version of xcode'\ninputs:\n  xcode-ve"
  },
  {
    "path": ".github/actions/test-ios-helloworld/action.yml",
    "chars": 2562,
    "preview": "name: test-ios-helloworld\ndescription: Test iOS Hello World\ninputs:\n  use-frameworks:\n    description: The dependency bu"
  },
  {
    "path": ".github/actions/test-ios-rntester/action.yml",
    "chars": 4711,
    "preview": "name: test-ios-rntester\ndescription: Test iOS RNTester\ninputs:\n  ruby-version:\n    description: The version of ruby that"
  },
  {
    "path": ".github/actions/test-js/action.yml",
    "chars": 728,
    "preview": "name: test-js\ndescription: Runs all the JS tests in the codebase\ninputs:\n  node-version:\n    description: \"The node.js v"
  },
  {
    "path": ".github/actions/yarn-install/action.yml",
    "chars": 615,
    "preview": "name: yarn-install\nruns:\n  using: composite\n  steps:\n    - name: Install dependencies\n      shell: bash\n      run: |\n   "
  },
  {
    "path": ".github/workflow-scripts/__tests__/createDraftRelease-test.js",
    "chars": 13203,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/extractIssueOncalls-test.js",
    "chars": 2448,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/generateChangelog-test.js",
    "chars": 7006,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/publishTemplate-test.js",
    "chars": 3278,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/verifyArtifactsAreOnMaven-test.js",
    "chars": 2932,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/verifyPublishedPackage-test.js",
    "chars": 4384,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/__tests__/verifyReleaseOnNpm-test.js",
    "chars": 2661,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/actOnLabel.js",
    "chars": 7310,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/addDescriptiveLabels.js",
    "chars": 3257,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/analyze_scripts.sh",
    "chars": 679,
    "preview": "#!/bin/bash\n# Copyright (c) Meta Platforms, Inc. and affiliates.\n#\n# This source code is licensed under the MIT license "
  },
  {
    "path": ".github/workflow-scripts/checkBranchTarget.js",
    "chars": 1053,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/checkForReproducer.js",
    "chars": 2972,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/createDraftRelease.js",
    "chars": 5432,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/exec_swallow_error.sh",
    "chars": 383,
    "preview": "#!/bin/bash\n# Copyright (c) Meta Platforms, Inc. and affiliates.\n#\n# This source code is licensed under the MIT license "
  },
  {
    "path": ".github/workflow-scripts/extractIssueOncalls.js",
    "chars": 2544,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/generateChangelog.js",
    "chars": 3377,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/hermes-v1.patch",
    "chars": 1129,
    "preview": "diff --git a/android/settings.gradle b/android/settings.gradle\nindex 63b5d4e..6359ec3 100644\n--- a/android/settings.grad"
  },
  {
    "path": ".github/workflow-scripts/lint_files.sh",
    "chars": 351,
    "preview": "#!/bin/bash\n# Copyright (c) Meta Platforms, Inc. and affiliates.\n#\n# This source code is licensed under the MIT license "
  },
  {
    "path": ".github/workflow-scripts/maestro-android.js",
    "chars": 4238,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/maestro-ios.js",
    "chars": 4974,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/publishTemplate.js",
    "chars": 2207,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/selectLatestHermesV1Version.js",
    "chars": 1144,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/utils.js",
    "chars": 704,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/validatePRBody.js",
    "chars": 2776,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/verifyArtifactsAreOnMaven.js",
    "chars": 1356,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/verifyPublishedPackage.js",
    "chars": 1574,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/verifyReleaseOnNpm.js",
    "chars": 997,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflow-scripts/verifyVersion.js",
    "chars": 3664,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".github/workflows/analyze-pr.yml",
    "chars": 2111,
    "preview": "name: Analyze Pull Request\n\non:\n  pull_request_target:\n    types: [opened, edited, reopened, synchronize]\n\npermissions:\n"
  },
  {
    "path": ".github/workflows/api-changes.yml",
    "chars": 808,
    "preview": "name: Analyze API Changes\n\non:\n  pull_request_target:\n    types: [opened, edited, reopened, synchronize]\n\npermissions:\n "
  },
  {
    "path": ".github/workflows/autorebase.yml",
    "chars": 988,
    "preview": "name: Automatic Rebase\n# This workflow is used to automatically rebase a PR when a comment is made\n# containing the text"
  },
  {
    "path": ".github/workflows/bump-podfile-lock.yml",
    "chars": 1473,
    "preview": "name: Bump Podfile.lock\n\non:\n  workflow_call: # this directive allow us to call this workflow from other workflows\n\njobs"
  },
  {
    "path": ".github/workflows/cache-reaper.yml",
    "chars": 489,
    "preview": "name: Keep Github Actions Cache < 10GB\n\non:\n  workflow_dispatch:\n  schedule:\n    # Run every 2hrs during weekdays\n    - "
  },
  {
    "path": ".github/workflows/check-for-reproducer.yml",
    "chars": 746,
    "preview": "name: Check for reproducer\n# This workflow is triggered when issue is created or edited.\non:\n  issues:\n    types: [opene"
  },
  {
    "path": ".github/workflows/close-pr.yml",
    "chars": 2772,
    "preview": "name: Label closed PR as merged and leave a comment\non:\n  push\n\npermissions:\n  contents: read\n  pull-requests: write\n\njo"
  },
  {
    "path": ".github/workflows/create-draft-release.yml",
    "chars": 2196,
    "preview": "name: Create Draft Release\n\non:\n  workflow_call:\n    inputs:\n      hermesVersion:\n        required: false\n        type: "
  },
  {
    "path": ".github/workflows/create-release.yml",
    "chars": 1957,
    "preview": "name: Create release\n\non:\n  workflow_dispatch:\n    inputs:\n      version:\n        description: \"The version of React Nat"
  },
  {
    "path": ".github/workflows/generate-changelog.yml",
    "chars": 922,
    "preview": "name: Generate Changelog\n\non:\n  workflow_call:\n\njobs:\n  generate-changelog:\n    runs-on: ubuntu-latest\n    steps:\n      "
  },
  {
    "path": ".github/workflows/monitor-new-issues.yml",
    "chars": 1526,
    "preview": "name: Monitor React Native New Issues\n\non:\n  schedule:\n    - cron: \"0 0,6,12,18 * * *\"\n  workflow_dispatch:\n\n# Reminder "
  },
  {
    "path": ".github/workflows/needs-attention.yml",
    "chars": 894,
    "preview": "name: Issue Needs Attention\n# This workflow is triggered on issue comments.\non:\n  issue_comment:\n    types: [created]\n\np"
  },
  {
    "path": ".github/workflows/nightly.yml",
    "chars": 3834,
    "preview": "name: Nightly\n\non:\n  workflow_dispatch:\n  # nightly build @ 2:15 AM UTC\n  schedule:\n    - cron: \"15 2 * * *\"\n\njobs:\n  se"
  },
  {
    "path": ".github/workflows/on-issue-labeled.yml",
    "chars": 2238,
    "preview": "name: On Issue Labeled\n# This workflow is triggered when a label is added to an issue.\non:\n  issues:\n    types: [labeled"
  },
  {
    "path": ".github/workflows/prebuild-ios-core.yml",
    "chars": 10393,
    "preview": "name: Prebuild iOS Core\n\non:\n  workflow_call: # this directive allow us to call this workflow from other workflows\n    i"
  },
  {
    "path": ".github/workflows/prebuild-ios-dependencies.yml",
    "chars": 8854,
    "preview": "name: Prebuild iOS Dependencies\n\non:\n  workflow_call: # this directive allow us to call this workflow from other workflo"
  },
  {
    "path": ".github/workflows/publish-bumped-packages.yml",
    "chars": 835,
    "preview": "name: Publish Bumped Packages\n\non:\n  push:\n    branches:\n      - \"main\"\n      - \"*-stable\"\n\njobs:\n  publish_bumped_packa"
  },
  {
    "path": ".github/workflows/publish-release.yml",
    "chars": 6585,
    "preview": "name: Publish Release\non:\n  push:\n    tags:\n      - \"v0.*.*\" # This should match v0.X.Y\n      - \"v0.*.*-rc.*\" # This sho"
  },
  {
    "path": ".github/workflows/retry-workflow.yml",
    "chars": 609,
    "preview": "name: Retry workflow\n# Based on https://stackoverflow.com/a/78314483\n\non:\n    workflow_dispatch:\n        inputs:\n       "
  },
  {
    "path": ".github/workflows/stale-bot.yml",
    "chars": 4553,
    "preview": "name: Stale bot\non:\n  schedule:\n    - cron: \"*/10 5 * * *\"\njobs:\n  stale:\n    runs-on: ubuntu-latest\n    if: github.repo"
  },
  {
    "path": ".github/workflows/test-all.yml",
    "chars": 25621,
    "preview": "name: Test All\n\non:\n  workflow_dispatch:\n  pull_request:\n  push:\n    branches:\n      - main\n      - \"*-stable\"\n\njobs:\n  "
  },
  {
    "path": ".github/workflows/validate-cxx-api-snapshots.yml",
    "chars": 2780,
    "preview": "name: Validate C++ API Snapshots\n\non:\n  workflow_dispatch:\n  pull_request:\n    paths:\n      - \"packages/react-native/Rea"
  },
  {
    "path": ".github/workflows/validate-dotslash-artifacts.yml",
    "chars": 1402,
    "preview": "name: Validate DotSlash Artifacts\n\non:\n  workflow_dispatch:\n  release:\n    types: [published]\n  push:\n    branches:\n    "
  },
  {
    "path": ".gitignore",
    "chars": 4526,
    "preview": "# Xcode\n!**/*.xcodeproj\n!**/*.pbxproj\n!**/*.xcworkspacedata\n!**/*.xcsettings\n!**/*.xcscheme\n*.pbxuser\n!default.pbxuser\n*"
  },
  {
    "path": ".markdownlint-cli2.mjs",
    "chars": 1096,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": ".prettierignore",
    "chars": 258,
    "preview": "# Ignore Pods\n**/Pods\n\n# Ignore hermes as it is downloaded from the react_native_pods\n**/sdks/hermes\n**/sdks/downloads\n\n"
  },
  {
    "path": ".prettierrc.js",
    "chars": 897,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "CHANGELOG-0.5x.md",
    "chars": 276295,
    "preview": "# Changelog (pre 0.60)\n\nThis file contains all changelogs for releases in the pre-0.60 range. Please check out the other"
  },
  {
    "path": "CHANGELOG-0.6x.md",
    "chars": 317064,
    "preview": "# Changelog (pre 0.70)\n\nThis file contains all changelogs for releases in the 0.60-0.69 range. Please check out the othe"
  },
  {
    "path": "CHANGELOG-0.7x.md",
    "chars": 720092,
    "preview": "# Changelog (pre 0.80)\n\n## v0.79.7\n\n### Fixed\n\n#### Android specific\n\n- **Layout:** Make missing parent view state in up"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 254292,
    "preview": "# Changelog\n\n## v0.85.0-rc.7\n\n### Fixed\n\n#### iOS specific\n\n- **Hermes**: Fix Hermes crash when async void TurboModule m"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "chars": 3352,
    "preview": "# Code of Conduct\n\n## Our Pledge\n\nIn the interest of fostering an open and welcoming environment, we as\ncontributors and"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 525,
    "preview": "# Contributing to React Native\n\nThank you for your interest in contributing to React Native! From commenting on and tria"
  },
  {
    "path": "ECOSYSTEM.md",
    "chars": 10445,
    "preview": "# The React Native Ecosystem\n\nWe aim to build a vibrant and inclusive ecosystem of partners, core contributors, and comm"
  },
  {
    "path": "Gemfile",
    "chars": 420,
    "preview": "source 'https://rubygems.org'\n\n# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version\nruby \""
  },
  {
    "path": "LICENSE",
    "chars": 1088,
    "preview": "MIT License\n\nCopyright (c) Meta Platforms, Inc. and affiliates.\n\nPermission is hereby granted, free of charge, to any pe"
  },
  {
    "path": "README.md",
    "chars": 6657,
    "preview": "<h1 align=\"center\">\n  <a href=\"https://reactnative.dev/\">\n    React Native\n  </a>\n</h1>\n\n<p align=\"center\">\n  <strong>Le"
  },
  {
    "path": "__docs__/GUIDELINES.md",
    "chars": 3854,
    "preview": "# React Native Technical Documentation Guidelines\n\n_This is a document about documentation (hence the file name)._\n\n## M"
  },
  {
    "path": "__docs__/README-template.md",
    "chars": 959,
    "preview": "# _Subsystem name_\n\n[🏠 Home](path/to/main/__docs__/README.md)\n\n_Description of the subsystem with the necessary context."
  },
  {
    "path": "__docs__/README.md",
    "chars": 3866,
    "preview": "# React Native Technical Documentation\n\nThe React Native technical documentation describes how React Native works\nintern"
  },
  {
    "path": "build.gradle.kts",
    "chars": 7951,
    "preview": "/*\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found "
  },
  {
    "path": "flow-typed/environment/node.js",
    "chars": 170096,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/@expo/spawn-async_v1.x.x.js",
    "chars": 1044,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/@isaacs/ttlcache_1.x.x.js",
    "chars": 6590,
    "preview": "/**\n * @flow strict-local\n * @format\n */\n\ndeclare module '@isaacs/ttlcache' {\n  declare export default class TTLCache<K,"
  },
  {
    "path": "flow-typed/npm/@octokit/rest_v22.x.x.js",
    "chars": 1339,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/@react-native-community/cli-server-api_v19.x.x.js",
    "chars": 1068,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/@react-native-community/cli-types_v19.x.x.js",
    "chars": 1306,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/@tsconfig/node22_v22.x.x.js",
    "chars": 298,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/actual-request-url_v1.x.x.js",
    "chars": 927,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/ansi-regex_v5.x.x.js",
    "chars": 262,
    "preview": "/**\n * @flow strict\n * @format\n */\n\ndeclare module 'ansi-regex' {\n  declare export type Options = {\n    /**\n     * Match"
  },
  {
    "path": "flow-typed/npm/babel-traverse_v7.x.x.js",
    "chars": 76182,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/babel-types_v7.x.x.js",
    "chars": 234452,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/babel_v7.x.x.js",
    "chars": 45237,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/base64-js_v1.x.x.js",
    "chars": 232,
    "preview": "/**\n * @flow strict\n * @format\n */\n\ndeclare module 'base64-js' {\n  declare module.exports: {\n    byteLength: string => n"
  },
  {
    "path": "flow-typed/npm/chrome-launcher_v0.15.x.js",
    "chars": 1270,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/chromium-edge-launcher_v0.2.x.js",
    "chars": 1260,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/commander_v12.x.x.js",
    "chars": 30352,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/connect_v3.x.x.js",
    "chars": 1388,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/cross-spawn_v7.x.x.js",
    "chars": 451,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/debug_v4.4.x.js",
    "chars": 1667,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/deep-equal_v1.x.x.js",
    "chars": 368,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/electron-packager_v18.x.x.js",
    "chars": 4087,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/electron_v36.x.x.js",
    "chars": 347,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/execa_v5.x.x.js",
    "chars": 2703,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/fb-dotslash_v0.x.x.js",
    "chars": 295,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/ini_v5.x.x.js",
    "chars": 725,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow strict\n * @format\n */\n\n// Buil"
  },
  {
    "path": "flow-typed/npm/jest-diff_v29.x.x.js",
    "chars": 1044,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow strict\n * @format\n */\n\ndeclare"
  },
  {
    "path": "flow-typed/npm/jest-snapshot_v29.x.x.js",
    "chars": 2032,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/jest.js",
    "chars": 38073,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/jsonc-parser_v2.2.x.js",
    "chars": 13784,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/listr2_v8.x.x.js",
    "chars": 1582,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow\n * @format\n */\n\ndeclare module"
  },
  {
    "path": "flow-typed/npm/listr_v14.x.x.js",
    "chars": 1589,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow\n * @format\n */\n\ndeclare module"
  },
  {
    "path": "flow-typed/npm/node-fetch_v2.x.x.js",
    "chars": 4387,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/open_v7.x.x.js",
    "chars": 597,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/pretty-format_v29.x.x.js",
    "chars": 1904,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow strict\n * @format\n */\ndeclare "
  },
  {
    "path": "flow-typed/npm/promise_v8.x.x.js",
    "chars": 664,
    "preview": "/**\n * @flow strict\n * @format\n */\n\ndeclare module 'promise/setimmediate/es6-extensions' {\n  declare module.exports: typ"
  },
  {
    "path": "flow-typed/npm/react-dom_v17.x.x.js",
    "chars": 3713,
    "preview": "declare module 'react-dom' {\n  import type {Component} from 'react';\n\n  declare var version: string;\n\n  declare function"
  },
  {
    "path": "flow-typed/npm/react-test-renderer_v16.x.x.js",
    "chars": 2643,
    "preview": "// Type definitions for react-test-renderer 16.x.x\n// Ported from: https://github.com/DefinitelyTyped/DefinitelyTyped/bl"
  },
  {
    "path": "flow-typed/npm/rxjs_v6.x.x.js",
    "chars": 108585,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow strict\n * @format\n */\n\n/** OPE"
  },
  {
    "path": "flow-typed/npm/selfsigned_v2.x.x.js",
    "chars": 2394,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/semver_v7.x.x.js",
    "chars": 5934,
    "preview": "declare module 'semver' {\n  declare type Release =\n    | \"major\"\n    | \"premajor\"\n    | \"minor\"\n    | \"preminor\"\n    | \""
  },
  {
    "path": "flow-typed/npm/serve-static_v1.x.x.js",
    "chars": 3813,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/shelljs_v0.x.x.js",
    "chars": 10405,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow\n * @format\n */\n\n'use strict';\n"
  },
  {
    "path": "flow-typed/npm/signedsource_v1.x.x.js",
    "chars": 432,
    "preview": "/**\n * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary.\n *\n * @flow strict\n * @format\n */\n\ndeclare"
  },
  {
    "path": "flow-typed/npm/stacktrace-parser_v0.1.x.js",
    "chars": 251,
    "preview": "/**\n * @flow strict\n * @format\n */\n\ntype StackFrame = {\n  file: string,\n  methodName: string,\n  lineNumber: number,\n  co"
  },
  {
    "path": "flow-typed/npm/tinybench_v4.1.x.js",
    "chars": 3241,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/tinyglobby_v0.2.x.js",
    "chars": 1091,
    "preview": "declare module 'tinyglobby' {\n  import typeof FSModule from 'fs';\n\n  declare type FileSystemAdapter = Partial<FSModule>;"
  },
  {
    "path": "flow-typed/npm/typescript_v5.x.x.js",
    "chars": 1412,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/undici_v6.x.x.js",
    "chars": 947,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/wait-for-expect_v3.x.x.js",
    "chars": 484,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/ws_v7.x.x.js",
    "chars": 9065,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "flow-typed/npm/yargs_v17.x.x.js",
    "chars": 9901,
    "preview": "// flow-typed version: f7c859e705/yargs_v17.x.x/flow_>=v0.104.x\n\ndeclare module 'yargs' {\n  declare type Argv = {\n    [k"
  },
  {
    "path": "gradle/wrapper/gradle-wrapper.properties",
    "chars": 252,
    "preview": "distributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\ndistributionUrl=https\\://services.gradle.org/distributi"
  },
  {
    "path": "gradle.properties",
    "chars": 1247,
    "preview": "org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8\norg.gradle.parallel=true\norg.gradle.caching=true"
  },
  {
    "path": "gradlew",
    "chars": 8595,
    "preview": "#!/bin/sh\n\n#\n# Copyright © 2015 the original authors.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\")"
  },
  {
    "path": "gradlew.bat",
    "chars": 2896,
    "preview": "@rem\r\n@rem Copyright 2015 the original author or authors.\r\n@rem\r\n@rem Licensed under the Apache License, Version 2.0 (th"
  },
  {
    "path": "jest/preprocessor.js",
    "chars": 4359,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "jest.config.js",
    "chars": 2194,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "package.json",
    "chars": 5008,
    "preview": "{\n  \"name\": \"@react-native/monorepo\",\n  \"private\": true,\n  \"version\": \"1000.0.0\",\n  \"license\": \"MIT\",\n  \"packageManager\""
  },
  {
    "path": "packages/assets/README.md",
    "chars": 631,
    "preview": "# @react-native/assets-registry\n\n[![Version][version-badge]][package]\n\n## Installation\n\n```\nyarn add --dev @react-native"
  },
  {
    "path": "packages/assets/__tests__/path-support-test.js",
    "chars": 2413,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/assets/package.json",
    "chars": 781,
    "preview": "{\n  \"name\": \"@react-native/assets-registry\",\n  \"version\": \"0.86.0-main\",\n  \"description\": \"Asset support code for React "
  },
  {
    "path": "packages/assets/path-support.js",
    "chars": 2541,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/assets/registry.js",
    "chars": 1066,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/babel-plugin-codegen/README.md",
    "chars": 677,
    "preview": "# @react-native/babel-plugin-codegen\n\n[![Version][version-badge]][package]\n\n## Installation\n\n```\nyarn add --dev @babel/c"
  },
  {
    "path": "packages/babel-plugin-codegen/__test_fixtures__/failures.js",
    "chars": 6147,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/babel-plugin-codegen/__test_fixtures__/fixtures.js",
    "chars": 5617,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/babel-plugin-codegen/__tests__/__snapshots__/index-test.js.snap",
    "chars": 11765,
    "preview": "// Jest Snapshot v1, https://goo.gl/fbAQLP\n\nexports[`Babel plugin inline view configs can inline config for CommandsWith"
  },
  {
    "path": "packages/babel-plugin-codegen/__tests__/index-test.js",
    "chars": 1503,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/babel-plugin-codegen/index.js",
    "chars": 8190,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/babel-plugin-codegen/package.json",
    "chars": 913,
    "preview": "{\n  \"name\": \"@react-native/babel-plugin-codegen\",\n  \"version\": \"0.86.0-main\",\n  \"description\": \"Babel plugin to generate"
  },
  {
    "path": "packages/community-cli-plugin/.gitignore",
    "chars": 51,
    "preview": "# Dependencies\n/node_modules\n\n# Build output\n/dist\n"
  },
  {
    "path": "packages/community-cli-plugin/README.md",
    "chars": 3844,
    "preview": "# @react-native/community-cli-plugin\n\n> This is an internal dependency of React Native. **Please don't depend on it dire"
  },
  {
    "path": "packages/community-cli-plugin/package.json",
    "chars": 1489,
    "preview": "{\n  \"name\": \"@react-native/community-cli-plugin\",\n  \"version\": \"0.86.0-main\",\n  \"description\": \"Core CLI commands for Re"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/__mocks__/sign.js",
    "chars": 311,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/__tests__/filterPlatformAssetScales-test.js",
    "chars": 1173,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/__tests__/getAssetDestPathAndroid-test.js",
    "chars": 2387,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/__tests__/getAssetDestPathIOS-test.js",
    "chars": 1329,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/assetCatalogIOS.js",
    "chars": 1931,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/assetPathUtils.js",
    "chars": 2177,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/buildBundle.js",
    "chars": 4502,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/createKeepFileAsync.js",
    "chars": 1120,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/filterPlatformAssetScales.js",
    "chars": 1238,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/getAssetDestPathAndroid.js",
    "chars": 702,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/getAssetDestPathIOS.js",
    "chars": 812,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/index.js",
    "chars": 3935,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/bundle/saveAssets.js",
    "chars": 3889,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/start/OpenDebuggerKeyboardHandler.js",
    "chars": 4843,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js",
    "chars": 3286,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/start/index.js",
    "chars": 3090,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/start/middleware.js",
    "chars": 3079,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/commands/start/runServer.js",
    "chars": 5751,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/index.flow.js",
    "chars": 425,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/index.js",
    "chars": 427,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js",
    "chars": 966,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/utils/errors.js",
    "chars": 1246,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/utils/isDevServerRunning.js",
    "chars": 1872,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  },
  {
    "path": "packages/community-cli-plugin/src/utils/loadMetroConfig.js",
    "chars": 4375,
    "preview": "/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found"
  }
]

// ... and 7192 more files (download for full content)

About this extraction

This page contains the full source code of the facebook/react-native GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 7392 files (56.9 MB), approximately 15.4M tokens, and a symbol index with 46668 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!