chore: Upgrade Skia to new Ganesh Rendering Pipeline and RN to 0.72 (#1638)

* chore: Upgrade all Deps RN 72

* fix breaking skia changes

* fix devDeps

* Update yarn.lock

* fix metro config

* Update yarn.lock
This commit is contained in:
Marc Rousavy 2023-07-03 12:40:07 +02:00 committed by GitHub
parent 820db3ca9e
commit 4ad4804e51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 4196 additions and 3393 deletions

View File

@ -12,7 +12,7 @@ module.exports = {
},
ignorePatterns: ['scripts', 'lib', 'docs', 'example', 'app.plugin.js'],
plugins: ['@typescript-eslint'],
extends: ['plugin:@typescript-eslint/recommended', '@react-native-community'],
extends: ['plugin:@typescript-eslint/recommended', '@react-native'],
rules: {
// eslint
semi: 'off',

View File

@ -33,7 +33,7 @@ Pod::Spec.new do |s|
s.pod_target_xcconfig = {
"USE_HEADERMAP" => "YES",
"GCC_PREPROCESSOR_DEFINITIONS" => '$(inherited) SK_GL=1 SK_METAL=1',
"GCC_PREPROCESSOR_DEFINITIONS" => '$(inherited) SK_METAL=1 SK_GANESH=1',
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/ReactCommon\" \"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/Headers/Private/React-Core\" \"#{skiaPath}/cpp/skia/**\" "
}
s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags

View File

@ -12,7 +12,7 @@ buildscript {
}
dependencies {
classpath "com.android.tools.build:gradle:7.3.1"
classpath "com.android.tools.build:gradle"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
}

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@ -12,5 +12,5 @@ module.exports = {
},
ignorePatterns: ['babel.config.js', 'metro.config.js', '.eslintrc.js'],
plugins: ['@typescript-eslint'],
extends: ['plugin:@typescript-eslint/recommended', '@react-native-community', '../.eslintrc.js'],
extends: ['plugin:@typescript-eslint/recommended', '@react-native', '../.eslintrc.js'],
};

View File

@ -28,9 +28,7 @@ public class MainActivity extends ReactActivity {
this,
getMainComponentName(),
// If you opted-in for the New Architecture, we enable the Fabric Renderer.
DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled
// If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18).
DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled
DefaultNewArchitectureEntryPoint.getFabricEnabled()
);
}

View File

@ -13,7 +13,7 @@ buildscript {
mavenCentral()
}
dependencies {
classpath('com.android.tools.build:gradle:7.4.1')
classpath('com.android.tools.build:gradle')
classpath("com.facebook.react:react-native-gradle-plugin")
}
}

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@ -5,4 +5,4 @@ include ':app'
include ':react-native-vision-camera'
project(':react-native-vision-camera').projectDir = new File(rootProject.projectDir, '../../android')
includeBuild('../node_modules/react-native-gradle-plugin')
includeBuild('../node_modules/@react-native/gradle-plugin')

View File

