Compare commits

...
Author SHA1 Message Date
Distiller e8f41ce48b [0.73.0-rc.1] Bump version numbers 2023-10-04 08:37:43 +00:00
Riccardo CipolleschiandGitHub 032706790a Make jobs required for hermes to run on tagged builds (#39800) 2023-10-04 10:22:14 +02:00
Thibault Malbranche 8eec395268 Revert "[0.73.0-rc.1] Bump version numbers"
This reverts commit 725b1c9a7e.
2023-10-04 10:20:44 +02:00
Distiller 725b1c9a7e [0.73.0-rc.1] Bump version numbers 2023-10-03 20:23:12 +00:00
Alex Hunt 50f242e4d7 Bump package versions
#publish-packages-to-npm
2023-10-03 15:11:53 -04:00
Alex Hunt e5bf39cf85 Fix start command exit behaviour
This is an eager cherry pick of #39788 for `0.73-stable`.
2023-10-03 15:04:22 -04:00
Alex Hunt 047f645079 Fix typings for ReactNativeVersionCheck
Applies correct fix for `_formatVersion` misalignment — based on #36657.
2023-10-03 14:36:08 -04:00
Alex Hunt dd30cd30c9 Revert "Fix typings for ReactNativeVersion.js"
This reverts commit b6c0703ebb.
2023-10-03 14:36:08 -04:00
Distiller f133dd2efb [0.73.0-rc.0] Bump version numbers 2023-10-03 16:13:06 +00:00
Riccardo CipolleschiandGitHub 8263b9d237 [RN][CI] Make the Choose CI Job run also on tags (#39774) 2023-10-03 11:58:36 -04:00
Alex Hunt 0c040314b5 Revert "[0.73.0-rc.0] Bump version numbers"
This reverts commit 6b9cf50b30.
2023-10-03 11:57:38 -04:00
Alex Hunt b6c0703ebb Fix typings for ReactNativeVersion.js
This is an eager cherry pick of #39784 for `0.73-stable`.
2023-10-03 11:56:51 -04:00
Distiller 6b9cf50b30 [0.73.0-rc.0] Bump version numbers 2023-10-02 21:39:05 +00:00
Alex Hunt aa58c4c4b7 Bump package versions (dependant packages)
#publish-packages-to-npm
2023-10-02 16:57:25 -04:00
Alex Hunt 3793a64808 Bump package versions
#publish-packages-to-npm
2023-10-02 16:50:40 -04:00
David VaccaandAlex Hunt e6b24a3146 Mark initHybrid as @JvmStatic (#39755)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39755

The goal of this diff is to fix:
```
JNI DETECTED ERROR IN APPLICATION: JNI NewGlobalRef called with pending exception java.lang.NoSuchMethodError: no static or non-static method
"Lcom/facebook/react/jscexecutor/JSCExecutor;.initHybrid(Lcom/facebook/react/bridge/ReadableNativeMap;)Lcom/facebook/jni/HybridData;"

```

changelog: [internal] internal

Reviewed By: luluwu2032

Differential Revision: D49831595

fbshipit-source-id: 9ce22cdccdd02af74edb27be2df72a469d3166c9
2023-10-02 16:31:16 -04:00
Alex HuntandAlex Hunt c116c1c268 Sync debugger-frontend
Summary:
Sync latest `debugger-frontend` artifacts, based on https://github.com/motiz88/rn-chrome-devtools-frontend/pull/12.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D49502838

fbshipit-source-id: 25805066670ac35ec976dc820a73a722ee182dd2
2023-10-02 13:40:29 -04:00
Riccardo CipolleschiandAlex Hunt 67ebc7c7d5 Update Xcode 15 patches to be more robust (#39710)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39710

Last week Apple released Xcode 15, which required us to ship a workaround for the new linker.
Unfortunately, the previous fix was not good enough and there were some edge cases that were not covered.
For example, in some occasions the flags are read as an array and the `-Wl` and the `-ld_classic` flags were separated and not properly removed when moving from Xcode 15 to Xcpde 14.3.1.

This change fixes those edge cases, with a more robust solution where:
- We convert the flags to a string.
- We trim the string and the values properly.
- We add the flags when running `pod install` with Xcode 15 as the default iOS toolchain.
- We remove the flags when running `pod install` with Xcode <15 as the default iOS toolchain.

## Changelog:
[Internal] - Make the Xcode 15 workaround more robust.

Reviewed By: dmytrorykun

Differential Revision: D49748844

fbshipit-source-id: 34976d148f123c5aacba6487a500874bb938fe99
2023-10-02 10:59:36 -04:00
Alex Hunt 49bd0ed303 Bump package versions
#publish-packages-to-npm
2023-09-27 15:22:42 -04:00
Alex Hunt 608b4bac44 Bump CLI to 12.0.0-alpha.17 2023-09-27 15:21:37 -04:00
Dmitry RykunandLuna Wei ea09bcd8cb Export Commands and Constants only if native view config interop is enabled (#39696)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39696

`Commands` and `Constants` should be set in native only if component data is instantiated via native view config interop layer.
Changelog: [Internal]

Reviewed By: RSNara

Differential Revision: D49684166

fbshipit-source-id: ceaa29c2ed3336aa6e21a116a3f5f94e03c225c1
2023-09-27 13:41:12 -04:00
Ramanpreet NaraandLuna Wei 562109fdd3 Enable TurboModule interop in Bridgeless Mode (#39687)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39687

Bridgeless mode is releasing in 0.73.

Bridgeless mode isn't stable inside RNTester (in 0.73) without the TurboModule interop layer: T164853040.

**Changes:** Enable the TurboModule interop layer in RNTester (Bridgeless Mode).

**Urgency:** This will unblock the 0.73.

Changelog: [General][Added] - Enable TurboModule interop in Bridgeless mode

Reviewed By: fkgozali, dmytrorykun, luluwu2032

Differential Revision: D49653919

fbshipit-source-id: a4a09a99544c2ef8713484dbeab5cb04f29256cc
2023-09-27 13:39:15 -04:00
Arushi KesarwaniandLuna Wei a57a8b7782 Reduce visibility of functions in ReactHostImpl (#39640)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39640

changelog: [internal] internal

Reducing visibility from public to package only for `ReactHostImpl.getDefaultHardwareBackBtnHandler()` since it's only used within package

Reviewed By: mdvacca

Differential Revision: D49612859

fbshipit-source-id: 3c40888da732f33dc046d9363b08119e707f4ea4
2023-09-27 13:03:16 -04:00
Luna Wei 69e0c2d916 bumped packages versions
#publish-packages-to-npm
2023-09-27 12:36:19 -04:00
Alex Hunt 04d80478c8 Bump CLI to 12.0.0-alpha.16 2023-09-27 12:19:06 -04:00
Alex HuntandGitHub 73cd7c0e6b [Hotfix] Remove node engines constraint for normalize-color (#39698) 2023-09-27 12:18:28 -04:00
Lulu WuandLuna Wei 4c1418a216 Enable Template with Bridgeless (#39661)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39661

Changelog:
[Android][Changed] - Enable Template with Bridgeless

Reviewed By: cortinico

Differential Revision: D49464580

fbshipit-source-id: 26dd8e2a0b9a66421d58f147eed4d2fd28817dc7
2023-09-26 13:40:32 -04:00
Dmitry RykunandLuna Wei 9f5c77dab7 Enable native view configs in bridgeless mode in OSS (#39476)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39476

This diff enables native view config interop layer in bridgeless mode by default for OSS.
It also removes redundant `enableNativeViewConfigsInBridgelessMode` JS feature flag.
Changelog: [General][Added] - Native view config interop layer enabled in bridgeless mode.

Reviewed By: luluwu2032

Differential Revision: D49318325

fbshipit-source-id: ea2e38b2ea10637b578d98e38d97eed923498fb3
2023-09-26 13:15:39 -04:00
Luna Wei b07859ab1f Bump react-native-babel-preset to 0.73.18 #publish-packages-to-npm 2023-09-26 12:16:15 -04:00
Alex Hunt 90b8518073 bumped packages versions
#publish-packages-to-npm
2023-09-26 10:27:39 -04:00
Alex Hunt d54e20b5f6 Set Hermes release version 2023-09-26 10:24:51 -04:00
64 changed files with 739 additions and 768 deletions
+4 -1
View File
@@ -91,4 +91,7 @@ jobs:
workflows:
always-run:
jobs:
- choose_ci_jobs
- choose_ci_jobs:
filters:
tags:
only: /.*/
+2
View File
@@ -43,6 +43,7 @@ workflows:
requires:
- prepare_hermes_workspace
- build_apple_slices_hermes:
filters: *only_release_tags
requires:
- build_hermesc_apple
matrix:
@@ -54,6 +55,7 @@ workflows:
requires:
- prepare_hermes_workspace
- build_hermes_macos:
filters: *only_release_tags
requires:
- build_apple_slices_hermes
matrix:
+2 -2
View File
@@ -55,8 +55,8 @@
"@definitelytyped/dtslint": "^0.0.127",
"@jest/create-cache-key-function": "^29.6.3",
"@pkgjs/parseargs": "^0.11.0",
"@react-native/metro-babel-transformer": "^0.73.11",
"@react-native/metro-config": "^0.73.0",
"@react-native/metro-babel-transformer": "^0.73.12",
"@react-native/metro-config": "^0.73.1",
"@tsconfig/node18": "1.0.1",
"@types/react": "^18.0.18",
"@typescript-eslint/parser": "^5.57.1",
+7 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/assets-registry",
"version": "0.73.0",
"version": "0.73.1",
"description": "Asset support code for React Native.",
"license": "MIT",
"repository": {
@@ -9,7 +9,12 @@
"directory": "packages/assets"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/assets#readme",
"keywords": ["assets", "registry", "react-native", "support"],
"keywords": [
"assets",
"registry",
"react-native",
"support"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
+9 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/babel-plugin-codegen",
"version": "0.73.0",
"version": "0.73.1",
"description": "Babel plugin to generate native module and view manager code for React Native.",
"license": "MIT",
"repository": {
@@ -9,7 +9,14 @@
"directory": "packages/babel-plugin-codegen"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/babel-plugin-codegen#readme",
"keywords": ["babel", "plugin", "codegen", "react-native", "native-modules", "view-manager"],
"keywords": [
"babel",
"plugin",
"codegen",
"react-native",
"native-modules",
"view-manager"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
+5 -5
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/community-cli-plugin",
"version": "0.73.1",
"version": "0.73.6",
"description": "Core CLI commands for React Native",
"keywords": [
"react-native",
@@ -22,10 +22,10 @@
"dist"
],
"dependencies": {
"@react-native/dev-middleware": "^0.73.0",
"@react-native-community/cli-server-api": "12.0.0-alpha.15",
"@react-native-community/cli-tools": "12.0.0-alpha.15",
"@react-native/metro-babel-transformer": "^0.73.11",
"@react-native/dev-middleware": "^0.73.3",
"@react-native-community/cli-server-api": "12.0.0-alpha.17",
"@react-native-community/cli-tools": "12.0.0-alpha.17",
"@react-native/metro-babel-transformer": "^0.73.12",
"chalk": "^4.0.0",
"execa": "^5.1.1",
"metro": "0.79.1",
@@ -15,7 +15,6 @@ import {logger} from '@react-native-community/cli-tools';
import chalk from 'chalk';
import execa from 'execa';
import fetch from 'node-fetch';
import readline from 'readline';
import {KeyPressHandler} from '../../utils/KeyPressHandler';
const CTRL_C = '\u0003';
@@ -23,13 +22,11 @@ const CTRL_D = '\u0004';
export default function attachKeyHandlers({
cliConfig,
serverInstance,
devServerUrl,
messageSocket,
}: {
cliConfig: Config,
devServerUrl: string,
serverInstance: http$Server | https$Server,
messageSocket: $ReadOnly<{
broadcast: (type: string, params?: Record<string, mixed> | null) => void,
...
@@ -40,10 +37,6 @@ export default function attachKeyHandlers({
return;
}
readline.emitKeypressEvents(process.stdin);
// $FlowIgnore[prop-missing]
process.stdin.setRawMode(true);
const execaOptions = {
env: {FORCE_COLOR: chalk.supportsColor ? 'true' : 'false'},
};
@@ -88,16 +81,14 @@ export default function attachKeyHandlers({
case CTRL_C:
case CTRL_D:
logger.info('Stopping server');
listener?.({pause: true});
serverInstance.close(() => {
process.emit('SIGINT');
process.exit();
});
keyPressHandler.stopInterceptingKeyStrokes();
process.emit('SIGINT');
process.exit();
}
};
const keyPressHandler = new KeyPressHandler(onPress);
const listener = keyPressHandler.createInteractionListener();
keyPressHandler.createInteractionListener();
keyPressHandler.startInterceptingKeyStrokes();
logger.log(
@@ -137,7 +137,6 @@ async function runServer(
attachKeyHandlers({
cliConfig: ctx,
devServerUrl,
serverInstance,
messageSocket: messageSocketEndpoint,
});
}
+2 -2
View File
@@ -1,5 +1,5 @@
@generated SignedSource<<8a0bac4cfdcc3cd44a4f7136f2611ebb>>
Git revision: 0ffb687b8e049769d2e7162ba8d7205c90e4110c
@generated SignedSource<<7fdc9e65be03ba4c6654f14c6f23d645>>
Git revision: 18f202a1ae468a01afb44ffd2f71d28023126989
Built with --nohooks: false
Is local checkout: false
Remote URL: https://github.com/motiz88/rn-chrome-devtools-frontend
@@ -13,6 +13,7 @@ style.setProperty('--image-file-chromeLeft', 'url(\"' + new URL('./chromeLeft.av
style.setProperty('--image-file-chromeMiddle', 'url(\"' + new URL('./chromeMiddle.avif', import.meta.url).toString() + '\")');
style.setProperty('--image-file-chromeRight', 'url(\"' + new URL('./chromeRight.avif', import.meta.url).toString() + '\")');
style.setProperty('--image-file-cssoverview_icons_2x', 'url(\"' + new URL('./cssoverview_icons_2x.avif', import.meta.url).toString() + '\")');
style.setProperty('--image-file-favicon', 'url(\"' + new URL('./favicon.ico', import.meta.url).toString() + '\")');
style.setProperty('--image-file-navigationControls_2x', 'url(\"' + new URL('./navigationControls_2x.png', import.meta.url).toString() + '\")');
style.setProperty('--image-file-navigationControls', 'url(\"' + new URL('./navigationControls.png', import.meta.url).toString() + '\")');
style.setProperty('--image-file-nodeIcon', 'url(\"' + new URL('./nodeIcon.avif', import.meta.url).toString() + '\")');
Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because one or more lines are too long
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/device_mode_emulation_frame/device_mode_emulation_frame.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/devtools_app/devtools_app.js"></script>
<body class="undocked" id="-blink-dev-tools">
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/inspector/inspector.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/js_app/js_app.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/ndb_app/ndb_app.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/node_app/node_app.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -1 +1 @@
import*as e from"../../core/i18n/i18n.js";import*as t from"../../core/root/root.js";import*as i from"../../ui/legacy/legacy.js";const o={profiler:"Profiler",showProfiler:"Show Profiler",performance:"Performance",showPerformance:"Show Performance",startStopRecording:"Start/stop recording",showRecentTimelineSessions:"Show recent timeline sessions",record:"Record",stop:"Stop",startProfilingAndReloadPage:"Start profiling and reload page"},n=e.i18n.registerUIStrings("panels/js_profiler/js_profiler-meta.ts",o),r=e.i18n.getLazilyComputedLocalizedString.bind(void 0,n);let a,l;async function s(){return l||(l=await import("../profiler/profiler.js")),l}async function c(){return a||(a=await import("../timeline/timeline.js")),a}function g(e){return void 0===a?[]:e(a)}i.ViewManager.registerViewExtension({location:"panel",id:"js_profiler",title:r(o.profiler),commandPrompt:r(o.showProfiler),order:65,persistence:"closeable",experiment:t.Runtime.ExperimentName.JS_PROFILER_TEMP_ENABLE,loadView:async()=>(await s()).ProfilesPanel.JSProfilerPanel.instance()}),i.ViewManager.registerViewExtension({location:"panel",id:"timeline",title:r(o.performance),commandPrompt:r(o.showPerformance),order:66,hasToolbar:!1,isPreviewFeature:!0,loadView:async()=>(await c()).TimelinePanel.TimelinePanel.instance({forceNew:null,isNode:!0})}),i.ActionRegistration.registerActionExtension({actionId:"profiler.js-toggle-recording",category:i.ActionRegistration.ActionCategory.JAVASCRIPT_PROFILER,title:r(o.startStopRecording),iconClass:"record-start",toggleable:!0,toggledIconClass:"record-stop",toggleWithRedColor:!0,contextTypes(){return e=e=>[e.ProfilesPanel.JSProfilerPanel],void 0===l?[]:e(l);var e},loadActionDelegate:async()=>(await s()).ProfilesPanel.JSProfilerPanel.instance(),bindings:[{platform:"windows,linux",shortcut:"Ctrl+E"},{platform:"mac",shortcut:"Meta+E"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.show-history",loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),category:i.ActionRegistration.ActionCategory.PERFORMANCE,title:r(o.showRecentTimelineSessions),contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),bindings:[{platform:"windows,linux",shortcut:"Ctrl+H"},{platform:"mac",shortcut:"Meta+Y"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.toggle-recording",category:i.ActionRegistration.ActionCategory.PERFORMANCE,iconClass:"record-start",toggleable:!0,toggledIconClass:"record-stop",toggleWithRedColor:!0,contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),options:[{value:!0,title:r(o.record)},{value:!1,title:r(o.stop)}],bindings:[{platform:"windows,linux",shortcut:"Ctrl+E"},{platform:"mac",shortcut:"Meta+E"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.record-reload",iconClass:"refresh",contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),category:i.ActionRegistration.ActionCategory.PERFORMANCE,title:r(o.startProfilingAndReloadPage),loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),bindings:[{platform:"windows,linux",shortcut:"Ctrl+Shift+E"},{platform:"mac",shortcut:"Meta+Shift+E"}]});
import*as e from"../../core/i18n/i18n.js";import*as t from"../../core/root/root.js";import*as i from"../../ui/legacy/legacy.js";const o={profiler:"Profiler",showProfiler:"Show Profiler",performance:"Performance",showPerformance:"Show Performance",startStopRecording:"Start/stop recording",showRecentTimelineSessions:"Show recent timeline sessions",record:"Record",stop:"Stop",startProfilingAndReloadPage:"Start profiling and reload page"},n=e.i18n.registerUIStrings("panels/js_profiler/js_profiler-meta.ts",o),r=e.i18n.getLazilyComputedLocalizedString.bind(void 0,n);let a,l;async function s(){return l||(l=await import("../profiler/profiler.js")),l}async function c(){return a||(a=await import("../timeline/timeline.js")),a}function g(e){return void 0===a?[]:e(a)}i.ViewManager.registerViewExtension({location:"panel",id:"js_profiler",title:r(o.profiler),commandPrompt:r(o.showProfiler),order:65,persistence:"permanent",experiment:t.Runtime.ExperimentName.JS_PROFILER_TEMP_ENABLE,loadView:async()=>(await s()).ProfilesPanel.JSProfilerPanel.instance()}),i.ActionRegistration.registerActionExtension({actionId:"profiler.js-toggle-recording",category:i.ActionRegistration.ActionCategory.JAVASCRIPT_PROFILER,title:r(o.startStopRecording),iconClass:"record-start",toggleable:!0,toggledIconClass:"record-stop",toggleWithRedColor:!0,contextTypes(){return e=e=>[e.ProfilesPanel.JSProfilerPanel],void 0===l?[]:e(l);var e},loadActionDelegate:async()=>(await s()).ProfilesPanel.JSProfilerPanel.instance(),bindings:[{platform:"windows,linux",shortcut:"Ctrl+E"},{platform:"mac",shortcut:"Meta+E"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.show-history",loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),category:i.ActionRegistration.ActionCategory.PERFORMANCE,title:r(o.showRecentTimelineSessions),contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),bindings:[{platform:"windows,linux",shortcut:"Ctrl+H"},{platform:"mac",shortcut:"Meta+Y"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.toggle-recording",category:i.ActionRegistration.ActionCategory.PERFORMANCE,iconClass:"record-start",toggleable:!0,toggledIconClass:"record-stop",toggleWithRedColor:!0,contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),options:[{value:!0,title:r(o.record)},{value:!1,title:r(o.stop)}],bindings:[{platform:"windows,linux",shortcut:"Ctrl+E"},{platform:"mac",shortcut:"Meta+E"}]}),i.ActionRegistration.registerActionExtension({actionId:"timeline.record-reload",iconClass:"refresh",contextTypes:()=>g((e=>[e.TimelinePanel.TimelinePanel])),category:i.ActionRegistration.ActionCategory.PERFORMANCE,title:r(o.startProfilingAndReloadPage),loadActionDelegate:async()=>(await c()).TimelinePanel.ActionDelegate.instance(),bindings:[{platform:"windows,linux",shortcut:"Ctrl+Shift+E"},{platform:"mac",shortcut:"Meta+Shift+E"}]});
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import*as e from"../../ui/legacy/legacy.js";import*as t from"../../core/i18n/i18n.js";import*as n from"../../ui/lit-html/lit-html.js";const i=new CSSStyleSheet;i.replaceSync('.rn-welcome-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:16px;text-align:center;background-color:var(--color-background-elevation-0)}.rn-welcome-header{display:flex;align-items:center;margin-bottom:16px}.rn-welcome-icon{width:30px;height:30px;border-radius:4px;margin-right:12px}.rn-welcome-title{font-size:20px;color:var(--color-text-primary)}.rn-welcome-tagline{margin-bottom:24px;font-size:1rem;line-height:1.3;color:var(--color-text-secondary)}.rn-welcome-links{display:flex;align-items:center}.rn-welcome-links > .devtools-link{position:relative;margin:0 16px;font-size:14px}.rn-welcome-links > .devtools-link:not(:last-child)::after{content:"";position:absolute;right:-16px;height:16px;border-right:1px solid var(--color-details-hairline)}\n/*# sourceURL=rnWelcome.css */\n');const o={debuggerBrandName:"React Native JS Inspector",welcomeMessage:"Welcome to debugging in React Native",docsLabel:"Debugging docs",whatsNewLabel:"What's new"},{render:r,html:l}=n,s=t.i18n.registerUIStrings("panels/rn_welcome/RNWelcome.ts",o),c=t.i18n.getLocalizedString.bind(void 0,s);let a;class d extends e.Widget.VBox{static instance(e={forceNew:null}){const{forceNew:t}=e;return a&&!t||(a=new d),a}constructor(){super(!0,!0)}wasShown(){super.wasShown(),this.registerCSSFiles([i]),this.render(),e.InspectorView.InspectorView.instance().showDrawer(!0)}render(){const e=new URL("../../Images/react_native/welcomeIcon.png",import.meta.url).toString();r(l` <div class="rn-welcome-panel"> <div class="rn-welcome-header"> <img class="rn-welcome-icon" src="${e}" role="presentation"> <div class="rn-welcome-title"> ${c(o.debuggerBrandName)} </div> </div> <div class="rn-welcome-tagline"> ${c(o.welcomeMessage)} </div> <div class="rn-welcome-links"> <x-link class="devtools-link" href="https://reactnative.dev/docs/next/debugging"> ${c(o.docsLabel)} </x-link> <x-link class="devtools-link" href="https://reactnative.dev/blog/tags/debugging"> ${c(o.whatsNewLabel)} </x-link> </div> </div> `,this.contentElement,{host:this})}}var g=Object.freeze({__proto__:null,RNWelcomeImpl:d});export{g as RNWelcome};
import*as e from"../../ui/legacy/legacy.js";import*as r from"../../core/i18n/i18n.js";import*as t from"../../ui/lit-html/lit-html.js";const o=new CSSStyleSheet;o.replaceSync('.rn-welcome-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:16px;text-align:center;background-color:var(--color-background-elevation-0)}.rn-welcome-header{display:flex;align-items:center;margin-bottom:16px}.rn-welcome-icon{width:30px;height:30px;border-radius:4px;margin-right:12px}.rn-welcome-title{font-size:20px;color:var(--color-text-primary)}.rn-welcome-title-accessory{margin-left:12px;padding:4px 8px;border-radius:4px;background-color:var(--color-purple-bright);font-size:12px;color:var(--color-on-primary)}.rn-welcome-tagline{margin-bottom:24px;font-size:1rem;line-height:1.3;color:var(--color-text-secondary)}.rn-welcome-links{display:flex;align-items:center}.rn-welcome-links > .devtools-link{position:relative;margin:0 16px;font-size:14px}.rn-welcome-links > .devtools-link:not(:last-child)::after{content:"";position:absolute;right:-16px;height:16px;border-right:1px solid var(--color-details-hairline)}\n/*# sourceURL=rnWelcome.css */\n');const n={debuggerBrandName:"React Native JS Inspector",techPreviewLabel:"Technology Preview",welcomeMessage:"Welcome to debugging in React Native",docsLabel:"Debugging docs",whatsNewLabel:"What's new"},{render:i,html:l}=t,s=r.i18n.registerUIStrings("panels/rn_welcome/RNWelcome.ts",n),c=r.i18n.getLocalizedString.bind(void 0,s);let a;class d extends e.Widget.VBox{static instance(e={forceNew:null}){const{forceNew:r}=e;return a&&!r||(a=new d),a}constructor(){super(!0,!0)}wasShown(){super.wasShown(),this.registerCSSFiles([o]),this.render(),e.InspectorView.InspectorView.instance().showDrawer(!0)}render(){const e=new URL("../../Images/react_native/welcomeIcon.png",import.meta.url).toString();i(l` <div class="rn-welcome-panel"> <div class="rn-welcome-header"> <img class="rn-welcome-icon" src="${e}" role="presentation"> <div class="rn-welcome-title"> ${c(n.debuggerBrandName)} </div> <div class="rn-welcome-title-accessory"> ${c(n.techPreviewLabel)} </div> </div> <div class="rn-welcome-tagline"> ${c(n.welcomeMessage)} </div> <div class="rn-welcome-links"> <x-link class="devtools-link" href="https://reactnative.dev/docs/debugging"> ${c(n.docsLabel)} </x-link> <x-link class="devtools-link" href="https://reactnative.dev/blog"> ${c(n.whatsNewLabel)} </x-link> </div> </div> `,this.contentElement,{host:this})}}var m=Object.freeze({__proto__:null,RNWelcomeImpl:d});export{m as RNWelcome};
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/rn_inspector/rn_inspector.js"></script>
<body class="undocked" id="-blink-dev-tools">
@@ -6,7 +6,7 @@
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>DevTools</title>
<title>DevTools (React Native)</title>
<style>
@media (prefers-color-scheme: dark) {
body {
@@ -16,5 +16,6 @@
</style>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'; script-src 'self' 'unsafe-eval' https://chrome-devtools-frontend.appspot.com">
<meta name="referrer" content="no-referrer">
<link rel="icon" href="./Images/favicon.ico">
<script type="module" src="./entrypoints/worker_app/worker_app.js"></script>
<body class="undocked" id="-blink-dev-tools">
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/debugger-frontend",
"version": "0.73.0",
"version": "0.73.2",
"description": "Debugger frontend for React Native based on Chrome DevTools",
"keywords": [
"react-native",
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/dev-middleware",
"version": "0.73.1",
"version": "0.73.3",
"description": "Dev server middleware for React Native",
"keywords": [
"react-native",
@@ -23,7 +23,7 @@
],
"dependencies": {
"@isaacs/ttlcache": "^1.4.1",
"@react-native/debugger-frontend": "^0.73.0",
"@react-native/debugger-frontend": "^0.73.2",
"chrome-launcher": "^0.15.2",
"chromium-edge-launcher": "^1.0.0",
"connect": "^3.6.5",
@@ -1,6 +1,6 @@
{
"name": "@react-native/eslint-config",
"version": "0.73.0",
"version": "0.73.1",
"description": "ESLint config for React Native",
"license": "MIT",
"repository": {
@@ -22,7 +22,7 @@
"dependencies": {
"@babel/core": "^7.20.0",
"@babel/eslint-parser": "^7.20.0",
"@react-native/eslint-plugin": "^0.73.0",
"@react-native/eslint-plugin": "^0.73.1",
"@typescript-eslint/eslint-plugin": "^5.57.1",
"@typescript-eslint/parser": "^5.57.1",
"eslint-config-prettier": "^8.5.0",
@@ -1,6 +1,6 @@
{
"name": "@react-native/eslint-plugin",
"version": "0.73.0",
"version": "0.73.1",
"description": "ESLint rules for @react-native/eslint-config",
"license": "MIT",
"repository": {
@@ -9,7 +9,12 @@
"directory": "packages/eslint-plugin-react-native"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/eslint-plugin-react-native#readme",
"keywords": ["eslint", "rules", "eslint-config", "react-native"],
"keywords": [
"eslint",
"rules",
"eslint-config",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
+9 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/eslint-plugin-specs",
"version": "0.73.0",
"version": "0.73.1",
"description": "ESLint rules to validate NativeModule and Component Specs",
"license": "MIT",
"repository": {
@@ -9,7 +9,14 @@
"directory": "packages/eslint-plugin-specs"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/eslint-plugin-specs#readme",
"keywords": ["eslint", "rules", "react-native", "native-modules", "components", "specs"],
"keywords": [
"eslint",
"rules",
"react-native",
"native-modules",
"components",
"specs"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
+8 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/metro-config",
"version": "0.73.0",
"version": "0.73.1",
"description": "Metro configuration for React Native.",
"license": "MIT",
"repository": {
@@ -9,15 +9,19 @@
"directory": "packages/metro-config"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/metro-config#readme",
"keywords": ["metro", "config", "react-native"],
"keywords": [
"metro",
"config",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
},
"exports": "./index.js",
"dependencies": {
"@react-native/metro-babel-transformer": "^0.73.11",
"@react-native/js-polyfills": "^0.73.0",
"@react-native/metro-babel-transformer": "^0.73.12",
"@react-native/js-polyfills": "^0.73.1",
"metro-config": "0.79.1",
"metro-runtime": "0.79.1"
}
+8 -6
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/normalize-colors",
"version": "0.73.0",
"version": "0.73.2",
"description": "Color normalization for React Native.",
"license": "MIT",
"repository": {
@@ -9,9 +9,11 @@
"directory": "packages/normalize-color"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/normalize-color#readme",
"keywords": ["color", "normalization", "normalize-colors", "react-native"],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
}
"keywords": [
"color",
"normalization",
"normalize-colors",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues"
}
+8 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/js-polyfills",
"version": "0.73.0",
"version": "0.73.1",
"description": "Polyfills for React Native.",
"license": "MIT",
"repository": {
@@ -9,7 +9,13 @@
"directory": "packages/polyfills"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/polyfills#readme",
"keywords": ["polyfill", "polyfills", "js", "js-polyfills", "react-native"],
"keywords": [
"polyfill",
"polyfills",
"js",
"js-polyfills",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
@@ -1,6 +1,6 @@
{
"name": "@react-native/babel-preset",
"version": "0.73.16",
"version": "0.73.18",
"description": "Babel preset for React Native applications",
"main": "src/index.js",
"repository": {
@@ -1,6 +1,6 @@
{
"name": "@react-native/metro-babel-transformer",
"version": "0.73.11",
"version": "0.73.12",
"description": "Babel transformer for React Native applications.",
"main": "src/index.js",
"repository": {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/codegen",
"version": "0.73.0",
"version": "0.73.1",
"description": "Code generation tools for React Native",
"license": "MIT",
"repository": {
@@ -1,6 +1,6 @@
{
"name": "@react-native/gradle-plugin",
"version": "0.73.0",
"version": "0.73.1",
"description": "Gradle Plugin for React Native",
"license": "MIT",
"repository": {
@@ -9,7 +9,11 @@
"directory": "packages/react-native-gradle-plugin"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/react-native-gradle-plugin#readme",
"keywords": ["gradle", "plugin", "react-native"],
"keywords": [
"gradle",
"plugin",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
@@ -87,6 +87,13 @@ static NSString *const kRNConcurrentRoot = @"concurrentRoot";
if (enableBridgeless) {
#if RCT_NEW_ARCH_ENABLED
// Enable native view config interop only if both bridgeless mode and Fabric is enabled.
RCTSetUseNativeViewConfigsInBridgelessMode([self fabricEnabled]);
// Enable TurboModule interop by default in Bridgeless mode
RCTEnableTurboModuleInterop(YES);
RCTEnableTurboModuleInteropBridgeProxy(YES);
[self createReactHost];
[self unstable_registerLegacyComponents];
[RCTComponentViewFactory currentComponentViewFactory].thirdPartyFabricComponentsProvider = self;
+3 -3
View File
@@ -10,8 +10,8 @@
*/
exports.version = {
major: 1000,
minor: 0,
major: 0,
minor: 73,
patch: 0,
prerelease: null,
prerelease: 'rc.1',
};
@@ -40,7 +40,9 @@ exports.checkVersions = function checkVersions(): void {
};
function _formatVersion(
version: (typeof Platform)['constants']['reactNativeVersion'],
version:
| (typeof Platform)['constants']['reactNativeVersion']
| {major: number, minor: number, patch: number, prerelease: ?string},
): string {
return (
`${version.major}.${version.minor}.${version.patch}` +
@@ -13,7 +13,6 @@
import type {RootTag} from '../Types/RootTagTypes';
import {unstable_hasComponent} from '../NativeComponent/NativeComponentRegistryUnstable';
import ReactNativeFeatureFlags from './ReactNativeFeatureFlags';
let cachedConstants = null;
@@ -22,6 +21,10 @@ const errorMessageForMethod = (methodName: string): string =>
methodName +
"' is not available in the new React Native architecture.";
function nativeViewConfigsInBridgelessModeEnabled(): boolean {
return global.RN$LegacyInterop_UIManager_getConstants !== undefined;
}
function getCachedConstants(): Object {
if (!cachedConstants) {
cachedConstants = global.RN$LegacyInterop_UIManager_getConstants();
@@ -31,7 +34,7 @@ function getCachedConstants(): Object {
const UIManagerJS: {[string]: $FlowFixMe} = {
getViewManagerConfig: (viewManagerName: string): mixed => {
if (ReactNativeFeatureFlags.enableNativeViewConfigsInBridgelessMode()) {
if (nativeViewConfigsInBridgelessModeEnabled()) {
return getCachedConstants()[viewManagerName];
} else {
console.error(
@@ -46,7 +49,7 @@ const UIManagerJS: {[string]: $FlowFixMe} = {
return unstable_hasComponent(viewManagerName);
},
getConstants: (): Object => {
if (ReactNativeFeatureFlags.enableNativeViewConfigsInBridgelessMode()) {
if (nativeViewConfigsInBridgelessModeEnabled()) {
return getCachedConstants();
} else {
console.error(errorMessageForMethod('getConstants'));
@@ -179,7 +182,7 @@ const UIManagerJS: {[string]: $FlowFixMe} = {
console.error(errorMessageForMethod('dismissPopupMenu')),
};
if (ReactNativeFeatureFlags.enableNativeViewConfigsInBridgelessMode()) {
if (nativeViewConfigsInBridgelessModeEnabled()) {
Object.keys(getCachedConstants()).forEach(viewConfigName => {
UIManagerJS[viewConfigName] = getCachedConstants()[viewConfigName];
});
@@ -54,10 +54,6 @@ export type FeatureFlags = {|
* Enables use of setNativeProps in JS driven animations.
*/
shouldUseSetNativePropsInFabric: () => boolean,
/**
* Enables native view configs in brdgeless mode.
*/
enableNativeViewConfigsInBridgelessMode: () => boolean,
/**
* Enables a hotfix for forcing materialization of views with elevation set.
*/
@@ -74,7 +70,6 @@ const ReactNativeFeatureFlags: FeatureFlags = {
enableAccessToHostTreeInFabric: () => false,
shouldUseAnimatedObjectForTransform: () => false,
shouldUseSetNativePropsInFabric: () => false,
enableNativeViewConfigsInBridgelessMode: () => false,
shouldForceUnflattenForElevation: () => false,
};
@@ -21,10 +21,10 @@ NSDictionary* RCTGetReactNativeVersion(void)
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^(void){
__rnVersion = @{
RCTVersionMajor: @(1000),
RCTVersionMinor: @(0),
RCTVersionMajor: @(0),
RCTVersionMinor: @(73),
RCTVersionPatch: @(0),
RCTVersionPrerelease: [NSNull null],
RCTVersionPrerelease: @"rc.1",
};
});
return __rnVersion;
@@ -1489,9 +1489,10 @@ NSMutableDictionary<NSString *, id> *RCTModuleConstantsForDestructuredComponent(
// lazifyViewManagerConfig function in JS. This fuction uses NativeModules global object that is not available in the
// New Architecture. To make native view configs work in the New Architecture we will populate these properties in
// native.
moduleConstants[@"Commands"] = viewConfig[@"Commands"];
moduleConstants[@"Constants"] = viewConfig[@"Constants"];
if (RCTGetUseNativeViewConfigsInBridgelessMode()) {
moduleConstants[@"Commands"] = viewConfig[@"Commands"];
moduleConstants[@"Constants"] = viewConfig[@"Constants"];
}
// Add direct events
for (NSString *eventName in viewConfig[@"directEvents"]) {
if (!directEvents[eventName]) {
@@ -480,11 +480,6 @@ static RCTPropBlock createNSInvocationSetter(NSMethodSignature *typeSignature, S
}
}
NSDictionary<NSString *, NSNumber *> *commands = [self commandsForViewMangerClass:managerClass
methods:methods
methodCount:count];
free(methods);
#if RCT_DEBUG
for (NSString *event in bubblingEvents) {
if ([directEvents containsObject:event]) {
@@ -499,15 +494,22 @@ static RCTPropBlock createNSInvocationSetter(NSMethodSignature *typeSignature, S
Class superClass = [managerClass superclass];
return @{
NSMutableDictionary *result = [[NSMutableDictionary alloc] initWithDictionary:@{
@"propTypes" : propTypes,
@"directEvents" : directEvents,
@"bubblingEvents" : bubblingEvents,
@"capturingEvents" : capturingEvents,
@"baseModuleName" : superClass == [NSObject class] ? (id)kCFNull : RCTViewManagerModuleNameForClass(superClass),
@"Commands" : commands,
@"Constants" : [self constantsForViewMangerClass:managerClass],
};
}];
if (RCTGetUseNativeViewConfigsInBridgelessMode()) {
result[@"Commands"] = [self commandsForViewMangerClass:managerClass methods:methods methodCount:count];
result[@"Constants"] = [self constantsForViewMangerClass:managerClass];
}
free(methods);
return result;
}
- (NSDictionary<NSString *, id> *)viewConfig
@@ -21,6 +21,7 @@ import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPl
import com.facebook.react.ReactInstanceEventListener
import com.facebook.react.ReactInstanceManager
import com.facebook.react.bridge.ReactContext
import com.facebook.react.config.ReactFeatureFlags
import com.facebook.react.modules.network.NetworkingModule
/**
@@ -30,6 +31,9 @@ import com.facebook.react.modules.network.NetworkingModule
object ReactNativeFlipper {
@JvmStatic
fun initializeFlipper(context: Context, reactInstanceManager: ReactInstanceManager) {
if (ReactFeatureFlags.enableBridgelessArchitecture) {
return
}
if (FlipperUtils.shouldEnableFlipper(context)) {
val client = AndroidFlipperClient.getInstance(context)
client.addPlugin(InspectorFlipperPlugin(context, DescriptorMapping.withDefaults()))
@@ -1,4 +1,4 @@
VERSION_NAME=1000.0.0
VERSION_NAME=0.73.0-rc.1
react.internal.publishingGroup=com.facebook.react
android.useAndroidX=true
@@ -34,6 +34,8 @@ object DefaultNewArchitectureEntryPoint {
ReactFeatureFlags.enableFabricRenderer = fabricEnabled
ReactFeatureFlags.unstable_useFabricInterop = fabricEnabled
ReactFeatureFlags.enableBridgelessArchitecture = bridgelessEnabled
ReactFeatureFlags.useNativeViewConfigsInBridgelessMode = fabricEnabled && bridgelessEnabled
ReactFeatureFlags.unstable_useTurboModuleInterop = bridgelessEnabled
this.privateFabricEnabled = fabricEnabled
this.privateTurboModulesEnabled = turboModulesEnabled
@@ -31,6 +31,6 @@ class JSCExecutor internal constructor(jscConfig: ReadableNativeMap) :
SoLoader.loadLibrary("jscexecutor")
}
private external fun initHybrid(jscConfig: ReadableNativeMap): HybridData?
@JvmStatic private external fun initHybrid(jscConfig: ReadableNativeMap): HybridData?
}
}
@@ -15,8 +15,8 @@ import java.util.Map;
public class ReactNativeVersion {
public static final Map<String, Object> VERSION = MapBuilder.<String, Object>of(
"major", 1000,
"minor", 0,
"major", 0,
"minor", 73,
"patch", 0,
"prerelease", null);
"prerelease", "rc.1");
}
@@ -597,7 +597,8 @@ public class ReactHostImpl implements ReactHost {
return null;
}
public DefaultHardwareBackBtnHandler getDefaultBackButtonHandler() {
/* package */
DefaultHardwareBackBtnHandler getDefaultBackButtonHandler() {
return () -> {
UiThreadUtil.assertOnUiThread();
if (mDefaultHardwareBackBtnHandler != null) {
@@ -15,10 +15,10 @@
namespace facebook::react {
constexpr struct {
int32_t Major = 1000;
int32_t Minor = 0;
int32_t Major = 0;
int32_t Minor = 73;
int32_t Patch = 0;
std::string_view Prerelease = "";
std::string_view Prerelease = "rc.1";
} ReactNativeVersion;
} // namespace facebook::react
+12 -12
View File
@@ -1,6 +1,6 @@
{
"name": "react-native",
"version": "1000.0.0",
"version": "0.73.0-rc.1",
"description": "A framework for building native apps using React",
"license": "MIT",
"repository": {
@@ -93,16 +93,16 @@
},
"dependencies": {
"@jest/create-cache-key-function": "^29.6.3",
"@react-native-community/cli": "12.0.0-alpha.15",
"@react-native-community/cli-platform-android": "12.0.0-alpha.15",
"@react-native-community/cli-platform-ios": "12.0.0-alpha.15",
"@react-native/assets-registry": "^0.73.0",
"@react-native/community-cli-plugin": "^0.73.0",
"@react-native/codegen": "^0.73.0",
"@react-native/gradle-plugin": "^0.73.0",
"@react-native/js-polyfills": "^0.73.0",
"@react-native/normalize-colors": "^0.73.0",
"@react-native/virtualized-lists": "^0.73.0",
"@react-native-community/cli": "12.0.0-alpha.17",
"@react-native-community/cli-platform-android": "12.0.0-alpha.17",
"@react-native-community/cli-platform-ios": "12.0.0-alpha.17",
"@react-native/assets-registry": "^0.73.1",
"@react-native/community-cli-plugin": "^0.73.6",
"@react-native/codegen": "^0.73.1",
"@react-native/gradle-plugin": "^0.73.1",
"@react-native/js-polyfills": "^0.73.1",
"@react-native/normalize-colors": "^0.73.2",
"@react-native/virtualized-lists": "^0.73.1",
"abort-controller": "^3.0.0",
"anser": "^1.4.9",
"ansi-regex": "^5.0.0",
@@ -148,4 +148,4 @@
}
]
}
}
}
@@ -613,7 +613,7 @@ class UtilsTests < Test::Unit::TestCase
# Assert
user_project_mock.build_configurations.each do |config|
assert_equal("$(inherited) -Wl -ld_classic ", config.build_settings["OTHER_LDFLAGS"])
assert_equal("$(inherited) -Wl -ld_classic", config.build_settings["OTHER_LDFLAGS"])
end
# User project and Pods project
@@ -662,7 +662,7 @@ class UtilsTests < Test::Unit::TestCase
# Assert
user_project_mock.build_configurations.each do |config|
assert_equal("$(inherited) ", config.build_settings["OTHER_LDFLAGS"])
assert_equal("$(inherited)", config.build_settings["OTHER_LDFLAGS"])
end
# User project and Pods project
@@ -76,7 +76,7 @@ class ReactNativePodsUtils
excluded_archs_includes_I386 = current_setting.include?("i386")
if !excluded_archs_includes_I386
# Hermes does not support `i386` architecture
# Hermes does not support 'i386' architecture
config.build_settings[key] = "#{current_setting} i386".strip
end
end
@@ -341,20 +341,26 @@ class ReactNativePodsUtils
def self.add_value_to_setting_if_missing(config, setting_name, value)
old_config = config.build_settings[setting_name]
if !old_config.include?(value)
config.build_settings[setting_name] << value
if old_config.is_a?(Array)
old_config = old_config.join(" ")
end
trimmed_value = value.strip()
if !old_config.include?(trimmed_value)
config.build_settings[setting_name] = "#{old_config.strip()} #{trimmed_value}".strip()
end
end
def self.remove_value_to_setting_if_present(config, setting_name, value)
old_config = config.build_settings[setting_name]
if old_config.include?(value)
# Old config can be either an Array or a String
if old_config.is_a?(Array)
old_config = old_config.join(" ")
end
new_config = old_config.gsub(value, "")
config.build_settings[setting_name] = new_config
if old_config.is_a?(Array)
old_config = old_config.join(" ")
end
trimmed_value = value.strip()
if old_config.include?(trimmed_value)
new_config = old_config.gsub(trimmed_value, "")
config.build_settings[setting_name] = new_config.strip()
end
end
@@ -0,0 +1 @@
hermes-2023-09-26-RNv0.73.0-ee2922a50fb719bdb378025d95dbd32ad93cd679
@@ -5,11 +5,15 @@ import com.facebook.react.PackageList
import com.facebook.react.ReactApplication
import com.facebook.react.ReactNativeHost
import com.facebook.react.ReactPackage
import com.facebook.react.common.annotations.UnstableReactNativeAPI
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
import com.facebook.react.defaults.DefaultReactHost
import com.facebook.react.defaults.DefaultReactNativeHost
import com.facebook.react.flipper.ReactNativeFlipper
import com.facebook.react.interfaces.ReactHost
import com.facebook.soloader.SoLoader
@UnstableReactNativeAPI
class MainApplication : Application(), ReactApplication {
override val reactNativeHost: ReactNativeHost =
@@ -28,6 +32,14 @@ class MainApplication : Application(), ReactApplication {
override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
}
override val reactHost: ReactHost
get() =
DefaultReactHost.getDefaultReactHost(
context = this,
packageList = PackageList(this).packages,
jsMainModulePath = "index",
isHermesEnabled = BuildConfig.IS_HERMES_ENABLED)
override fun onCreate() {
super.onCreate()
SoLoader.init(this, false)
+5 -5
View File
@@ -11,16 +11,16 @@
},
"dependencies": {
"react": "18.2.0",
"react-native": "1000.0.0"
"react-native": "0.73.0-rc.1"
},
"devDependencies": {
"@babel/core": "^7.20.0",
"@babel/preset-env": "^7.20.0",
"@babel/runtime": "^7.20.0",
"@react-native/babel-preset": "^0.73.16",
"@react-native/eslint-config": "^0.73.0",
"@react-native/metro-config": "^0.73.0",
"@react-native/typescript-config": "^0.73.0",
"@react-native/babel-preset": "^0.73.18",
"@react-native/eslint-config": "^0.73.1",
"@react-native/metro-config": "^0.73.1",
"@react-native/typescript-config": "^0.73.1",
"@types/react": "^18.2.6",
"@types/react-test-renderer": "^18.0.0",
"babel-jest": "^29.6.3",
File diff suppressed because it is too large Load Diff
+6 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/typescript-config",
"version": "0.73.0",
"version": "0.73.1",
"description": "Default TypeScript configuration for React Native apps",
"license": "MIT",
"repository": {
@@ -9,7 +9,11 @@
"directory": "packages/typescript-config"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/typescript-config#readme",
"keywords": ["typescript", "tsconfig", "react-native"],
"keywords": [
"typescript",
"tsconfig",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"main": "tsconfig.json"
}
+7 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@react-native/virtualized-lists",
"version": "0.73.0",
"version": "0.73.1",
"description": "Virtualized lists for React Native.",
"license": "MIT",
"repository": {
@@ -9,7 +9,12 @@
"directory": "packages/virtualized-lists"
},
"homepage": "https://github.com/facebook/react-native/tree/HEAD/packages/virtualized-lists#readme",
"keywords": ["lists", "virtualized-lists", "section-lists", "react-native"],
"keywords": [
"lists",
"virtualized-lists",
"section-lists",
"react-native"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
+69 -69
View File
@@ -2377,44 +2377,44 @@
optionalDependencies:
npmlog "2 || ^3.1.0 || ^4.0.0"
"@react-native-community/cli-clean@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.0.0-alpha.15.tgz#9c67e7420a3b79bfb91c06ed38a2ef7951af6561"
integrity sha512-TSLKuJmO2SGZAmJ+IoB4XhHN911EASTKw59CS29WyDY0t+U9oVA3FARO3rGlQ6EPy3hDZPmP5TOnrW7kPriZTw==
"@react-native-community/cli-clean@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.0.0-alpha.17.tgz#1b612ef1538ea5feca2a5ad3b4184fa1c54f7538"
integrity sha512-ZE5hB1c2wQo50Np4l+Vnmn4GZehhV6GFoK/35SQTbVOIRSSxXs2S/bOLzlS4MLOC7486EODodfQXpcDZqzkG1g==
dependencies:
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
execa "^5.0.0"
prompts "^2.4.2"
"@react-native-community/cli-config@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.0.0-alpha.15.tgz#3be6f3b07490a3a1ee83d60d3c4d3ecb9770b967"
integrity sha512-VOg8wDnzgVb7bLsb2ZLDVM56Rmnh0Y3RlcBjF/VvwylxT7F+mXeHYB07S06EBFnregULoqCrbKCzUxm1HpMlZQ==
"@react-native-community/cli-config@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.0.0-alpha.17.tgz#e2c1489d01e0e3ca5e68907d6ad5dee78b6f5ef0"
integrity sha512-BzL6ix++hlGH3RibZhsDIB7B5tF8GlTeDrspg4FYw9+7uS2YqRNCQsemiCGm56gnftwFLCMbCqbiZMjaAVHtvg==
dependencies:
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
cosmiconfig "^5.1.0"
deepmerge "^4.3.0"
glob "^7.1.3"
joi "^17.2.1"
"@react-native-community/cli-debugger-ui@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.0.0-alpha.15.tgz#7b5f0e6ef7c379bba1eb56a10a30b1f0546c590c"
integrity sha512-s0W0EYFFDZr7fJgdi6g5I9/UFipNzup3dv5BwSESU+pRgJ2cBw+vdrPJ+K3gF/C/mL2gslGlVqj97FhlBEWIiw==
"@react-native-community/cli-debugger-ui@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.0.0-alpha.17.tgz#e984231ce3fe3fc9489bc5ca892718e8372de690"
integrity sha512-JWP3cmtoThy/xaH7E/hqalanEqfRTduMwxd5F4hpZvVgbNJ9CSjrJoEMC362g4R2Uq5h/ZiD0EzhXYEZH1pRIg==
dependencies:
serve-static "^1.13.1"
"@react-native-community/cli-doctor@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.0.0-alpha.15.tgz#b77a195dc12b4625277bce2913309b414dc8284f"
integrity sha512-fXLCHZZ96yg1pSZBNXz2sDCcJxvX01jaCzA369djulFLYXhrbDefgcBGpVuEU2ha9NVUS4Mm5pSvuvoz1rfz+g==
"@react-native-community/cli-doctor@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.0.0-alpha.17.tgz#b6a02c7ef5e4026ff609c0b720843be12ad08fb6"
integrity sha512-ZNCmsoSsNJ+9KeNylw0Y7uHpPD/m0yPKtZTI7FFTY1HgcLgDufuE1FjcF9Az/vb+wPyqASvrP2owvKk+6OLBbg==
dependencies:
"@react-native-community/cli-config" "12.0.0-alpha.15"
"@react-native-community/cli-platform-android" "12.0.0-alpha.15"
"@react-native-community/cli-platform-ios" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-config" "12.0.0-alpha.17"
"@react-native-community/cli-platform-android" "12.0.0-alpha.17"
"@react-native-community/cli-platform-ios" "12.0.0-alpha.17"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
command-exists "^1.2.8"
deepmerge "^4.3.0"
@@ -2430,53 +2430,53 @@
wcwidth "^1.0.1"
yaml "^2.2.1"
"@react-native-community/cli-hermes@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.0.0-alpha.15.tgz#3b959a6a5efd530bf0b3d627e254aa114f6b6868"
integrity sha512-uW7328s19mgr8vH+FApQvr5ThZKiys0Pkt4h/AGgf+LKYPFEe1FAJJ+mYfRXi/On48iA473f/3xIFM+3EsTSZA==
"@react-native-community/cli-hermes@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.0.0-alpha.17.tgz#03e073cd9e93c923439a8846b2571014c0a673b0"
integrity sha512-/tW/iogp77REppUKUGvdYxSDudxCGXpURjsJevElgUxNYzW22mbHfi5FJATzcwou9wDlhP5z8lsSDPyanbxnmQ==
dependencies:
"@react-native-community/cli-platform-android" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-platform-android" "12.0.0-alpha.17"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
hermes-profile-transformer "^0.0.6"
ip "^1.1.5"
"@react-native-community/cli-platform-android@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.0.0-alpha.15.tgz#3608487f28bbfe7d8454c04e1234df4e6aaf4e9e"
integrity sha512-mNPFKuxSZnj8OND/CVZhOfo5Dctlo8SsXzbADZF0RV/SR9YJ3adqc5U2eiIYSMab47uPXfjnByMsaWBGEmQh1Q==
"@react-native-community/cli-platform-android@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.0.0-alpha.17.tgz#74291d9ed59a02b3a0ef180808b0944883946996"
integrity sha512-1wEp4j8r9FJ1GBz2H4Q2SW3lDCVxnzBn8PetAhqlUPVptmazQN08x4u+EBhFJ9+ABUHUJ2hjtEUdA1/SqdyB2A==
dependencies:
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
execa "^5.0.0"
fast-xml-parser "^4.2.4"
glob "^7.1.3"
logkitty "^0.7.1"
"@react-native-community/cli-platform-ios@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.0.0-alpha.15.tgz#88377fb1300b80c9d157207d73081dc22016a80f"
integrity sha512-ULA667yPDI6RB2p+DyGaEAxiYBAJgs4nABqwoTxwR5RmsaZkbR9CJE0khCq/Zpq0cbeZfCRm4dS70p4caoKBbQ==
"@react-native-community/cli-platform-ios@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.0.0-alpha.17.tgz#b4143c79c3aa62aa55f1bce9e9d79a9dbb446d95"
integrity sha512-zbRIvJAnYnGDgJzUCOpo/XXewWZqMmrxQpTW4h4Vf2JWA3o3CWLX2lDd3eNWU73suE3dg76f6Og1FkXnns2QxA==
dependencies:
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
chalk "^4.1.2"
execa "^5.0.0"
fast-xml-parser "^4.0.12"
glob "^7.1.3"
ora "^5.4.1"
"@react-native-community/cli-plugin-metro@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.0.0-alpha.15.tgz#485179af3d5462417f20c32605c888cb663ba7d6"
integrity sha512-O6gjHHoiHmFQoxYLbXP7tTpDNQLcsaZvYzD+JzuDmk9/GLX1Oyec2gXPJ+Fnbqgpf76gAf+q11zldD/F3k1L7A==
"@react-native-community/cli-plugin-metro@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.0.0-alpha.17.tgz#7cc3e6a51fb31f02cb1cd36a43363e9b86c54dca"
integrity sha512-rhNNGaG0zjBBlCql5Ocq0oBdlYvfNHn9xH2YRT7+Dj+2j3P75uCiNExfdRNo1/3qdNY+dPmIVYbT4/0lglnVvA==
"@react-native-community/cli-server-api@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.0.0-alpha.15.tgz#59ea9fdd8a9d9362c79597745771510cbed5b0c1"
integrity sha512-vGOnZsreBPaSpoGN2TkhJGfu56Ybf1PoC6PcrUzKh+QgsOiI0AWimWiKUUvnEaQlURI7CeiMe1N0zghhbfC3nA==
"@react-native-community/cli-server-api@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.0.0-alpha.17.tgz#f80fe0f40b465a0cbba0b3d166db6f45111ac9ef"
integrity sha512-G7qJZkHEC445ltX6hM7xByWfHajuCP+jDOTzV5I4CSFzGS4f1xVhkNtuWphsnP3dKvNgOzp4t5GZrWo9qksJQQ==
dependencies:
"@react-native-community/cli-debugger-ui" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-debugger-ui" "12.0.0-alpha.17"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
compression "^1.7.1"
connect "^3.6.5"
errorhandler "^1.5.1"
@@ -2485,10 +2485,10 @@
serve-static "^1.13.1"
ws "^7.5.1"
"@react-native-community/cli-tools@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.0.0-alpha.15.tgz#d9ee1fc6b49b0a34f982c6634a50e61ac332394a"
integrity sha512-AL/UskYhi4U79T5660oW/Aa27N/wp8lRgnpkFP7saL2zy/I0ZrBTUmHPt1pDdwMnjMfYXJGyyoomMbwqWUpLig==
"@react-native-community/cli-tools@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.0.0-alpha.17.tgz#0c7520b41aa411b52a4cdc83ece759aa3dba72fa"
integrity sha512-NcBEiPgAp1iM5NSnZffizRHUYF38w4d+chT3MUgJWEGqSgQBnITqOF/tsnk4XBU8UH1lnxt9Hqng0Dh4RpPNAQ==
dependencies:
appdirsjs "^1.2.4"
chalk "^4.1.2"
@@ -2501,27 +2501,27 @@
shell-quote "^1.7.3"
sudo-prompt "^9.0.0"
"@react-native-community/cli-types@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.0.0-alpha.15.tgz#c5fc97902e9b983ec8d8df003043f44536dc7cd3"
integrity sha512-j1Lgi9eFqFGebyCY/kaqYguSSQ4yZzrGLRUx7zd/xxDF7PfQNpFqwxE7gPWtR6CUfVkVaoQyHbwTGHdoU0AakA==
"@react-native-community/cli-types@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.0.0-alpha.17.tgz#d52837a7c7c6e26d505ae0e43e535dc0fc994aa2"
integrity sha512-9GWpRdf+1BkrhLLGXOJYyEu/lw9XlWCgTfG2dnOBMfKRbb5Hb3JZTh5MvYdi+em27jy2cV/MlbfIyXj0W42arQ==
dependencies:
joi "^17.2.1"
"@react-native-community/cli@12.0.0-alpha.15":
version "12.0.0-alpha.15"
resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.0.0-alpha.15.tgz#819f0b5781a6cace226e0935ec5b0a82db32a777"
integrity sha512-8uHuAyTGzi8jGnAyuBPzIAPcpl6ol4UXVPENCKlGB5AfUzi643Xnh95NRUDy+6fi0PHl+w4ggRWUNKR6GjnRnQ==
"@react-native-community/cli@12.0.0-alpha.17":
version "12.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.0.0-alpha.17.tgz#fbaddf8ff6fd6262f62055b1aae3017df63c30cd"
integrity sha512-pXmXrU24DDsnVuZEkkKMZV3xNH3Z5UZ+fjw/MJtXeAUUbgfbd0iF4lf59zMpil8mUzb2u7X4G2gBCiXBh5/oLQ==
dependencies:
"@react-native-community/cli-clean" "12.0.0-alpha.15"
"@react-native-community/cli-config" "12.0.0-alpha.15"
"@react-native-community/cli-debugger-ui" "12.0.0-alpha.15"
"@react-native-community/cli-doctor" "12.0.0-alpha.15"
"@react-native-community/cli-hermes" "12.0.0-alpha.15"
"@react-native-community/cli-plugin-metro" "12.0.0-alpha.15"
"@react-native-community/cli-server-api" "12.0.0-alpha.15"
"@react-native-community/cli-tools" "12.0.0-alpha.15"
"@react-native-community/cli-types" "12.0.0-alpha.15"
"@react-native-community/cli-clean" "12.0.0-alpha.17"
"@react-native-community/cli-config" "12.0.0-alpha.17"
"@react-native-community/cli-debugger-ui" "12.0.0-alpha.17"
"@react-native-community/cli-doctor" "12.0.0-alpha.17"
"@react-native-community/cli-hermes" "12.0.0-alpha.17"
"@react-native-community/cli-plugin-metro" "12.0.0-alpha.17"
"@react-native-community/cli-server-api" "12.0.0-alpha.17"
"@react-native-community/cli-tools" "12.0.0-alpha.17"
"@react-native-community/cli-types" "12.0.0-alpha.17"
chalk "^4.1.2"
commander "^9.4.1"
execa "^5.0.0"