diff --git a/.github/workflows/ci-ios-tvos.yml b/.github/workflows/ci-ios-tvos.yml index cdada5c1..f2867992 100644 --- a/.github/workflows/ci-ios-tvos.yml +++ b/.github/workflows/ci-ios-tvos.yml @@ -45,7 +45,7 @@ jobs: - uses: maxim-lobanov/setup-xcode@v1 with: - xcode-version: '14.3' + xcode-version: '15.2' - name: Install dependencies run: brew bundle install @@ -69,7 +69,7 @@ jobs: - uses: maxim-lobanov/setup-xcode@v1 with: - xcode-version: '14.3' + xcode-version: '15.2' - name: Install node_modules run: yarn install --frozen-lockfile @@ -139,7 +139,7 @@ jobs: - uses: maxim-lobanov/setup-xcode@v1 with: - xcode-version: '14.3' + xcode-version: '15.2' - name: Install node_modules run: yarn install --frozen-lockfile diff --git a/example/babel.config.js b/example/babel.config.js index 2c9e6bab..50094525 100644 --- a/example/babel.config.js +++ b/example/babel.config.js @@ -2,7 +2,7 @@ const path = require('path'); const pak = require('../package.json'); module.exports = { - presets: ['module:metro-react-native-babel-preset'], + presets: ['@react-native/babel-preset'], plugins: [ [ 'module-resolver', diff --git a/example/ios/BitmovinPlayerReactNativeExample.xcodeproj/project.pbxproj b/example/ios/BitmovinPlayerReactNativeExample.xcodeproj/project.pbxproj index b1038404..65541319 100644 --- a/example/ios/BitmovinPlayerReactNativeExample.xcodeproj/project.pbxproj +++ b/example/ios/BitmovinPlayerReactNativeExample.xcodeproj/project.pbxproj @@ -159,7 +159,6 @@ buildPhases = ( 5E3559E12AFFB82ED8822C46 /* [CP] Check Pods Manifest.lock */, A8979BB02ADD2D9500821960 /* SwiftLint */, - A86B2E732B0E17CB00927859 /* Start Packager */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, @@ -182,7 +181,6 @@ buildPhases = ( 3D81CB9D0E05C6D400C2E01A /* [CP] Check Pods Manifest.lock */, A8979BB12ADD2DB500821960 /* SwiftLint */, - A86B2E742B0E17F300927859 /* Start Packager */, 4CE382EA28BFD10C002DDF82 /* Sources */, 4CE382EB28BFD10C002DDF82 /* Frameworks */, 4CE382EC28BFD10C002DDF82 /* Resources */, @@ -281,7 +279,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "set -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; + shellScript = "set -e\n\nexport SKIP_BUNDLING=true\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; showEnvVarsInLog = 0; }; 2C9AF44BCA3409CD3FDD5056 /* [CP] Embed Pods Frameworks */ = { @@ -354,7 +352,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "set -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; + shellScript = "set -e\n\nexport SKIP_BUNDLING=true\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; }; 5E3559E12AFFB82ED8822C46 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; @@ -452,44 +450,6 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-BitmovinPlayerReactNativeExample/Pods-BitmovinPlayerReactNativeExample-resources.sh\"\n"; showEnvVarsInLog = 0; }; - A86B2E732B0E17CB00927859 /* Start Packager */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Start Packager"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; - showEnvVarsInLog = 0; - }; - A86B2E742B0E17F300927859 /* Start Packager */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Start Packager"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; - showEnvVarsInLog = 0; - }; A8979BB02ADD2D9500821960 /* SwiftLint */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -571,7 +531,7 @@ baseConfigurationReference = A8DB69412B31B5DB00BAD718 /* Debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_CXX_LANGUAGE_STANDARD = "c++20"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; @@ -599,7 +559,7 @@ baseConfigurationReference = A8DB69422B31B5DB00BAD718 /* Release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_CXX_LANGUAGE_STANDARD = "c++20"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; @@ -628,7 +588,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; @@ -665,7 +625,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; diff --git a/example/ios/BitmovinPlayerReactNativeExample/Info.plist b/example/ios/BitmovinPlayerReactNativeExample/Info.plist index 8058e163..955b6e24 100644 --- a/example/ios/BitmovinPlayerReactNativeExample/Info.plist +++ b/example/ios/BitmovinPlayerReactNativeExample/Info.plist @@ -28,14 +28,11 @@ NSAppTransportSecurity - NSExceptionDomains - - localhost - - NSExceptionAllowsInsecureHTTPLoads - - - + + NSAllowsArbitraryLoads + + NSAllowsLocalNetworking + NSLocationWhenInUseUsageDescription diff --git a/example/patches/react-native+0.73.4-0.patch b/example/patches/react-native+0.73.4-0.patch deleted file mode 100644 index 740782c2..00000000 --- a/example/patches/react-native+0.73.4-0.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec -index 3950fce..3ae78ba 100644 ---- a/node_modules/react-native/third-party-podspecs/boost.podspec -+++ b/node_modules/react-native/third-party-podspecs/boost.podspec -@@ -10,7 +10,7 @@ Pod::Spec.new do |spec| - spec.homepage = 'http://www.boost.org' - spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.' - spec.authors = 'Rene Rivera' -- spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2', -+ spec.source = { :http => 'https://archives.boost.io/release/1.83.0/source/boost_1_83_0.tar.bz2', - :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' } - - # Pinning to the same version as React.podspec. \ No newline at end of file diff --git a/example/src/App.tsx b/example/src/App.tsx index 227f1ad9..54799276 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -42,6 +42,7 @@ export type RootStackParamsList = { navigation: NativeStackNavigationProp; }; SubtitlePlayback: undefined; + ProgrammaticTrackSelection: undefined; CustomPlaybackForm: undefined; OfflinePlayback: undefined; CustomPlayback: { @@ -56,9 +57,10 @@ export type RootStackParamsList = { navigation: NativeStackNavigationProp; }; Casting: undefined; + SystemUI: undefined; }; -const RootStack = createNativeStackNavigator(); +const RootStack = createNativeStackNavigator(); const isTVOS = Platform.OS === 'ios' && Platform.isTV; @@ -81,31 +83,31 @@ export default function App() { data: [ { title: 'Basic playback', - routeName: 'BasicPlayback', + routeName: 'BasicPlayback' as keyof RootStackParamsList, }, { title: 'Basic Analytics', - routeName: 'BasicAnalytics', + routeName: 'BasicAnalytics' as keyof RootStackParamsList, }, { title: 'Basic Drm playback', - routeName: 'BasicDrmPlayback', + routeName: 'BasicDrmPlayback' as keyof RootStackParamsList, }, { title: 'Subtitle and captions', - routeName: 'SubtitlePlayback', + routeName: 'SubtitlePlayback' as keyof RootStackParamsList, }, { title: 'Basic Picture in Picture', - routeName: 'BasicPictureInPicture', + routeName: 'BasicPictureInPicture' as keyof RootStackParamsList, }, { title: 'Basic Ads', - routeName: 'BasicAds', + routeName: 'BasicAds' as keyof RootStackParamsList, }, { title: 'Programmatic Track Selection', - routeName: 'ProgrammaticTrackSelection', + routeName: 'ProgrammaticTrackSelection' as keyof RootStackParamsList, }, ], }; diff --git a/example/src/screens/CustomPlaybackForm.tsx b/example/src/screens/CustomPlaybackForm.tsx index 27911bab..6c050d80 100644 --- a/example/src/screens/CustomPlaybackForm.tsx +++ b/example/src/screens/CustomPlaybackForm.tsx @@ -88,7 +88,10 @@ const initialFormState = { playDisabled: true, }; -type CustomPlaybackFormProps = NativeStackScreenProps; +type CustomPlaybackFormProps = NativeStackScreenProps< + RootStackParamsList, + 'CustomPlaybackForm' +>; const CustomPlaybackForm: React.FC = ({ navigation, diff --git a/example/src/screens/ExamplesList.tsx b/example/src/screens/ExamplesList.tsx index d43042c8..9a747cb1 100644 --- a/example/src/screens/ExamplesList.tsx +++ b/example/src/screens/ExamplesList.tsx @@ -36,6 +36,7 @@ const ExamplesList: React.FC = ({ route, navigation }) => ( { + // @ts-ignore navigation.navigate(item.routeName); }} /> diff --git a/integration_test/android/app/src/debug/java/com/bitmovin/player/reactnative/integrationtest/MainApplication.java b/integration_test/android/app/src/debug/java/com/bitmovin/player/reactnative/integrationtest/MainApplication.java index 0ded1908..f91a88ff 100644 --- a/integration_test/android/app/src/debug/java/com/bitmovin/player/reactnative/integrationtest/MainApplication.java +++ b/integration_test/android/app/src/debug/java/com/bitmovin/player/reactnative/integrationtest/MainApplication.java @@ -3,7 +3,6 @@ import android.app.Application; import com.bitmovin.player.reactnative.integrationtest.BuildConfig; -import com.bitmovin.player.reactnative.integrationtest.ReactNativeFlipper; import com.facebook.react.PackageList; import com.facebook.react.ReactApplication; import com.facebook.react.ReactNativeHost; diff --git a/integration_test/babel.config.js b/integration_test/babel.config.js index 2c9e6bab..50094525 100644 --- a/integration_test/babel.config.js +++ b/integration_test/babel.config.js @@ -2,7 +2,7 @@ const path = require('path'); const pak = require('../package.json'); module.exports = { - presets: ['module:metro-react-native-babel-preset'], + presets: ['@react-native/babel-preset'], plugins: [ [ 'module-resolver', diff --git a/integration_test/ios/IntegrationTest.xcodeproj/project.pbxproj b/integration_test/ios/IntegrationTest.xcodeproj/project.pbxproj index 7c7c6e59..5f664a32 100644 --- a/integration_test/ios/IntegrationTest.xcodeproj/project.pbxproj +++ b/integration_test/ios/IntegrationTest.xcodeproj/project.pbxproj @@ -108,7 +108,6 @@ buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "IntegrationTest" */; buildPhases = ( C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */, - FD10A7F022414F080027D42C /* Start Packager */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, @@ -241,25 +240,6 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-IntegrationTest/Pods-IntegrationTest-resources.sh\"\n"; showEnvVarsInLog = 0; }; - FD10A7F022414F080027D42C /* Start Packager */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Start Packager"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; - showEnvVarsInLog = 0; - }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -388,7 +368,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.4; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( /usr/lib/swift, "$(inherited)", @@ -406,6 +386,7 @@ "-DFOLLY_NO_CONFIG", "-DFOLLY_MOBILE=1", "-DFOLLY_USE_LIBCPP=1", + "-DFOLLY_CFG_NO_COROUTINES=1", ); OTHER_LDFLAGS = "$(inherited)"; REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; @@ -461,7 +442,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.4; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( /usr/lib/swift, "$(inherited)", @@ -478,6 +459,7 @@ "-DFOLLY_NO_CONFIG", "-DFOLLY_MOBILE=1", "-DFOLLY_USE_LIBCPP=1", + "-DFOLLY_CFG_NO_COROUTINES=1", ); OTHER_LDFLAGS = "$(inherited)"; REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; diff --git a/integration_test/ios/IntegrationTest/Info.plist b/integration_test/ios/IntegrationTest/Info.plist index 00fca031..5383e602 100644 --- a/integration_test/ios/IntegrationTest/Info.plist +++ b/integration_test/ios/IntegrationTest/Info.plist @@ -26,14 +26,11 @@ NSAppTransportSecurity - NSExceptionDomains - - localhost - - NSExceptionAllowsInsecureHTTPLoads - - - + + NSAllowsArbitraryLoads + + NSAllowsLocalNetworking + NSLocationWhenInUseUsageDescription diff --git a/integration_test/package.json b/integration_test/package.json index 8e29343f..d09839bf 100644 --- a/integration_test/package.json +++ b/integration_test/package.json @@ -27,7 +27,7 @@ "@babel/preset-env": "^7.20.0", "@babel/runtime": "^7.20.0", "@react-native/metro-config": "^0.73.5", - "@types/cavy": "^3.2.7", + "@types/cavy": "^3.2.9", "babel-plugin-module-resolver": "^5.0.0", "cavy-cli": "^3.0.0", "@react-native/babel-preset": "0.73.18", @@ -39,6 +39,6 @@ "node": ">=18" }, "resolutions": { - "@types/react": "~17.0.21" + "@types/react": "^18.0.0" } } diff --git a/integration_test/patches/react-native+0.73.4-0.patch b/integration_test/patches/react-native+0.73.4-0.patch deleted file mode 100644 index 740782c2..00000000 --- a/integration_test/patches/react-native+0.73.4-0.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec -index 3950fce..3ae78ba 100644 ---- a/node_modules/react-native/third-party-podspecs/boost.podspec -+++ b/node_modules/react-native/third-party-podspecs/boost.podspec -@@ -10,7 +10,7 @@ Pod::Spec.new do |spec| - spec.homepage = 'http://www.boost.org' - spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.' - spec.authors = 'Rene Rivera' -- spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2', -+ spec.source = { :http => 'https://archives.boost.io/release/1.83.0/source/boost_1_83_0.tar.bz2', - :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' } - - # Pinning to the same version as React.podspec. \ No newline at end of file diff --git a/integration_test/src/TestablePlayer.tsx b/integration_test/src/TestablePlayer.tsx index 2b99ad8f..0656c597 100644 --- a/integration_test/src/TestablePlayer.tsx +++ b/integration_test/src/TestablePlayer.tsx @@ -11,7 +11,7 @@ interface TestablePlayerProps { export default function TestablePlayer({ playerTestWorld, -}: TestablePlayerProps): JSX.Element { +}: TestablePlayerProps): React.JSX.Element { const generateTestHook = useCavy(); const [renderCount, setRenderCount] = useState(0); playerTestWorld.onReRender = () => setRenderCount((count) => count + 1); diff --git a/integration_test/yarn.lock b/integration_test/yarn.lock index f6cc9cbf..b5e819da 100644 --- a/integration_test/yarn.lock +++ b/integration_test/yarn.lock @@ -1650,10 +1650,10 @@ dependencies: "@sinonjs/commons" "^3.0.0" -"@types/cavy@^3.2.7": - version "3.2.8" - resolved "https://registry.yarnpkg.com/@types/cavy/-/cavy-3.2.8.tgz#8b3beafe0251482acd2335d3cbc0fb91c3b8da21" - integrity sha512-252TeL+OxYRRgIWRppVVrV5dj8sD4JyDyvgfTTdi5duvoWrqX1VpFbUealS2pPSn1ujymM3w2g4fD+u3yMvd9A== +"@types/cavy@^3.2.9": + version "3.2.9" + resolved "https://registry.yarnpkg.com/@types/cavy/-/cavy-3.2.9.tgz#2190e19220f9b1670255019f03fdbbae75be4d2d" + integrity sha512-VLAicAl0Jj5F2P2sHcliP4tU/aPAwNQ4hURA72msaTnvO0jB7HiGUr34sp1OqNfr6Qd9UMluiyaeRVuWrJI95w== dependencies: "@types/react" "*" @@ -1688,10 +1688,10 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.10.tgz#892afc9332c4d62a5ea7e897fe48ed2085bbb08a" integrity sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A== -"@types/react@*", "@types/react@~17.0.21": - version "17.0.71" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.71.tgz#3673d446ad482b1564e44bf853b3ab5bcbc942c4" - integrity sha512-lfqOu9mp16nmaGRrS8deS2Taqhd5Ih0o92Te5Ws6I1py4ytHBcXLqh0YIqVsViqwVI5f+haiFM6hju814BzcmA== +"@types/react@*", "@types/react@^18.0.0": + version "18.2.61" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.61.tgz#5607308495037436779939ec0348a5816c08799d" + integrity sha512-NURTN0qNnJa7O/k4XUkEW2yfygA+NxS0V5h1+kp9jPwhzZy95q3ADoGMP0+JypMhrZBTTgjKAUlTctde1zzeQA== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" diff --git a/package.json b/package.json index 654fb73f..058e19e1 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "postinstall-postinstall": "^2.1.0", "prettier": "2.7.1", "react": "18.2.0", - "react-native": "0.73.5", + "react-native": "0.73.4", "tsup": "7.2.0", "typedoc": "^0.25.2", "typescript": "5.0.2" diff --git a/yarn.lock b/yarn.lock index 189c0720..03e2902e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2004,49 +2004,50 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@react-native-community/cli-clean@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.3.6.tgz#e8a7910bebc97266fd5068649013a03958021fc4" - integrity sha512-gUU29ep8xM0BbnZjwz9MyID74KKwutq9x5iv4BCr2im6nly4UMf1B1D+V225wR7VcDGzbgWjaezsJShLLhC5ig== +"@react-native-community/cli-clean@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.3.2.tgz#d4f1730c3d22d816b4d513d330d5f3896a3f5921" + integrity sha512-90k2hCX0ddSFPT7EN7h5SZj0XZPXP0+y/++v262hssoey3nhurwF57NGWN0XAR0o9BSW7+mBfeInfabzDraO6A== dependencies: - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-tools" "12.3.2" chalk "^4.1.2" execa "^5.0.0" -"@react-native-community/cli-config@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.3.6.tgz#5f0be68270217908a739c32e3155a0e354773251" - integrity sha512-JGWSYQ9EAK6m2v0abXwFLEfsqJ1zkhzZ4CV261QZF9MoUNB6h57a274h1MLQR9mG6Tsh38wBUuNfEPUvS1vYew== +"@react-native-community/cli-config@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.3.2.tgz#1a5de302de4d597ff2fc9932a032134b6ec4325f" + integrity sha512-UUCzDjQgvAVL/57rL7eOuFUhd+d+6qfM7V8uOegQFeFEmSmvUUDLYoXpBa5vAK9JgQtSqMBJ1Shmwao+/oElxQ== dependencies: - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-tools" "12.3.2" 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.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.6.tgz#418027a1ae76850079684d309a732eb378c7f690" - integrity sha512-SjUKKsx5FmcK9G6Pb6UBFT0s9JexVStK5WInmANw75Hm7YokVvHEgtprQDz2Uvy5znX5g2ujzrkIU//T15KQzA== +"@react-native-community/cli-debugger-ui@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.2.tgz#b2743876b03e560fbf5ef516e95387fcb6d91630" + integrity sha512-nSWQUL+51J682DlfcC1bjkUbQbGvHCC25jpqTwHIjmmVjYCX1uHuhPSqQKgPNdvtfOkrkACxczd7kVMmetxY2Q== dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.3.6.tgz#f68b51bbc6554ff4837269d98e9e405044e6f1b9" - integrity sha512-fvBDv2lTthfw4WOQKkdTop2PlE9GtfrlNnpjB818MhcdEnPjfQw5YaTUcnNEGsvGomdCs1MVRMgYXXwPSN6OvQ== +"@react-native-community/cli-doctor@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.3.2.tgz#9e82b49f04ee03872b2975f26c8799cecac021ce" + integrity sha512-GrAabdY4qtBX49knHFvEAdLtCjkmndjTeqhYO6BhsbAeKOtspcLT/0WRgdLIaKODRa61ADNB3K5Zm4dU0QrZOg== dependencies: - "@react-native-community/cli-config" "12.3.6" - "@react-native-community/cli-platform-android" "12.3.6" - "@react-native-community/cli-platform-ios" "12.3.6" - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-config" "12.3.2" + "@react-native-community/cli-platform-android" "12.3.2" + "@react-native-community/cli-platform-ios" "12.3.2" + "@react-native-community/cli-tools" "12.3.2" chalk "^4.1.2" command-exists "^1.2.8" deepmerge "^4.3.0" envinfo "^7.10.0" execa "^5.0.0" hermes-profile-transformer "^0.0.6" + ip "^1.1.5" node-stream-zip "^1.9.1" ora "^5.4.1" semver "^7.5.2" @@ -2054,52 +2055,53 @@ wcwidth "^1.0.1" yaml "^2.2.1" -"@react-native-community/cli-hermes@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.3.6.tgz#5ac2c9ee26c69e1ce6b5047ba0f399984a6dea16" - integrity sha512-sNGwfOCl8OAIjWCkwuLpP8NZbuO0dhDI/2W7NeOGDzIBsf4/c4MptTrULWtGIH9okVPLSPX0NnRyGQ+mSwWyuQ== +"@react-native-community/cli-hermes@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.3.2.tgz#5f266985fe32a37e9020e881460e9017870be2e5" + integrity sha512-SL6F9O8ghp4ESBFH2YAPLtIN39jdnvGBKnK4FGKpDCjtB3DnUmDsGFlH46S+GGt5M6VzfG2eeKEOKf3pZ6jUzA== dependencies: - "@react-native-community/cli-platform-android" "12.3.6" - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-platform-android" "12.3.2" + "@react-native-community/cli-tools" "12.3.2" chalk "^4.1.2" hermes-profile-transformer "^0.0.6" + ip "^1.1.5" -"@react-native-community/cli-platform-android@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.6.tgz#e1103692c659ff0b72ee6f00b7c72578db7376ec" - integrity sha512-DeDDAB8lHpuGIAPXeeD9Qu2+/wDTFPo99c8uSW49L0hkmZJixzvvvffbGQAYk32H0TmaI7rzvzH+qzu7z3891g== +"@react-native-community/cli-platform-android@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.2.tgz#de54d89712f8ea95046d798ec274fd6caea70c34" + integrity sha512-MZ5nO8yi/N+Fj2i9BJcJ9C/ez+9/Ir7lQt49DWRo9YDmzye66mYLr/P2l/qxsixllbbDi7BXrlLpxaEhMrDopg== dependencies: - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-tools" "12.3.2" 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.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.6.tgz#e7decb5ee764f5fdc7a6ad1ba5e15de8929d54a5" - integrity sha512-3eZ0jMCkKUO58wzPWlvAPRqezVKm9EPZyaPyHbRPWU8qw7JqkvnRlWIaYDGpjCJgVW4k2hKsEursLtYKb188tg== +"@react-native-community/cli-platform-ios@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.2.tgz#07e298f69761424da85909790a43ec60ebfe6097" + integrity sha512-OcWEAbkev1IL6SUiQnM6DQdsvfsKZhRZtoBNSj9MfdmwotVZSOEZJ+IjZ1FR9ChvMWayO9ns/o8LgoQxr1ZXeg== dependencies: - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-tools" "12.3.2" 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.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.6.tgz#ae62de18e998478db60a3fe10dc746162c272dbd" - integrity sha512-3jxSBQt4fkS+KtHCPSyB5auIT+KKIrPCv9Dk14FbvOaEh9erUWEm/5PZWmtboW1z7CYeNbFMeXm9fM2xwtVOpg== +"@react-native-community/cli-plugin-metro@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.2.tgz#7db7dc8939b821b9aeebdd5ee3293f3a0201a2ea" + integrity sha512-FpFBwu+d2E7KRhYPTkKvQsWb2/JKsJv+t1tcqgQkn+oByhp+qGyXBobFB8/R3yYvRRDCSDhS+atWTJzk9TjM8g== -"@react-native-community/cli-server-api@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.3.6.tgz#cd78122954a02d22c7821c365938635b51ddd1bd" - integrity sha512-80NIMzo8b2W+PL0Jd7NjiJW9mgaT8Y8wsIT/lh6mAvYH7mK0ecDJUYUTAAv79Tbo1iCGPAr3T295DlVtS8s4yQ== +"@react-native-community/cli-server-api@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.3.2.tgz#11df4e20ed72d59cf22adf77bd30aff3d6e70dc9" + integrity sha512-iwa7EO9XFA/OjI5pPLLpI/6mFVqv8L73kNck3CNOJIUCCveGXBKK0VMyOkXaf/BYnihgQrXh+x5cxbDbggr7+Q== dependencies: - "@react-native-community/cli-debugger-ui" "12.3.6" - "@react-native-community/cli-tools" "12.3.6" + "@react-native-community/cli-debugger-ui" "12.3.2" + "@react-native-community/cli-tools" "12.3.2" compression "^1.7.1" connect "^3.6.5" errorhandler "^1.5.1" @@ -2108,10 +2110,10 @@ serve-static "^1.13.1" ws "^7.5.1" -"@react-native-community/cli-tools@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.3.6.tgz#c39965982347635dfaf1daa7b3c0133b3bd45e64" - integrity sha512-FPEvZn19UTMMXUp/piwKZSh8cMEfO8G3KDtOwo53O347GTcwNrKjgZGtLSPELBX2gr+YlzEft3CoRv2Qmo83fQ== +"@react-native-community/cli-tools@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.3.2.tgz#d3362b04fba3f73ec82c5a493696b575acfb420c" + integrity sha512-nDH7vuEicHI2TI0jac/DjT3fr977iWXRdgVAqPZFFczlbs7A8GQvEdGnZ1G8dqRUmg+kptw0e4hwczAOG89JzQ== dependencies: appdirsjs "^1.2.4" chalk "^4.1.2" @@ -2124,27 +2126,27 @@ shell-quote "^1.7.3" sudo-prompt "^9.0.0" -"@react-native-community/cli-types@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.3.6.tgz#239de348800fe1ffba3eb1fe0edbeb9306981e57" - integrity sha512-xPqTgcUtZowQ8WKOkI9TLGBwH2bGggOC4d2FFaIRST3gTcjrEeGRNeR5aXCzJFIgItIft8sd7p2oKEdy90+01Q== +"@react-native-community/cli-types@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.3.2.tgz#0551c553c87701faae580097d7786dfff8ec2ef4" + integrity sha512-9D0UEFqLW8JmS16mjHJxUJWX8E+zJddrHILSH8AJHZ0NNHv4u2DXKdb0wFLMobFxGNxPT+VSOjc60fGvXzWHog== dependencies: joi "^17.2.1" -"@react-native-community/cli@12.3.6": - version "12.3.6" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.3.6.tgz#7a323b78725b959bb8a31cca1145918263ff3c8d" - integrity sha512-647OSi6xBb8FbwFqX9zsJxOzu685AWtrOUWHfOkbKD+5LOpGORw+GQo0F9rWZnB68rLQyfKUZWJeaD00pGv5fw== - dependencies: - "@react-native-community/cli-clean" "12.3.6" - "@react-native-community/cli-config" "12.3.6" - "@react-native-community/cli-debugger-ui" "12.3.6" - "@react-native-community/cli-doctor" "12.3.6" - "@react-native-community/cli-hermes" "12.3.6" - "@react-native-community/cli-plugin-metro" "12.3.6" - "@react-native-community/cli-server-api" "12.3.6" - "@react-native-community/cli-tools" "12.3.6" - "@react-native-community/cli-types" "12.3.6" +"@react-native-community/cli@12.3.2": + version "12.3.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.3.2.tgz#002ae3683b9fe6b0a83a837f41d9db541ea7667f" + integrity sha512-WgoUWwLDcf/G1Su2COUUVs3RzAwnV/vUTdISSpAUGgSc57mPabaAoUctKTnfYEhCnE3j02k3VtaVPwCAFRO3TQ== + dependencies: + "@react-native-community/cli-clean" "12.3.2" + "@react-native-community/cli-config" "12.3.2" + "@react-native-community/cli-debugger-ui" "12.3.2" + "@react-native-community/cli-doctor" "12.3.2" + "@react-native-community/cli-hermes" "12.3.2" + "@react-native-community/cli-plugin-metro" "12.3.2" + "@react-native-community/cli-server-api" "12.3.2" + "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-types" "12.3.2" chalk "^4.1.2" commander "^9.4.1" deepmerge "^4.3.0" @@ -2300,14 +2302,14 @@ mkdirp "^0.5.1" nullthrows "^1.1.1" -"@react-native/community-cli-plugin@0.73.17": - version "0.73.17" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.17.tgz#37b381a8b503a3296eaa6727e0c52ea8835add28" - integrity sha512-F3PXZkcHg+1ARIr6FRQCQiB7ZAA+MQXGmq051metRscoLvgYJwj7dgC8pvgy0kexzUkHu5BNKrZeySzUft3xuQ== +"@react-native/community-cli-plugin@0.73.16": + version "0.73.16" + resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.16.tgz#29dca91aa3e24c8cd534dbf3db5766509da92ea3" + integrity sha512-eNH3v3qJJF6f0n/Dck90qfC9gVOR4coAXMTdYECO33GfgjTi+73vf/SBqlXw9HICH/RNZYGPM3wca4FRF7TYeQ== dependencies: - "@react-native-community/cli-server-api" "12.3.6" - "@react-native-community/cli-tools" "12.3.6" - "@react-native/dev-middleware" "0.73.8" + "@react-native-community/cli-server-api" "12.3.2" + "@react-native-community/cli-tools" "12.3.2" + "@react-native/dev-middleware" "0.73.7" "@react-native/metro-babel-transformer" "0.73.15" chalk "^4.0.0" execa "^5.1.1" @@ -2322,10 +2324,10 @@ resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.73.3.tgz#033757614d2ada994c68a1deae78c1dd2ad33c2b" integrity sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw== -"@react-native/dev-middleware@0.73.8": - version "0.73.8" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.8.tgz#2e43722a00c7b8db753f747f40267cbad6caba4d" - integrity sha512-oph4NamCIxkMfUL/fYtSsE+JbGOnrlawfQ0kKtDQ5xbOjPKotKoXqrs1eGwozNKv7FfQ393stk1by9a6DyASSg== +"@react-native/dev-middleware@0.73.7": + version "0.73.7" + resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.7.tgz#61d2bf08973d9a537fa3f2a42deeb13530d721ae" + integrity sha512-BZXpn+qKp/dNdr4+TkZxXDttfx8YobDh8MFHsMk9usouLm22pKgFIPkGBV0X8Do4LBkFNPGtrnsKkWk/yuUXKg== dependencies: "@isaacs/ttlcache" "^1.4.1" "@react-native/debugger-frontend" "0.73.3" @@ -2337,7 +2339,6 @@ open "^7.0.3" serve-static "^1.13.1" temp-dir "^2.0.0" - ws "^6.2.2" "@react-native/gradle-plugin@0.73.4": version "0.73.4" @@ -4892,6 +4893,11 @@ invariant@^2.2.4: dependencies: loose-envify "^1.0.0" +ip@^1.1.5: + version "1.1.9" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.9.tgz#8dfbcc99a754d07f425310b86a99546b1151e396" + integrity sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ== + is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz" @@ -7316,18 +7322,18 @@ react-is@^17.0.1: resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-native@0.73.5: - version "0.73.5" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.73.5.tgz#724fd1ae8ec8fee1dcf619c82bdd1695d3cff463" - integrity sha512-iHgDArmF4CrhL0qTj+Rn+CBN5pZWUL9lUGl8ub+V9Hwu/vnzQQh8rTMVSwVd2sV6N76KjpE5a4TfIAHkpIHhKg== +react-native@0.73.4: + version "0.73.4" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.73.4.tgz#81e07d4e7b6308c4649d5fa24038c0e87b17f2e1" + integrity sha512-VtS+Yr6OOTIuJGDECIYWzNU8QpJjASQYvMtfa/Hvm/2/h5GdB6W9H9TOmh13x07Lj4AOhNMx3XSsz6TdrO4jIg== dependencies: "@jest/create-cache-key-function" "^29.6.3" - "@react-native-community/cli" "12.3.6" - "@react-native-community/cli-platform-android" "12.3.6" - "@react-native-community/cli-platform-ios" "12.3.6" + "@react-native-community/cli" "12.3.2" + "@react-native-community/cli-platform-android" "12.3.2" + "@react-native-community/cli-platform-ios" "12.3.2" "@react-native/assets-registry" "0.73.1" "@react-native/codegen" "0.73.3" - "@react-native/community-cli-plugin" "0.73.17" + "@react-native/community-cli-plugin" "0.73.16" "@react-native/gradle-plugin" "0.73.4" "@react-native/js-polyfills" "0.73.1" "@react-native/normalize-colors" "0.73.2"