react-native-tvos 0.79.2-0 → 0.79.4-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/AppDelegate/RCTReactNativeFactory.mm +0 -4
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/README.md +3 -1
- package/React/Base/RCTRootView.h +7 -1
- package/React/Base/RCTRootView.m +38 -0
- package/React/Base/RCTRootViewInternal.h +1 -0
- package/React/Base/RCTTVRemoteSelectHandler.h +4 -0
- package/React/Base/RCTTVRemoteSelectHandler.m +19 -6
- package/React/Base/RCTVersion.m +1 -1
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +6 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +37 -0
- package/React/CoreModules/RCTDeviceInfo.mm +51 -19
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +0 -6
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +0 -9
- package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +18 -4
- package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +3 -5
- package/React/Views/RCTTVView.m +4 -4
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/publish.gradle +5 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +1 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +20 -36
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +0 -3
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +1 -15
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +1 -4
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsc/React-jsc.podspec +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +1 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +1 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +8 -26
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +2 -4
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +1 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +1 -10
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +1 -2
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +1 -6
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +1 -3
- package/ReactCommon/react/runtime/TimerManager.cpp +6 -4
- package/ReactCommon/react/runtime/TimerManager.h +3 -1
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +0 -1
- package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +9 -5
- package/package.json +9 -8
- package/scripts/cocoapods/utils.rb +8 -3
- package/scripts/codegen/generate-artifacts-executor.js +55 -18
- package/sdks/.hermesversion +1 -1
- package/sdks/hermesc/osx-bin/hermes +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +1 -6
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +1 -2
- package/types/index.d.ts +1 -1
- package/types/tsconfig.test.json +16 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<4f6ee8b8bae8ea84fab77eb9feb63f9d>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -229,11 +229,6 @@ bool NativeReactNativeFeatureFlags::useAlwaysAvailableJSErrorHandling(
|
|
|
229
229
|
return ReactNativeFeatureFlags::useAlwaysAvailableJSErrorHandling();
|
|
230
230
|
}
|
|
231
231
|
|
|
232
|
-
bool NativeReactNativeFeatureFlags::useEditTextStockAndroidFocusBehavior(
|
|
233
|
-
jsi::Runtime& /*runtime*/) {
|
|
234
|
-
return ReactNativeFeatureFlags::useEditTextStockAndroidFocusBehavior();
|
|
235
|
-
}
|
|
236
|
-
|
|
237
232
|
bool NativeReactNativeFeatureFlags::useFabricInterop(
|
|
238
233
|
jsi::Runtime& /*runtime*/) {
|
|
239
234
|
return ReactNativeFeatureFlags::useFabricInterop();
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<0009cf8a05d254e3695e7ce57fc5f8af>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -111,8 +111,6 @@ class NativeReactNativeFeatureFlags
|
|
|
111
111
|
|
|
112
112
|
bool useAlwaysAvailableJSErrorHandling(jsi::Runtime& runtime);
|
|
113
113
|
|
|
114
|
-
bool useEditTextStockAndroidFocusBehavior(jsi::Runtime& runtime);
|
|
115
|
-
|
|
116
114
|
bool useFabricInterop(jsi::Runtime& runtime);
|
|
117
115
|
|
|
118
116
|
bool useNativeViewConfigsInBridgelessMode(jsi::Runtime& runtime);
|
|
@@ -242,8 +242,9 @@ void TimerManager::attachGlobals(jsi::Runtime& runtime) {
|
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
if (!args[0].isObject() || !args[0].asObject(rt).isFunction(rt)) {
|
|
245
|
-
// Do not throw any error to match web spec
|
|
246
|
-
|
|
245
|
+
// Do not throw any error to match web spec; instead return 0, an
|
|
246
|
+
// invalid timer id
|
|
247
|
+
return 0;
|
|
247
248
|
}
|
|
248
249
|
|
|
249
250
|
auto callback = args[0].getObject(rt).getFunction(rt);
|
|
@@ -300,8 +301,9 @@ void TimerManager::attachGlobals(jsi::Runtime& runtime) {
|
|
|
300
301
|
}
|
|
301
302
|
|
|
302
303
|
if (!args[0].isObject() || !args[0].asObject(rt).isFunction(rt)) {
|
|
303
|
-
throw
|
|
304
|
-
|
|
304
|
+
// Do not throw any error to match web spec; instead return 0, an
|
|
305
|
+
// invalid timer id
|
|
306
|
+
return 0;
|
|
305
307
|
}
|
|
306
308
|
auto callback = args[0].getObject(rt).getFunction(rt);
|
|
307
309
|
auto delay = count > 1
|
|
@@ -93,7 +93,9 @@ class TimerManager {
|
|
|
93
93
|
|
|
94
94
|
// Each timeout that is registered on this queue gets a sequential id. This
|
|
95
95
|
// is the global count from which those are assigned.
|
|
96
|
-
|
|
96
|
+
// As per WHATWG HTML 8.6.1 (Timers) ids must be greater than zero, i.e. start
|
|
97
|
+
// at 1
|
|
98
|
+
TimerHandle timerIndex_{1};
|
|
97
99
|
|
|
98
100
|
// The React Native microtask queue is used to back public APIs including
|
|
99
101
|
// `queueMicrotask`, `clearImmediate`, and `setImmediate` (which is used by
|
|
@@ -474,7 +474,6 @@ void RCTInstanceSetRuntimeDiagnosticFlags(NSString *flags)
|
|
|
474
474
|
|
|
475
475
|
if (error) {
|
|
476
476
|
[strongSelf handleBundleLoadingError:error];
|
|
477
|
-
[strongSelf invalidate];
|
|
478
477
|
return;
|
|
479
478
|
}
|
|
480
479
|
// DevSettings module is needed by _loadScriptFromSource's callback so prior initialization is required
|
|
@@ -267,7 +267,9 @@ TEST_F(ReactInstanceTest, testSetTimeoutWithoutDelay) {
|
|
|
267
267
|
EXPECT_CALL(
|
|
268
268
|
*mockRegistry_,
|
|
269
269
|
createTimer(_, 0)); // If delay is not provided, it should use 0
|
|
270
|
-
eval("setTimeout(() => {});");
|
|
270
|
+
auto val = eval("setTimeout(() => {});");
|
|
271
|
+
expectNoError();
|
|
272
|
+
EXPECT_EQ(val.asNumber(), 1); // First timer id should start at 1
|
|
271
273
|
}
|
|
272
274
|
|
|
273
275
|
TEST_F(ReactInstanceTest, testSetTimeoutWithPassThroughArgs) {
|
|
@@ -299,8 +301,9 @@ TEST_F(ReactInstanceTest, testSetTimeoutWithInvalidArgs) {
|
|
|
299
301
|
getErrorMessage("setTimeout();"),
|
|
300
302
|
"setTimeout must be called with at least one argument (the function to call).");
|
|
301
303
|
|
|
302
|
-
eval("setTimeout('invalid')
|
|
304
|
+
auto val = eval("setTimeout('invalid')");
|
|
303
305
|
expectNoError();
|
|
306
|
+
EXPECT_EQ(val.asNumber(), 0);
|
|
304
307
|
|
|
305
308
|
eval("setTimeout(() => {}, 'invalid');");
|
|
306
309
|
expectNoError();
|
|
@@ -417,9 +420,10 @@ TEST_F(ReactInstanceTest, testSetIntervalWithInvalidArgs) {
|
|
|
417
420
|
EXPECT_EQ(
|
|
418
421
|
getErrorMessage("setInterval();"),
|
|
419
422
|
"setInterval must be called with at least one argument (the function to call).");
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
+
|
|
424
|
+
auto val = eval("setInterval('invalid', 100)");
|
|
425
|
+
expectNoError();
|
|
426
|
+
EXPECT_EQ(val.asNumber(), 0);
|
|
423
427
|
}
|
|
424
428
|
|
|
425
429
|
TEST_F(ReactInstanceTest, testClearInterval) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-tvos",
|
|
3
|
-
"version": "0.79.
|
|
3
|
+
"version": "0.79.4-0",
|
|
4
4
|
"description": "A framework for building native apps using React",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
"gradle.properties",
|
|
43
43
|
"gradle/libs.versions.toml",
|
|
44
44
|
"index.js",
|
|
45
|
+
"index.flow.js",
|
|
45
46
|
"interface.js",
|
|
46
47
|
"jest-preset.js",
|
|
47
48
|
"jest",
|
|
@@ -112,12 +113,12 @@
|
|
|
112
113
|
},
|
|
113
114
|
"dependencies": {
|
|
114
115
|
"@jest/create-cache-key-function": "^29.7.0",
|
|
115
|
-
"@react-native/assets-registry": "0.79.
|
|
116
|
-
"@react-native/codegen": "0.79.
|
|
117
|
-
"@react-native/community-cli-plugin": "0.79.
|
|
118
|
-
"@react-native/gradle-plugin": "0.79.
|
|
119
|
-
"@react-native/js-polyfills": "0.79.
|
|
120
|
-
"@react-native/normalize-colors": "0.79.
|
|
116
|
+
"@react-native/assets-registry": "0.79.4",
|
|
117
|
+
"@react-native/codegen": "0.79.4",
|
|
118
|
+
"@react-native/community-cli-plugin": "0.79.4",
|
|
119
|
+
"@react-native/gradle-plugin": "0.79.4",
|
|
120
|
+
"@react-native/js-polyfills": "0.79.4",
|
|
121
|
+
"@react-native/normalize-colors": "0.79.4",
|
|
121
122
|
"abort-controller": "^3.0.0",
|
|
122
123
|
"anser": "^1.4.9",
|
|
123
124
|
"ansi-regex": "^5.0.0",
|
|
@@ -146,7 +147,7 @@
|
|
|
146
147
|
"whatwg-fetch": "^3.0.0",
|
|
147
148
|
"ws": "^6.2.3",
|
|
148
149
|
"yargs": "^17.6.2",
|
|
149
|
-
"@react-native-tvos/virtualized-lists": "0.79.
|
|
150
|
+
"@react-native-tvos/virtualized-lists": "0.79.4-0"
|
|
150
151
|
},
|
|
151
152
|
"codegenConfig": {
|
|
152
153
|
"libraries": [
|
|
@@ -58,7 +58,7 @@ class ReactNativePodsUtils
|
|
|
58
58
|
# this is needed for Xcode 14, see more details here https://github.com/facebook/react-native/issues/34673
|
|
59
59
|
# we should be able to remove this once CocoaPods catches up to it, see more details here https://github.com/CocoaPods/CocoaPods/issues/11402
|
|
60
60
|
installer.target_installation_results.pod_target_installation_results.each do |pod_name, target_installation_result|
|
|
61
|
-
if
|
|
61
|
+
if target_installation_result.target.root_spec.name == 'React-Core'
|
|
62
62
|
target_installation_result.resource_bundle_targets.each do |resource_bundle_target|
|
|
63
63
|
resource_bundle_target.build_configurations.each do |config|
|
|
64
64
|
config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO'
|
|
@@ -200,7 +200,12 @@ class ReactNativePodsUtils
|
|
|
200
200
|
|
|
201
201
|
def self.add_build_settings_to_pod(installer, settings_name, settings_value, target_pod_name, configuration_type)
|
|
202
202
|
installer.target_installation_results.pod_target_installation_results.each do |pod_name, target_installation_result|
|
|
203
|
-
|
|
203
|
+
# https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/target/pod_target.rb
|
|
204
|
+
# In multitarget project, pod_name may contain scope_suffix, namely: platform, OS version, swift version, etc.
|
|
205
|
+
# E.g. hermes-engine-tvOS16.0
|
|
206
|
+
# Root spec name is the original pod name, without any scope suffix.
|
|
207
|
+
original_pod_name = target_installation_result.target.root_spec.name
|
|
208
|
+
if original_pod_name == target_pod_name
|
|
204
209
|
target_installation_result.native_target.build_configurations.each do |config|
|
|
205
210
|
if configuration_type == nil || (configuration_type != nil && config.type == configuration_type)
|
|
206
211
|
config.build_settings[settings_name] ||= '$(inherited) '
|
|
@@ -371,7 +376,7 @@ class ReactNativePodsUtils
|
|
|
371
376
|
|
|
372
377
|
# Set "RCT_DYNAMIC_FRAMEWORKS=1" if pod are installed with USE_FRAMEWORKS=dynamic
|
|
373
378
|
# This helps with backward compatibility.
|
|
374
|
-
if
|
|
379
|
+
if target_installation_result.target.root_spec.name == 'React-RCTFabric' && ENV['USE_FRAMEWORKS'] == 'dynamic'
|
|
375
380
|
Pod::UI.puts "Setting -DRCT_DYNAMIC_FRAMEWORKS=1 to React-RCTFabric".green
|
|
376
381
|
rct_dynamic_framework_flag = " -DRCT_DYNAMIC_FRAMEWORKS=1"
|
|
377
382
|
target_installation_result.native_target.build_configurations.each do |config|
|
|
@@ -198,6 +198,7 @@ function printDeprecationWarningIfNeeded(dependency) {
|
|
|
198
198
|
function extractLibrariesFromConfigurationArray(configFile, dependencyPath) {
|
|
199
199
|
return configFile.codegenConfig.libraries.map(config => {
|
|
200
200
|
return {
|
|
201
|
+
name: config.name,
|
|
201
202
|
config,
|
|
202
203
|
libraryPath: dependencyPath,
|
|
203
204
|
};
|
|
@@ -213,6 +214,7 @@ function extractLibrariesFromJSON(configFile, dependencyPath) {
|
|
|
213
214
|
const config = configFile.codegenConfig;
|
|
214
215
|
return [
|
|
215
216
|
{
|
|
217
|
+
name: configFile.name,
|
|
216
218
|
config,
|
|
217
219
|
libraryPath: dependencyPath,
|
|
218
220
|
},
|
|
@@ -326,22 +328,13 @@ function findExternalLibraries(pkgJson, projectRoot) {
|
|
|
326
328
|
});
|
|
327
329
|
}
|
|
328
330
|
|
|
329
|
-
function findLibrariesFromReactNativeConfig(projectRoot) {
|
|
330
|
-
const rnConfigFileName = 'react-native.config.js';
|
|
331
|
-
|
|
331
|
+
function findLibrariesFromReactNativeConfig(projectRoot, rnConfig) {
|
|
332
332
|
codegenLog(
|
|
333
|
-
`Searching for codegen-enabled libraries in
|
|
333
|
+
`Searching for codegen-enabled libraries in react-native.config.js`,
|
|
334
334
|
true,
|
|
335
335
|
);
|
|
336
336
|
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
if (!fs.existsSync(rnConfigFilePath)) {
|
|
340
|
-
return [];
|
|
341
|
-
}
|
|
342
|
-
const rnConfig = require(rnConfigFilePath);
|
|
343
|
-
|
|
344
|
-
if (rnConfig.dependencies == null) {
|
|
337
|
+
if (!rnConfig.dependencies) {
|
|
345
338
|
return [];
|
|
346
339
|
}
|
|
347
340
|
return Object.keys(rnConfig.dependencies).flatMap(name => {
|
|
@@ -365,6 +358,19 @@ function findLibrariesFromReactNativeConfig(projectRoot) {
|
|
|
365
358
|
});
|
|
366
359
|
}
|
|
367
360
|
|
|
361
|
+
/**
|
|
362
|
+
* Finds all disabled libraries by platform based the react native config.
|
|
363
|
+
*
|
|
364
|
+
* This is needed when selectively disabling libraries in react-native.config.js since codegen should exclude those libraries as well.
|
|
365
|
+
*/
|
|
366
|
+
function findDisabledLibrariesByPlatform(reactNativeConfig, platform) {
|
|
367
|
+
const dependencies = reactNativeConfig.dependencies ?? {};
|
|
368
|
+
|
|
369
|
+
return Object.keys(dependencies).filter(
|
|
370
|
+
dependency => dependencies[dependency].platforms?.[platform] === null,
|
|
371
|
+
);
|
|
372
|
+
}
|
|
373
|
+
|
|
368
374
|
function findProjectRootLibraries(pkgJson, projectRoot) {
|
|
369
375
|
codegenLog('Searching for codegen-enabled libraries in the app.', true);
|
|
370
376
|
|
|
@@ -593,7 +599,7 @@ function mustGenerateNativeCode(includeLibraryPath, schemaInfo) {
|
|
|
593
599
|
);
|
|
594
600
|
}
|
|
595
601
|
|
|
596
|
-
function findCodegenEnabledLibraries(pkgJson, projectRoot) {
|
|
602
|
+
function findCodegenEnabledLibraries(pkgJson, projectRoot, reactNativeConfig) {
|
|
597
603
|
const projectLibraries = findProjectRootLibraries(pkgJson, projectRoot);
|
|
598
604
|
if (pkgJsonIncludesGeneratedCode(pkgJson)) {
|
|
599
605
|
return projectLibraries;
|
|
@@ -601,11 +607,21 @@ function findCodegenEnabledLibraries(pkgJson, projectRoot) {
|
|
|
601
607
|
return [
|
|
602
608
|
...projectLibraries,
|
|
603
609
|
...findExternalLibraries(pkgJson, projectRoot),
|
|
604
|
-
...findLibrariesFromReactNativeConfig(projectRoot),
|
|
610
|
+
...findLibrariesFromReactNativeConfig(projectRoot, reactNativeConfig),
|
|
605
611
|
];
|
|
606
612
|
}
|
|
607
613
|
}
|
|
608
614
|
|
|
615
|
+
function readReactNativeConfig(projectRoot) {
|
|
616
|
+
const rnConfigFilePath = path.resolve(projectRoot, 'react-native.config.js');
|
|
617
|
+
|
|
618
|
+
if (!fs.existsSync(rnConfigFilePath)) {
|
|
619
|
+
return {};
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
return require(rnConfigFilePath);
|
|
623
|
+
}
|
|
624
|
+
|
|
609
625
|
function generateCustomURLHandlers(libraries, outputDir) {
|
|
610
626
|
const customImageURLLoaderClasses = libraries
|
|
611
627
|
.flatMap(
|
|
@@ -834,8 +850,11 @@ function findFilesWithExtension(filePath, extension) {
|
|
|
834
850
|
return null;
|
|
835
851
|
}
|
|
836
852
|
|
|
837
|
-
// Skip hidden folders, that starts with `.`
|
|
838
|
-
if (
|
|
853
|
+
// Skip hidden folders, that starts with `.` but allow `.pnpm`
|
|
854
|
+
if (
|
|
855
|
+
absolutePath.includes(`${path.sep}.`) &&
|
|
856
|
+
!absolutePath.includes(`${path.sep}.pnpm`)
|
|
857
|
+
) {
|
|
839
858
|
return null;
|
|
840
859
|
}
|
|
841
860
|
|
|
@@ -1054,9 +1073,14 @@ function execute(projectRoot, targetPlatform, baseOutputPath, source) {
|
|
|
1054
1073
|
|
|
1055
1074
|
buildCodegenIfNeeded();
|
|
1056
1075
|
|
|
1057
|
-
const
|
|
1076
|
+
const reactNativeConfig = readReactNativeConfig(projectRoot);
|
|
1077
|
+
const codegenEnabledLibraries = findCodegenEnabledLibraries(
|
|
1078
|
+
pkgJson,
|
|
1079
|
+
projectRoot,
|
|
1080
|
+
reactNativeConfig,
|
|
1081
|
+
);
|
|
1058
1082
|
|
|
1059
|
-
if (
|
|
1083
|
+
if (codegenEnabledLibraries.length === 0) {
|
|
1060
1084
|
codegenLog('No codegen-enabled libraries found.', true);
|
|
1061
1085
|
return;
|
|
1062
1086
|
}
|
|
@@ -1065,6 +1089,19 @@ function execute(projectRoot, targetPlatform, baseOutputPath, source) {
|
|
|
1065
1089
|
targetPlatform === 'all' ? supportedPlatforms : [targetPlatform];
|
|
1066
1090
|
|
|
1067
1091
|
for (const platform of platforms) {
|
|
1092
|
+
const disabledLibraries = findDisabledLibrariesByPlatform(
|
|
1093
|
+
reactNativeConfig,
|
|
1094
|
+
platform,
|
|
1095
|
+
);
|
|
1096
|
+
|
|
1097
|
+
const libraries = codegenEnabledLibraries.filter(
|
|
1098
|
+
({name}) => !disabledLibraries.includes(name),
|
|
1099
|
+
);
|
|
1100
|
+
|
|
1101
|
+
if (!libraries.length) {
|
|
1102
|
+
continue;
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1068
1105
|
const outputPath = computeOutputPath(
|
|
1069
1106
|
projectRoot,
|
|
1070
1107
|
baseOutputPath,
|
package/sdks/.hermesversion
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
hermes-2025-
|
|
1
|
+
hermes-2025-06-04-RNv0.79.3-7f9a871eefeb2c3852365ee80f0b6733ec12ac3b
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<a28a3b729eaeee7ba3b1c2105d277286>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
*/
|
|
10
10
|
|
|
@@ -86,7 +86,6 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
86
86
|
traceTurboModulePromiseRejectionsOnAndroid: Getter<boolean>,
|
|
87
87
|
updateRuntimeShadowNodeReferencesOnCommit: Getter<boolean>,
|
|
88
88
|
useAlwaysAvailableJSErrorHandling: Getter<boolean>,
|
|
89
|
-
useEditTextStockAndroidFocusBehavior: Getter<boolean>,
|
|
90
89
|
useFabricInterop: Getter<boolean>,
|
|
91
90
|
useNativeViewConfigsInBridgelessMode: Getter<boolean>,
|
|
92
91
|
useOptimizedEventBatchingOnAndroid: Getter<boolean>,
|
|
@@ -323,10 +322,6 @@ export const updateRuntimeShadowNodeReferencesOnCommit: Getter<boolean> = create
|
|
|
323
322
|
* In Bridgeless mode, use the always available javascript error reporting pipeline.
|
|
324
323
|
*/
|
|
325
324
|
export const useAlwaysAvailableJSErrorHandling: Getter<boolean> = createNativeFlagGetter('useAlwaysAvailableJSErrorHandling', false);
|
|
326
|
-
/**
|
|
327
|
-
* If true, focusing in ReactEditText will mainly use stock Android requestFocus() behavior. If false it will use legacy custom focus behavior.
|
|
328
|
-
*/
|
|
329
|
-
export const useEditTextStockAndroidFocusBehavior: Getter<boolean> = createNativeFlagGetter('useEditTextStockAndroidFocusBehavior', true);
|
|
330
325
|
/**
|
|
331
326
|
* Should this application enable the Fabric Interop Layer for Android? If yes, the application will behave so that it can accept non-Fabric components and render them on Fabric. This toggle is controlling extra logic such as custom event dispatching that are needed for the Fabric Interop Layer to work correctly.
|
|
332
327
|
*/
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<2499cbe243c048d9e3647342ebec3544>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
*/
|
|
10
10
|
|
|
@@ -61,7 +61,6 @@ export interface Spec extends TurboModule {
|
|
|
61
61
|
+traceTurboModulePromiseRejectionsOnAndroid?: () => boolean;
|
|
62
62
|
+updateRuntimeShadowNodeReferencesOnCommit?: () => boolean;
|
|
63
63
|
+useAlwaysAvailableJSErrorHandling?: () => boolean;
|
|
64
|
-
+useEditTextStockAndroidFocusBehavior?: () => boolean;
|
|
65
64
|
+useFabricInterop?: () => boolean;
|
|
66
65
|
+useNativeViewConfigsInBridgelessMode?: () => boolean;
|
|
67
66
|
+useOptimizedEventBatchingOnAndroid?: () => boolean;
|
package/types/index.d.ts
CHANGED
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
/// <reference path="modules/BatchedBridge.d.ts" />
|
|
69
69
|
/// <reference path="modules/Codegen.d.ts" />
|
|
70
70
|
/// <reference path="modules/Devtools.d.ts" />
|
|
71
|
-
/// <reference
|
|
71
|
+
/// <reference path="../src/types/globals.d.ts" />
|
|
72
72
|
/// <reference path="modules/LaunchScreen.d.ts" />
|
|
73
73
|
|
|
74
74
|
export * from '../Libraries/ActionSheetIOS/ActionSheetIOS';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"module": "commonjs",
|
|
4
|
+
"lib": ["es6"],
|
|
5
|
+
"noImplicitAny": true,
|
|
6
|
+
"noImplicitThis": true,
|
|
7
|
+
"strictFunctionTypes": true,
|
|
8
|
+
"strictNullChecks": true,
|
|
9
|
+
"types": [],
|
|
10
|
+
"jsx": "react",
|
|
11
|
+
"noEmit": true,
|
|
12
|
+
"forceConsistentCasingInFileNames": true,
|
|
13
|
+
"paths": {"react-native": ["."]}
|
|
14
|
+
},
|
|
15
|
+
"include": ["../**/*.d.ts", "__typetests__/**/*"]
|
|
16
|
+
}
|