Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v20.19.0
v20.19.4
4 changes: 2 additions & 2 deletions android/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
RNIterable_kotlinVersion=2.1.20
RNIterable_minSdkVersion=24
RNIterable_targetSdkVersion=35
RNIterable_compileSdkVersion=35
RNIterable_targetSdkVersion=36
RNIterable_compileSdkVersion=36
RNIterable_ndkversion=27.1.12297006
android.useAndroidX=true
android.enableJetifier=true
9 changes: 0 additions & 9 deletions example/android/app/src/debug/AndroidManifest.xml

This file was deleted.

1 change: 1 addition & 0 deletions example/android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:theme="@style/AppTheme"
android:usesCleartextTraffic="${usesCleartextTraffic}"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The debug AndroidManifest.xml was removed and android:usesCleartextTraffic="${usesCleartextTraffic}" now lives in the main manifest, but example/android/app/build.gradle doesn't define a manifestPlaceholders value for usesCleartextTraffic in defaultConfig or per build type. Manifest merger will fail at assembleDebug/assembleRelease. This isn't caught by CI because the Unit Tests workflow only runs Jest — should we add the placeholders per the RN 0.81 template?

buildTypes {
    debug { manifestPlaceholders = [usesCleartextTraffic: "true"]; ... }
    release { manifestPlaceholders = [usesCleartextTraffic: "false"]; ... }
}

Also worth adding an ./gradlew assembleDebug step (and xcodebuild for iOS) to CI so future RN bumps don't ship broken example builds.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These changes come from React Natives Upgrade Helper, which outlines the tasks for updating between RN versions. I also checked in the scaffolding app suggested by react native, and it doesn't have the changes you suggest either. Perhaps the varible comes from RN?

I agree with adding the assembleDebug step to the CI, but it's out of scope for this upgrade.

android:supportsRtl="true">
<activity
android:name=".MainActivity"
Expand Down
6 changes: 3 additions & 3 deletions example/android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
buildscript {
ext {
buildToolsVersion = "35.0.0"
buildToolsVersion = "36.0.0"
minSdkVersion = 24
compileSdkVersion = 35
targetSdkVersion = 35
compileSdkVersion = 36
targetSdkVersion = 36
ndkVersion = "27.1.12297006"
kotlinVersion = "2.1.20"
}
Expand Down
2 changes: 1 addition & 1 deletion example/android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx512m -XX:MaxMetaspaceSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m
org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=512m

# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
Expand Down
2 changes: 1 addition & 1 deletion example/android/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
58 changes: 29 additions & 29 deletions example/ios/ReactNativeSdkExample.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
/* Begin PBXBuildFile section */
00E356F31AD99517003FC87E /* ReactNativeSdkExampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ReactNativeSdkExampleTests.m */; };
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
5501F9E2D489B695999030B9 /* libPods-ReactNativeSdkExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C407491B96F3239D3FA319BA /* libPods-ReactNativeSdkExample.a */; };
779227342DFA3FB500D69EC0 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 779227332DFA3FB500D69EC0 /* AppDelegate.swift */; };
77E3B5772EA71A4B001449CE /* IterableJwtGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77E3B5742EA71A4B001449CE /* IterableJwtGenerator.swift */; };
77E3B5782EA71A4B001449CE /* JwtTokenModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 77E3B5752EA71A4B001449CE /* JwtTokenModule.mm */; };
77E3B5792EA71A4B001449CE /* JwtTokenModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77E3B5762EA71A4B001449CE /* JwtTokenModule.swift */; };
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
A3A40C20801B8F02005FA4C0 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 1FC6B09E65A7BD9F6864C5D8 /* PrivacyInfo.xcprivacy */; };
EC8F867642C239490B660A0E /* libPods-ReactNativeSdkExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 75C8C5B6275D154ACC7A739D /* libPods-ReactNativeSdkExample.a */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
Expand All @@ -37,17 +37,17 @@
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = ReactNativeSdkExample/Info.plist; sourceTree = "<group>"; };
13B07FB71A68108700A75B9A /* ReactNativeSdkExample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; name = ReactNativeSdkExample.entitlements; path = ReactNativeSdkExample/ReactNativeSdkExample.entitlements; sourceTree = "<group>"; };
13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = PrivacyInfo.xcprivacy; path = ReactNativeSdkExample/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
1D4A10CD5A176A2672FEA843 /* Pods-ReactNativeSdkExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.debug.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.debug.xcconfig"; sourceTree = "<group>"; };
1FC6B09E65A7BD9F6864C5D8 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ReactNativeSdkExample/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
75C8C5B6275D154ACC7A739D /* libPods-ReactNativeSdkExample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNativeSdkExample.a"; sourceTree = BUILT_PRODUCTS_DIR; };
779227312DFA3FB500D69EC0 /* ReactNativeSdkExample-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ReactNativeSdkExample-Bridging-Header.h"; sourceTree = "<group>"; };
779227322DFA3FB500D69EC0 /* ReactNativeSdkExampleTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ReactNativeSdkExampleTests-Bridging-Header.h"; sourceTree = "<group>"; };
779227332DFA3FB500D69EC0 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = ReactNativeSdkExample/AppDelegate.swift; sourceTree = "<group>"; };
77E3B5742EA71A4B001449CE /* IterableJwtGenerator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IterableJwtGenerator.swift; sourceTree = "<group>"; };
77E3B5752EA71A4B001449CE /* JwtTokenModule.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = JwtTokenModule.mm; sourceTree = "<group>"; };
77E3B5762EA71A4B001449CE /* JwtTokenModule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JwtTokenModule.swift; sourceTree = "<group>"; };
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ReactNativeSdkExample/LaunchScreen.storyboard; sourceTree = "<group>"; };
CB3BD018E1F9E12F16E951B0 /* Pods-ReactNativeSdkExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.release.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.release.xcconfig"; sourceTree = "<group>"; };
B21CBA84AB4D219A875C6609 /* Pods-ReactNativeSdkExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.release.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.release.xcconfig"; sourceTree = "<group>"; };
C407491B96F3239D3FA319BA /* libPods-ReactNativeSdkExample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNativeSdkExample.a"; sourceTree = BUILT_PRODUCTS_DIR; };
CF0932DA81E6EDCE2122946B /* Pods-ReactNativeSdkExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.debug.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.debug.xcconfig"; sourceTree = "<group>"; };
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
/* End PBXFileReference section */