@ -1,7 +1,11 @@
require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
# Resolve react_native_pods.rb with node to allow for hoisting
require Pod::Executable.execute_command('node', ['-p',
'require.resolve(
"react-native/scripts/react_native_pods.rb",
{paths: [process.argv[1]]},
)', __dir__]).strip
platform :ios, 12.4
platform :ios, min_ios_version_supported
prepare_react_native_project!
flipper_config = FlipperConfiguration.disabled
@ -21,8 +25,6 @@ target 'VisionCameraExample' do
use_react_native!(
:path => config[:reactNativePath],
# Hermes is now enabled by default. Disable by setting this flag to false.
# Upcoming versions of React Native may rely on get_default_flags(), but
# we make it explicit here to aid in the React Native upgrade process.
:hermes_enabled => flags[:hermes_enabled],
:fabric_enabled => flags[:fabric_enabled],
# Enables Flipper.
@ -37,24 +39,12 @@ target 'VisionCameraExample' do
pod 'VisionCamera', :path => '../..'
post_install do |installer|
# https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
react_native_post_install(
installer,
# Set `mac_catalyst_enabled` to `true` in order to apply patches
# necessary for Mac Catalyst builds
config[:reactNativePath],
:mac_catalyst_enabled => false
)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
# This is necessary for Xcode 14, because it signs resource bundles by default
# when building for devices. See https://github.com/facebook/react-native/issues/34673#issuecomment-1259253787
installer.target_installation_results.pod_target_installation_results
.each do |pod_name, target_installation_result|
target_installation_result.resource_bundle_targets.each do |resource_bundle_target|
resource_bundle_target.build_configurations.each do |config|
config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO'
end
end
end
end
end

View File

@ -1,19 +1,19 @@
PODS:
- boost (1.76.0)
- DoubleConversion (1.1.6)
- FBLazyVector (0.71.7)
- FBReactNativeSpec (0.71.7):
- FBLazyVector (0.72.1)
- FBReactNativeSpec (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTRequired (= 0.71.7)
- RCTTypeSafety (= 0.71.7)
- React-Core (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- RCTRequired (= 0.72.1)
- RCTTypeSafety (= 0.72.1)
- React-Core (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- fmt (6.2.1)
- glog (0.3.5)
- hermes-engine (0.71.7):
- hermes-engine/Pre-built (= 0.71.7)
- hermes-engine/Pre-built (0.71.7)
- hermes-engine (0.72.1):
- hermes-engine/Pre-built (= 0.72.1)
- hermes-engine/Pre-built (0.72.1)
- libevent (2.1.12)
- RCT-Folly (2021.07.22.00):
- boost
@ -32,27 +32,29 @@ PODS:
- fmt (~> 6.2.1)
- glog
- libevent
- RCTRequired (0.71.7)
- RCTTypeSafety (0.71.7):
- FBLazyVector (= 0.71.7)
- RCTRequired (= 0.71.7)
- React-Core (= 0.71.7)
- React (0.71.7):
- React-Core (= 0.71.7)
- React-Core/DevSupport (= 0.71.7)
- React-Core/RCTWebSocket (= 0.71.7)
- React-RCTActionSheet (= 0.71.7)
- React-RCTAnimation (= 0.71.7)
- React-RCTBlob (= 0.71.7)
- React-RCTImage (= 0.71.7)
- React-RCTLinking (= 0.71.7)
- React-RCTNetwork (= 0.71.7)
- React-RCTSettings (= 0.71.7)
- React-RCTText (= 0.71.7)
- React-RCTVibration (= 0.71.7)
- React-callinvoker (0.71.7)
- React-Codegen (0.71.7):
- RCTRequired (0.72.1)
- RCTTypeSafety (0.72.1):
- FBLazyVector (= 0.72.1)
- RCTRequired (= 0.72.1)
- React-Core (= 0.72.1)
- React (0.72.1):
- React-Core (= 0.72.1)
- React-Core/DevSupport (= 0.72.1)
- React-Core/RCTWebSocket (= 0.72.1)
- React-RCTActionSheet (= 0.72.1)
- React-RCTAnimation (= 0.72.1)
- React-RCTBlob (= 0.72.1)
- React-RCTImage (= 0.72.1)
- React-RCTLinking (= 0.72.1)
- React-RCTNetwork (= 0.72.1)
- React-RCTSettings (= 0.72.1)
- React-RCTText (= 0.72.1)
- React-RCTVibration (= 0.72.1)
- React-callinvoker (0.72.1)
- React-Codegen (0.72.1):
- DoubleConversion
- FBReactNativeSpec
- glog
- hermes-engine
- RCT-Folly
- RCTRequired
@ -60,223 +62,269 @@ PODS:
- React-Core
- React-jsi
- React-jsiexecutor
- React-NativeModulesApple
- React-rncore
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-Core (0.71.7):
- React-Core (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.7)
- React-cxxreact (= 0.71.7)
- React-Core/Default (= 0.72.1)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/CoreModulesHeaders (0.71.7):
- React-Core/CoreModulesHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/Default (0.71.7):
- React-Core/Default (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/DevSupport (0.71.7):
- React-Core/DevSupport (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.7)
- React-Core/RCTWebSocket (= 0.71.7)
- React-cxxreact (= 0.71.7)
- React-Core/Default (= 0.72.1)
- React-Core/RCTWebSocket (= 0.72.1)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-jsinspector (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-jsinspector (= 0.72.1)
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTActionSheetHeaders (0.71.7):
- React-Core/RCTActionSheetHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTAnimationHeaders (0.71.7):
- React-Core/RCTAnimationHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTBlobHeaders (0.71.7):
- React-Core/RCTBlobHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTImageHeaders (0.71.7):
- React-Core/RCTImageHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTLinkingHeaders (0.71.7):
- React-Core/RCTLinkingHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTNetworkHeaders (0.71.7):
- React-Core/RCTNetworkHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTSettingsHeaders (0.71.7):
- React-Core/RCTSettingsHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTTextHeaders (0.71.7):
- React-Core/RCTTextHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTVibrationHeaders (0.71.7):
- React-Core/RCTVibrationHeaders (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.7)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-Core/RCTWebSocket (0.71.7):
- React-Core/RCTWebSocket (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.7)
- React-cxxreact (= 0.71.7)
- React-Core/Default (= 0.72.1)
- React-cxxreact
- React-hermes
- React-jsi (= 0.71.7)
- React-jsiexecutor (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi
- React-jsiexecutor
- React-perflogger
- React-runtimeexecutor
- React-utils
- SocketRocket (= 0.6.1)
- Yoga
- React-CoreModules (0.71.7):
- React-CoreModules (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.7)
- React-Codegen (= 0.71.7)
- React-Core/CoreModulesHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- RCTTypeSafety (= 0.72.1)
- React-Codegen (= 0.72.1)
- React-Core/CoreModulesHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- React-RCTBlob
- React-RCTImage (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-cxxreact (0.71.7):
- React-RCTImage (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- SocketRocket (= 0.6.1)
- React-cxxreact (0.72.1):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.7)
- React-jsi (= 0.71.7)
- React-jsinspector (= 0.71.7)
- React-logger (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-runtimeexecutor (= 0.71.7)
- React-hermes (0.71.7):
- React-callinvoker (= 0.72.1)
- React-jsi (= 0.72.1)
- React-jsinspector (= 0.72.1)
- React-logger (= 0.72.1)
- React-perflogger (= 0.72.1)
- React-runtimeexecutor (= 0.72.1)
- React-debug (0.72.1)
- React-hermes (0.72.1):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly/Futures (= 2021.07.22.00)
- React-cxxreact (= 0.71.7)
- React-cxxreact (= 0.72.1)
- React-jsi
- React-jsiexecutor (= 0.71.7)
- React-jsinspector (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsi (0.71.7):
- React-jsiexecutor (= 0.72.1)
- React-jsinspector (= 0.72.1)
- React-perflogger (= 0.72.1)
- React-jsi (0.72.1):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-jsiexecutor (0.71.7):
- React-jsiexecutor (0.72.1):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.7)
- React-jsi (= 0.71.7)
- React-perflogger (= 0.71.7)
- React-jsinspector (0.71.7)
- React-logger (0.71.7):
- React-cxxreact (= 0.72.1)
- React-jsi (= 0.72.1)
- React-perflogger (= 0.72.1)
- React-jsinspector (0.72.1)
- React-logger (0.72.1):
- glog
- react-native-blur (4.3.0):
- react-native-blur (4.3.2):
- React-Core
- react-native-cameraroll (5.2.3):
- react-native-cameraroll (5.7.1):
- React-Core
- react-native-safe-area-context (4.5.0):
- react-native-safe-area-context (4.6.3):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- react-native-skia (0.1.186):
- react-native-skia (0.1.197):
- React
- React-callinvoker
- React-Core
@ -291,97 +339,123 @@ PODS:
- React
- React-callinvoker
- React-Core
- React-perflogger (0.71.7)
- React-RCTActionSheet (0.71.7):
- React-Core/RCTActionSheetHeaders (= 0.71.7)
- React-RCTAnimation (0.71.7):
- React-NativeModulesApple (0.72.1):
- hermes-engine
- React-callinvoker
- React-Core
- React-cxxreact
- React-jsi
- React-runtimeexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-perflogger (0.72.1)
- React-RCTActionSheet (0.72.1):
- React-Core/RCTActionSheetHeaders (= 0.72.1)
- React-RCTAnimation (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.7)
- React-Codegen (= 0.71.7)
- React-Core/RCTAnimationHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTAppDelegate (0.71.7):
- RCTTypeSafety (= 0.72.1)
- React-Codegen (= 0.72.1)
- React-Core/RCTAnimationHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTAppDelegate (0.72.1):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- React-CoreModules
- React-hermes
- React-NativeModulesApple
- React-RCTImage
- React-RCTNetwork
- React-runtimescheduler
- ReactCommon/turbomodule/core
- React-RCTBlob (0.71.7):
- React-RCTBlob (0.72.1):
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.7)
- React-Core/RCTBlobHeaders (= 0.71.7)
- React-Core/RCTWebSocket (= 0.71.7)
- React-jsi (= 0.71.7)
- React-RCTNetwork (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTImage (0.71.7):
- React-Codegen (= 0.72.1)
- React-Core/RCTBlobHeaders (= 0.72.1)
- React-Core/RCTWebSocket (= 0.72.1)
- React-jsi (= 0.72.1)
- React-RCTNetwork (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTImage (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.7)
- React-Codegen (= 0.71.7)
- React-Core/RCTImageHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- React-RCTNetwork (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTLinking (0.71.7):
- React-Codegen (= 0.71.7)
- React-Core/RCTLinkingHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTNetwork (0.71.7):
- RCTTypeSafety (= 0.72.1)
- React-Codegen (= 0.72.1)
- React-Core/RCTImageHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- React-RCTNetwork (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTLinking (0.72.1):
- React-Codegen (= 0.72.1)
- React-Core/RCTLinkingHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTNetwork (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.7)
- React-Codegen (= 0.71.7)
- React-Core/RCTNetworkHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTSettings (0.71.7):
- RCTTypeSafety (= 0.72.1)
- React-Codegen (= 0.72.1)
- React-Core/RCTNetworkHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTSettings (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.7)
- React-Codegen (= 0.71.7)
- React-Core/RCTSettingsHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-RCTText (0.71.7):
- React-Core/RCTTextHeaders (= 0.71.7)
- React-RCTVibration (0.71.7):
- RCTTypeSafety (= 0.72.1)
- React-Codegen (= 0.72.1)
- React-Core/RCTSettingsHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-RCTText (0.72.1):
- React-Core/RCTTextHeaders (= 0.72.1)
- React-RCTVibration (0.72.1):
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.7)
- React-Core/RCTVibrationHeaders (= 0.71.7)
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/core (= 0.71.7)
- React-runtimeexecutor (0.71.7):
- React-jsi (= 0.71.7)
- ReactCommon/turbomodule/bridging (0.71.7):
- React-Codegen (= 0.72.1)
- React-Core/RCTVibrationHeaders (= 0.72.1)
- React-jsi (= 0.72.1)
- ReactCommon/turbomodule/core (= 0.72.1)
- React-rncore (0.72.1)
- React-runtimeexecutor (0.72.1):
- React-jsi (= 0.72.1)
- React-runtimescheduler (0.72.1):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker
- React-debug
- React-jsi
- React-runtimeexecutor
- React-utils (0.72.1):
- glog
- RCT-Folly (= 2021.07.22.00)
- React-debug
- ReactCommon/turbomodule/bridging (0.72.1):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.7)
- React-Core (= 0.71.7)
- React-cxxreact (= 0.71.7)
- React-jsi (= 0.71.7)
- React-logger (= 0.71.7)
- React-perflogger (= 0.71.7)
- ReactCommon/turbomodule/core (0.71.7):
- React-callinvoker (= 0.72.1)
- React-cxxreact (= 0.72.1)
- React-jsi (= 0.72.1)
- React-logger (= 0.72.1)
- React-perflogger (= 0.72.1)
- ReactCommon/turbomodule/core (0.72.1):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.7)
- React-Core (= 0.71.7)
- React-cxxreact (= 0.71.7)
- React-jsi (= 0.71.7)
- React-logger (= 0.71.7)
- React-perflogger (= 0.71.7)
- RNGestureHandler (2.9.0):
- React-callinvoker (= 0.72.1)
- React-cxxreact (= 0.72.1)
- React-jsi (= 0.72.1)
- React-logger (= 0.72.1)
- React-perflogger (= 0.72.1)
- RNGestureHandler (2.12.0):
- React-Core
- RNReanimated (3.0.2):
- RNReanimated (3.3.0):
- DoubleConversion
- FBLazyVector
- FBReactNativeSpec
- glog
- hermes-engine
- RCT-Folly
- RCTRequired
- RCTTypeSafety
@ -391,11 +465,13 @@ PODS:
- React-Core/RCTWebSocket
- React-CoreModules
- React-cxxreact
- React-hermes
- React-jsi
- React-jsiexecutor
- React-jsinspector
- React-RCTActionSheet
- React-RCTAnimation
- React-RCTAppDelegate
- React-RCTBlob
- React-RCTImage
- React-RCTLinking
@ -404,13 +480,14 @@ PODS:
- React-RCTText
- ReactCommon/turbomodule/core
- Yoga
- RNScreens (3.20.0):
- RNScreens (3.22.0):
- React-Core
- React-RCTImage
- RNStaticSafeAreaInsets (2.2.0):
- React-Core
- RNVectorIcons (9.2.0):
- React-Core
- SocketRocket (0.6.1)
- VisionCamera (3.0.0-rc.2):
- React
- React-callinvoker
@ -437,6 +514,7 @@ DEPENDENCIES:
- React-Core/RCTWebSocket (from `../node_modules/react-native/`)
- React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
- React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
- React-debug (from `../node_modules/react-native/ReactCommon/react/debug`)
- React-hermes (from `../node_modules/react-native/ReactCommon/hermes`)
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
@ -449,6 +527,7 @@ DEPENDENCIES:
- "react-native-slider (from `../node_modules/@react-native-community/slider`)"
- react-native-video (from `../node_modules/react-native-video`)
- react-native-worklets (from `../node_modules/react-native-worklets`)
- React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`)
- React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
@ -460,7 +539,10 @@ DEPENDENCIES:
- React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
- React-RCTText (from `../node_modules/react-native/Libraries/Text`)
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
- React-rncore (from `../node_modules/react-native/ReactCommon`)
- React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
- React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`)
- React-utils (from `../node_modules/react-native/ReactCommon/react/utils`)
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
- RNGestureHandler (from `../node_modules/react-native-gesture-handler`)
- RNReanimated (from `../node_modules/react-native-reanimated`)
@ -474,6 +556,7 @@ SPEC REPOS:
trunk:
- fmt
- libevent
- SocketRocket
EXTERNAL SOURCES:
boost:
@ -488,6 +571,7 @@ EXTERNAL SOURCES:
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
hermes-engine:
:podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
:tag: hermes-2023-03-20-RNv0.72.0-49794cfc7c81fb8f69fd60c3bbf85a7480cc5a77
RCT-Folly:
:podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
RCTRequired:
@ -506,6 +590,8 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/React/CoreModules"
React-cxxreact:
:path: "../node_modules/react-native/ReactCommon/cxxreact"
React-debug:
:path: "../node_modules/react-native/ReactCommon/react/debug"
React-hermes:
:path: "../node_modules/react-native/ReactCommon/hermes"
React-jsi:
@ -530,6 +616,8 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native-video"
react-native-worklets:
:path: "../node_modules/react-native-worklets"
React-NativeModulesApple:
:path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios"
React-perflogger:
:path: "../node_modules/react-native/ReactCommon/reactperflogger"
React-RCTActionSheet:
@ -552,8 +640,14 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/Libraries/Text"
React-RCTVibration:
:path: "../node_modules/react-native/Libraries/Vibration"
React-rncore:
:path: "../node_modules/react-native/ReactCommon"
React-runtimeexecutor:
:path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
React-runtimescheduler:
:path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler"
React-utils:
:path: "../node_modules/react-native/ReactCommon/react/utils"
ReactCommon:
:path: "../node_modules/react-native/ReactCommon"
RNGestureHandler:
@ -574,54 +668,60 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
boost: 57d2868c099736d80fcd648bf211b4431e51a558
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
FBLazyVector: a89a0525bc7ca174675045c2b492b5280d5a2470
FBReactNativeSpec: 7714e6bc1e9ea23df6c4cb42f0b2fd9c6a3a559c
FBLazyVector: 55cd4593d570bd9e5e227488d637ce6a9581ce51
FBReactNativeSpec: 799b0e1a1561699cd0e424e24fe5624da38402f0
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
hermes-engine: 4438d2b8bf8bebaba1b1ac0451160bab59e491f8
hermes-engine: 9df83855a0fd15ef8eb61694652bae636b0c466e
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
RCTRequired: 5a4a30ac20c86eeadd6844a9328f78d4168cf9b2
RCTTypeSafety: 279fc5861a89f0f37db3a585f27f971485b4b734
React: 88307a9be3bd0e71a6822271cf28b84a587fb97f
React-callinvoker: 35fb980c454104ebe82f0afb9826830089248e08
React-Codegen: a8dbde3b7476d5c19437d2adb9e8ea1b426b9595
React-Core: 385cb6fa78762c6409ff39faeb0dd9ad664b6e84
React-CoreModules: c2b7db313b04d9b71954ffd55d0c2e46bc40e9fb
React-cxxreact: 845fefb889132e5d004ff818f7a599e32c52e7d6
React-hermes: 86135f35e1dd2dfccfb97afe96d0c06f6a3970c4
React-jsi: 39c116aa6c3d6f3d9874eff6998a670b47882a28
React-jsiexecutor: eaa5f71eb8f6861cf0e57f1a0f52aeb020d9e18e
React-jsinspector: 9885f6f94d231b95a739ef7bb50536fb87ce7539
React-logger: 3f8ebad1be1bf3299d1ab6d7f971802d7395c7ef
react-native-blur: 50c9feabacbc5f49b61337ebc32192c6be7ec3c3
react-native-cameraroll: 5b25d0be40185d02e522bf2abf8a1ba4e8faa107
react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc
react-native-skia: 93857be5661fc3d81abcd3e7cb357a6662275778
RCTRequired: c52ee8fb2b35c1b54031dd8e92d88ad4dba8f2ce
RCTTypeSafety: 75fa444becadf0ebfa0a456b8c64560c7c89c7df
React: 3e5b3962f27b7334eaf5517a35b3434503df35ad
React-callinvoker: c3a225610efe0caadac78da53b6fe78e53eb2b03
React-Codegen: bba20685e5c1515f8ecb289bd9770835a1338125
React-Core: 6f6564ea4c5fc118757c945b6359a36aaea86216
React-CoreModules: ab635016811b610a93e873485f6f900ce0582192
React-cxxreact: f82f0f1832606fabb9e8c9d61c4230704a3d2d2f
React-debug: 8aa2bd54b0f0011049300ce3339b0e51254ef3b5
React-hermes: f076cb5f7351d6cc1600125bef3259ea880460fb
React-jsi: 9f381c8594161b2328b93cd3ba5d0bcfcd1e093a
React-jsiexecutor: 184eae1ecdedc7a083194bd9ff809c93f08fd34c
React-jsinspector: d0b5bfd1085599265f4212034321e829bdf83cc0
React-logger: b8103c9b04e707b50cdd2b1aeb382483900cbb37
react-native-blur: cfdad7b3c01d725ab62a8a729f42ea463998afa2
react-native-cameraroll: aff50ec1df9d054626dceca9336e6644e153d32f
react-native-safe-area-context: 36cc67648134e89465663b8172336a19eeda493d
react-native-skia: e2cb3443442bf7680e3276dc82cd87c97f96b6f9
react-native-slider: 33b8d190b59d4f67a541061bb91775d53d617d9d
react-native-video: c26780b224543c62d5e1b2a7244a5cd1b50e8253
react-native-worklets: c7576ad4ad0f030ff41e8d74ad0077c96054a6c1
React-perflogger: 2d505bbe298e3b7bacdd9e542b15535be07220f6
React-RCTActionSheet: 0e96e4560bd733c9b37efbf68f5b1a47615892fb
React-RCTAnimation: fd138e26f120371c87e406745a27535e2c8a04ef
React-RCTAppDelegate: 4a9fd1230a98dc3d4382f8a934dc9f50834d8335
React-RCTBlob: 38a7185f06a0ce8153a023e63b406a28d67b955d
React-RCTImage: 92b0966e7c1cadda889e961c474397ad5180e194
React-RCTLinking: b80f8d0c6e94c54294b0048def51f57eaa9a27af
React-RCTNetwork: 491b0c65ac22edbd6695d12d084b4943103b009b
React-RCTSettings: 97af3e8abe0023349ec015910df3bda1a0380117
React-RCTText: 33c85753bd714d527d2ae538dc56ec24c6783d84
React-RCTVibration: 08f132cad9896458776f37c112e71d60aef1c6ae
React-runtimeexecutor: c5c89f8f543842dd864b63ded1b0bbb9c9445328
ReactCommon: dbfbe2f7f3c5ce4ce44f43f2fd0d5950d1eb67c5
RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39
RNReanimated: f0dd6b881808e635ef0673f89642937d6c141314
RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f
React-NativeModulesApple: 4f31a812364443cee6ef768d256c594ad3b20f53
React-perflogger: 3d501f34c8d4b10cb75f348e43591765788525ad
React-RCTActionSheet: f5335572c979198c0c3daff67b07bd1ad8370c1d
React-RCTAnimation: 5d0d31a4f9c49a70f93f32e4da098fb49b5ae0b3
React-RCTAppDelegate: 01ddbdeb01b7cefa932cb66a17299d60620e820d
React-RCTBlob: 280d2605ba10b8f2282f1e8a849584368577251a
React-RCTImage: e15d22db53406401cdd1407ce51080a66a9c7ed4
React-RCTLinking: 39815800ec79d6fb15e6329244d195ebeabf7541
React-RCTNetwork: 2a6548e13d2577b112d4250ac5be74ae62e1e86b
React-RCTSettings: a76aee44d5398144646be146c334b15c90ad9582
React-RCTText: afad390f3838f210c2bc9e1a19bb048003b2a771
React-RCTVibration: 29bbaa5c57c02dc036d7e557584b492000b1d3e7
React-rncore: 50966ce412d63bee9ffe5c98249857c23870a3c4
React-runtimeexecutor: d129f2b53d61298093d7c7d8ebfafa664f911ce6
React-runtimescheduler: 67707a955b9ecc628cc38bdc721fbc498910f0fd
React-utils: 0a70ea97d4e2749f336b450c082905be1d389435
ReactCommon: e593d19c9e271a6da4d0bd7f13b28cfeae5d164b
RNGestureHandler: dec4645026e7401a0899f2846d864403478ff6a5
RNReanimated: 9f7068e43b9358a46a688d94a5a3adb258139457
RNScreens: 68fd1060f57dd1023880bf4c05d74784b5392789
RNStaticSafeAreaInsets: 055ddbf5e476321720457cdaeec0ff2ba40ec1b8
RNVectorIcons: fcc2f6cb32f5735b586e66d14103a74ce6ad61f8
VisionCamera: 75445eda0090454f5a80786a001e4fb7793fbfe1
Yoga: d56980c8914db0b51692f55533409e844b66133c
SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17
VisionCamera: d93ed026b49508915f857e84d25a97a18e0e7eb2
Yoga: 65286bb6a07edce5e4fe8c90774da977ae8fc009
PODFILE CHECKSUM: bd58477b713db59422e816e017e3fbbdd8b7cf60
PODFILE CHECKSUM: ab9c06b18c63e741c04349c0fd630c6d3145081c
COCOAPODS: 1.12.1

View File

@ -496,6 +496,8 @@
);
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
OTHER_CFLAGS = "$(inherited)";
OTHER_CPLUSPLUSFLAGS = "$(inherited)";
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
};
@ -551,6 +553,8 @@
"\"$(inherited)\"",
);
MTL_ENABLE_DEBUG_INFO = NO;
OTHER_CFLAGS = "$(inherited)";
OTHER_CPLUSPLUSFLAGS = "$(inherited)";
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
SWIFT_COMPILATION_MODE = wholemodule;

View File

@ -12,7 +12,7 @@
// You can add your custom initial props in the dictionary below.
// They will be passed down to the ViewController used by React Native.
self.initialProps = @{};
[FrameProcessorPlugin registerPlugin:[[ExamplePluginSwift alloc] init]];
return [super application:application didFinishLaunchingWithOptions:launchOptions];
@ -27,14 +27,4 @@
#endif
}
/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
///
/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
/// @return: `true` if the `concurrentRoot` feature is enabled. Otherwise, it returns `false`.
- (BOOL)concurrentRootEnabled
{
return true;
}
@end

View File

@ -1,8 +1,6 @@
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require('path');
const exclusionList = require('metro-config/src/defaults/exclusionList');
const escape = require('escape-string-regexp');
const exclusionList = require('metro-config/src/defaults/exclusionList');
const pak = require('../package.json');
const root = path.resolve(__dirname, '..');
@ -16,9 +14,14 @@ module.exports = {
watchFolders: [root],
// We need to make sure that only one version is loaded for peerDependencies
// So we blacklist them at the root, and alias them to the versions in example's node_modules
// So we block them at the root, and alias them to the versions in example's node_modules
resolver: {
blacklistRE: exclusionList(modules.map((m) => new RegExp(`^${escape(path.join(root, 'node_modules', m))}\\/.*$`))),
blacklistRE: exclusionList(
modules.map(
(m) =>
new RegExp(`^${escape(path.join(root, 'node_modules', m))}\\/.*$`)
)
),
extraNodeModules: modules.reduce((acc, name) => {
acc[name] = path.join(__dirname, 'node_modules', name);
@ -27,10 +30,9 @@ module.exports = {
},
transformer: {
// eslint-disable-next-line require-await
getTransformOptions: async () => ({
transform: {
experimentalImportSupport: true,
experimentalImportSupport: false,
inlineRequires: true,
},
}),

View File

@ -14,38 +14,37 @@
"typescript": "tsc --noEmit"
},
"dependencies": {
"@react-native-camera-roll/camera-roll": "^5.2.3",
"@react-native-community/blur": "^4.3.0",
"@react-native-camera-roll/camera-roll": "^5.7.1",
"@react-native-community/blur": "^4.3.2",
"@react-native-community/slider": "^4.4.2",
"@react-navigation/native": "^6.1.3",
"@react-navigation/native-stack": "^6.9.9",
"@shopify/react-native-skia": "^0.1.186",
"@react-navigation/native": "^6.1.7",
"@react-navigation/native-stack": "^6.9.13",
"@shopify/react-native-skia": "^0.1.197",
"react": "^18.2.0",
"react-native": "^0.71.7",
"react-native-gesture-handler": "^2.9.0",
"react-native": "^0.72.1",
"react-native-gesture-handler": "^2.12.0",
"react-native-pressable-opacity": "^1.0.10",
"react-native-reanimated": "^3.0.2",
"react-native-safe-area-context": "^4.5.0",
"react-native-screens": "^3.19.0",
"react-native-reanimated": "^3.3.0",
"react-native-safe-area-context": "^4.6.3",
"react-native-screens": "^3.22.0",
"react-native-static-safe-area-insets": "^2.2.0",
"react-native-vector-icons": "^9.2.0",
"react-native-video": "^5.2.1",
"react-native-worklets": "https://github.com/chrfalch/react-native-worklets#d62d76c"
"react-native-worklets": "https://github.com/chrfalch/react-native-worklets#3ac2fbb"
},
"devDependencies": {
"@babel/core": "^7.20.12",
"@babel/runtime": "^7.20.13",
"@react-native-community/eslint-config": "^3.2.0",
"@react-native-community/eslint-plugin": "^1.3.0",
"@types/react": "^18.0.27",
"@types/react-native": "^0.71.6",
"@types/react-native-vector-icons": "^6.4.13",
"@types/react-native-video": "^5.0.14",
"@babel/core": "^7.22.5",
"@babel/preset-env": "^7.22.5",
"@babel/runtime": "^7.22.5",
"@react-native/eslint-config": "^0.72.2",
"@react-native/metro-config": "^0.72.7",
"@react-native/typescript-config": "^0.73.0",
"@types/react": "^18.2.14",
"babel-plugin-module-resolver": "^5.0.0",
"eslint": "^8.33.0",
"metro-config": "^0.75.0",
"metro-react-native-babel-preset": "^0.75.0",
"prettier": "^2.8.4",
"typescript": "^4.9.5"
"eslint": "^8.44.0",
"jest": "^29.5.0",
"metro-react-native-babel-preset": "^0.76.7",
"prettier": "^2.8.8",
"typescript": "^5.1.6"
}
}

File diff suppressed because it is too large Load Diff

View File

@ -29,13 +29,7 @@ FrameProcessorCallback convertWorkletToFrameProcessorCallback(jsi::Runtime& runt
// Wrap Worklet call in invoker
auto workletInvoker = std::make_shared<RNWorklet::WorkletInvoker>(worklet);
// Create cached Skia Canvas object
auto callInvoker = RCTBridge.currentBridge.jsCallInvoker;
auto skiaPlatformContext = std::make_shared<RNSkia::RNSkiOSPlatformContext>(&runtime, callInvoker, [](std::function<void()>) {
// TODO: dispatch on main thread is stubbed for now :/
}, [](size_t viewTag) {
// TODO: screenshot is stubbed for now :/
return sk_sp<SkImage>(nullptr);
});
auto skiaPlatformContext = std::make_shared<RNSkia::RNSkiOSPlatformContext>(&runtime, RCTBridge.currentBridge);
auto canvasHostObject = std::make_shared<RNSkia::JsiSkCanvas>(skiaPlatformContext);
// Converts a Worklet to a callable Objective-C block function

View File

@ -10,6 +10,7 @@
#import <Foundation/Foundation.h>
#import "SkiaMetalCanvasProvider.h"
#include <include/core/SkCanvas.h>
#include <exception>
#include <string>

View File

@ -13,7 +13,9 @@
#import <include/core/SkColorSpace.h>
#import <include/core/SkSurface.h>
#import <include/core/SkCanvas.h>
#import <include/core/SkData.h>
#import <include/core/SkImage.h>
#import <include/gpu/ganesh/SkImageGanesh.h>
#import <include/gpu/mtl/GrMtlTypes.h>
#import <include/gpu/GrRecordingContext.h>
#include <TargetConditionals.h>
@ -68,17 +70,17 @@ sk_sp<SkImage> SkImageHelpers::convertCMSampleBufferToSkImage(GrRecordingContext
GrMtlTextureInfo textureInfo;
auto mtlTexture = CVMetalTextureGetTexture(cvTexture);
textureInfo.fTexture.retain((__bridge void*)mtlTexture);
// Wrap it in a GrBackendTexture
GrBackendTexture texture(width, height, GrMipmapped::kNo, textureInfo);
// Create an SkImage from the existing texture
auto image = SkImage::MakeFromTexture(context,
texture,
kTopLeft_GrSurfaceOrigin,
kBGRA_8888_SkColorType,
kOpaque_SkAlphaType,
SkColorSpace::MakeSRGB());
auto image = SkImages::AdoptTextureFrom(context,
texture,
kTopLeft_GrSurfaceOrigin,
kBGRA_8888_SkColorType,
kOpaque_SkAlphaType,
SkColorSpace::MakeSRGB());
// Release the Texture wrapper (it will still be strong)
CFRelease(cvTexture);

View File

@ -6,11 +6,12 @@
#import <MetalKit/MetalKit.h>
#import <QuartzCore/CAMetalLayer.h>
#import <AVFoundation/AVFoundation.h>
#include <functional>
#include <include/gpu/GrDirectContext.h>
#include <include/core/SkCanvas.h>
#include <functional>
#include <mutex>
#include <memory>
#include <atomic>

View File

@ -7,6 +7,7 @@
#import <include/core/SkSurface.h>
#import <include/core/SkCanvas.h>
#import <include/core/SkFont.h>
#import <include/gpu/ganesh/SkImageGanesh.h>
#import <include/gpu/GrDirectContext.h>
#import "SkImageHelpers.h"
@ -120,12 +121,12 @@ void SkiaMetalCanvasProvider::render() {
GrMtlTextureInfo textureInfo;
textureInfo.fTexture.retain((__bridge void*)texture);
GrBackendTexture backendTexture(texture.width, texture.height, GrMipmapped::kNo, textureInfo);
auto image = SkImage::MakeFromTexture(context,
backendTexture,
kTopLeft_GrSurfaceOrigin,
kBGRA_8888_SkColorType,
kOpaque_SkAlphaType,
SkColorSpace::MakeSRGB());
auto image = SkImages::AdoptTextureFrom(context,
backendTexture,
kTopLeft_GrSurfaceOrigin,
kBGRA_8888_SkColorType,
kOpaque_SkAlphaType,
SkColorSpace::MakeSRGB());
// Draw the Texture (Frame) to the Canvas
canvas->drawImage(image, 0, 0);

View File

@ -71,23 +71,23 @@
"registry": "https://registry.npmjs.org/"
},
"devDependencies": {
"@expo/config-plugins": "^5.0.4",
"@jamesacarr/eslint-formatter-github-actions": "^0.1.0",
"@react-native-community/eslint-config": "^3.2.0",
"@react-native-community/eslint-plugin": "^1.3.0",
"@expo/config-plugins": "^6.0.2",
"@jamesacarr/eslint-formatter-github-actions": "^0.2.0",
"@react-native/eslint-config": "^0.72.2",
"@react-native/typescript-config": "^0.73.0",
"@release-it/conventional-changelog": "^5.1.1",
"@shopify/react-native-skia": "^0.1.186",
"@types/react": "^18.0.27",
"@types/react-native": "^0.71.6",
"eslint": "^8.33.0",
"@shopify/react-native-skia": "^0.1.197",
"@types/react": "^18.2.14",
"@types/react-native": "^0.72.2",
"eslint": "^8.44.0",
"pod-install": "^0.1.38",
"prettier": "^2.8.4",
"prettier": "^2.8.8",
"react": "^18.2.0",
"react-native": "^0.71.7",
"react-native-builder-bob": "^0.20.4",
"react-native-worklets": "https://github.com/chrfalch/react-native-worklets#d62d76c",
"release-it": "^15.6.0",
"typescript": "^4.9.5"
"react-native": "^0.72.1",
"react-native-builder-bob": "^0.21.0",
"react-native-worklets": "https://github.com/chrfalch/react-native-worklets#3ac2fbb",
"release-it": "^15.11.0",
"typescript": "^5.1.6"
},
"peerDependencies": {
"@shopify/react-native-skia": "*",

2662
yarn.lock

File diff suppressed because it is too large Load Diff