Expand All @@ -63,7 +63,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
EC8F867642C239490B660A0E /* libPods-ReactNativeSdkExample.a in Frameworks */,
5501F9E2D489B695999030B9 /* libPods-ReactNativeSdkExample.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -107,7 +107,7 @@
isa = PBXGroup;
children = (
ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
75C8C5B6275D154ACC7A739D /* libPods-ReactNativeSdkExample.a */,
C407491B96F3239D3FA319BA /* libPods-ReactNativeSdkExample.a */,
);
name = Frameworks;
sourceTree = "<group>";
Expand Down Expand Up @@ -149,8 +149,8 @@
BBD78D7AC51CEA395F1C20DB /* Pods */ = {
isa = PBXGroup;
children = (
1D4A10CD5A176A2672FEA843 /* Pods-ReactNativeSdkExample.debug.xcconfig */,
CB3BD018E1F9E12F16E951B0 /* Pods-ReactNativeSdkExample.release.xcconfig */,
CF0932DA81E6EDCE2122946B /* Pods-ReactNativeSdkExample.debug.xcconfig */,
B21CBA84AB4D219A875C6609 /* Pods-ReactNativeSdkExample.release.xcconfig */,
);
path = Pods;
sourceTree = "<group>";
Expand Down Expand Up @@ -180,13 +180,13 @@
isa = PBXNativeTarget;
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "ReactNativeSdkExample" */;
buildPhases = (
F2E9324E7AD2F7B160944423 /* [CP] Check Pods Manifest.lock */,
8BB77450C2101562A7B06FF2 /* [CP] Check Pods Manifest.lock */,
13B07F871A680F5B00A75B9A /* Sources */,
13B07F8C1A680F5B00A75B9A /* Frameworks */,
13B07F8E1A680F5B00A75B9A /* Resources */,
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
7C9A38BA9F57B06E2BB2025C /* [CP] Embed Pods Frameworks */,
ECD8817AEA59779F686EFF7E /* [CP] Copy Pods Resources */,
C8FD75D6011148FDDE4136F1 /* [CP] Embed Pods Frameworks */,
B55A06BA11FAFC83DD873B8D /* [CP] Copy Pods Resources */,
);
buildRules = (
);
Expand Down Expand Up @@ -271,24 +271,29 @@
shellPath = /bin/sh;
shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n";
};
7C9A38BA9F57B06E2BB2025C /* [CP] Embed Pods Frameworks */ = {
8BB77450C2101562A7B06FF2 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Embed Pods Frameworks";
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-ReactNativeSdkExample-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks.sh\"\n";
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
ECD8817AEA59779F686EFF7E /* [CP] Copy Pods Resources */ = {
B55A06BA11FAFC83DD873B8D /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
Expand All @@ -305,26 +310,21 @@
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-resources.sh\"\n";
showEnvVarsInLog = 0;
};
F2E9324E7AD2F7B160944423 /* [CP] Check Pods Manifest.lock */ = {
C8FD75D6011148FDDE4136F1 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-ReactNativeSdkExample-checkManifestLockResult.txt",
"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
Expand Down Expand Up @@ -420,7 +420,7 @@
};
13B07F941A680F5B00A75B9A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 1D4A10CD5A176A2672FEA843 /* Pods-ReactNativeSdkExample.debug.xcconfig */;
baseConfigurationReference = CF0932DA81E6EDCE2122946B /* Pods-ReactNativeSdkExample.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
Expand Down Expand Up @@ -451,7 +451,7 @@
};
13B07F951A680F5B00A75B9A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = CB3BD018E1F9E12F16E951B0 /* Pods-ReactNativeSdkExample.release.xcconfig */;
baseConfigurationReference = B21CBA84AB4D219A875C6609 /* Pods-ReactNativeSdkExample.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
Expand Down
2 changes: 0 additions & 2 deletions example/ios/ReactNativeSdkExample/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
<key>NSLocationWhenInUseUsageDescription</key>
<string></string>
<key>RCTNewArchEnabled</key>
<true/>
<key>UILaunchStoryboardName</key>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.developer.web-browser</key>
<true/>
</dict>
<dict/>
</plist>
30 changes: 15 additions & 15 deletions example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,32 +14,32 @@
"@react-navigation/native": "^7.1.14",
"@react-navigation/native-stack": "^7.0.0",
"@react-navigation/stack": "^7.4.2",
"react": "19.1.0",
"react-native": "0.80.3",
"react-native-gesture-handler": "^2.26.0",
"react-native-safe-area-context": "^5.4.0",
"react-native-screens": ">=4.14.0 <4.19.0",
"react": "19.1.4",
"react-native": "0.81.6",
"react-native-gesture-handler": "^2.28.0",
"react-native-safe-area-context": "^5.6.0",
"react-native-screens": ">=4.19.0 <4.25.0",
"react-native-webview": "^13.14.1"
},
"devDependencies": {
"@babel/core": "^7.25.2",
"@babel/preset-env": "^7.25.3",
"@babel/runtime": "^7.25.0",
"@react-native-community/cli": "19.1.2",
"@react-native-community/cli-platform-android": "19.1.2",
"@react-native-community/cli-platform-ios": "19.1.2",
"@react-native/babel-preset": "0.80.3",
"@react-native/eslint-config": "0.80.3",
"@react-native/metro-config": "0.80.3",
"@react-native/typescript-config": "0.80.3",
"@react-native-community/cli": "20.0.0",
"@react-native-community/cli-platform-android": "20.0.0",
"@react-native-community/cli-platform-ios": "20.0.0",
"@react-native/babel-preset": "0.81.6",
"@react-native/eslint-config": "0.81.6",
"@react-native/metro-config": "0.81.6",
"@react-native/typescript-config": "0.81.6",
"@types/jest": "^29.5.13",
"@types/react": "^19.1.0",
"@types/react": "^19.1.4",
"@types/react-test-renderer": "^19.1.0",
"react-native-builder-bob": "^0.30.2",
"react-native-dotenv": "^3.4.11",
"react-test-renderer": "19.1.0"
"react-test-renderer": "19.1.4"
},
"engines": {
"node": ">=18"
"node": ">=20"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The root package.json has no engines field at all. If 20 is now the floor, should we set it on the published package too, to prevent consumers using Node 18 and install this fine only to break at build time on tooling internals.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's done via .nvmrc in the root package.

}
}
28 changes: 14 additions & 14 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -69,17 +69,17 @@
"devDependencies": {
"@commitlint/config-conventional": "^19.6.0",
"@evilmartians/lefthook": "^1.5.0",
"@react-native-community/cli": "19.1.2",
"@react-native/babel-preset": "0.80.3",
"@react-native/eslint-config": "0.80.3",
"@react-native/metro-config": "0.80.3",
"@react-native/typescript-config": "0.80.3",
"@react-native-community/cli": "20.0.0",
"@react-native/babel-preset": "0.81.6",
"@react-native/eslint-config": "0.81.6",
"@react-native/metro-config": "0.81.6",
"@react-native/typescript-config": "0.81.6",
"@react-navigation/native": "^7.1.14",
"@release-it/conventional-changelog": "^9.0.4",
"@testing-library/jest-native": "^5.4.3",
"@testing-library/react-native": "^13.3.3",
"@types/jest": "^29.5.5",
"@types/react": "^19.1.0",
"@types/react": "^19.1.4",
"@typescript-eslint/eslint-plugin": "^8.13.0",
"@typescript-eslint/parser": "^8.13.0",
"baseline-browser-mapping": "latest",
Expand All @@ -93,23 +93,23 @@
"jest": "^29.7.0",
"prettier": "^3.0.3",
"prettier-eslint": "^16.4.2",
"react": "19.1.0",
"react-native": "0.80.3",
"react": "19.1.4",
"react-native": "0.81.6",
"react-native-builder-bob": "^0.40.4",
"react-native-gesture-handler": "^2.26.0",
"react-native-safe-area-context": "^5.4.0",
"react-native-screens": ">=4.14.0 <4.19.0",
"react-native-gesture-handler": "^2.28.0",
"react-native-safe-area-context": "^5.6.0",
"react-native-screens": ">=4.19.0 <4.25.0",
"react-native-webview": "^13.14.1",
"react-test-renderer": "19.1.0",
"react-test-renderer": "19.1.4",
"release-it": "^17.10.0",
"turbo": "^1.10.7",
"typedoc": "^0.28.13",
"typedoc-plugin-coverage": "^3.3.0",
"typedoc-plugin-mermaid": "^1.12.0",
"typescript": "^5.2.2"
"typescript": "^5.8.3"
},
"resolutions": {
"@types/react": "^19.1.0"
"@types/react": "^19.1.4"
},
"peerDependencies": {
"@react-navigation/native": "*",
Expand Down
Loading
Loading