diff --git a/demos/react-native-supabase-todolist/android/gradle.properties b/demos/react-native-supabase-todolist/android/gradle.properties index a955bf8c..dded52cd 100644 --- a/demos/react-native-supabase-todolist/android/gradle.properties +++ b/demos/react-native-supabase-todolist/android/gradle.properties @@ -38,7 +38,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 # your application. You should enable this flag either if you want # to write custom TurboModules/Fabric components OR use libraries that # are providing them. -newArchEnabled=false +newArchEnabled=true # Use this property to enable or disable the Hermes JS engine. # If set to false, you will be using JSC instead. diff --git a/demos/react-native-supabase-todolist/app.config.ts b/demos/react-native-supabase-todolist/app.config.ts index 9cbb05e1..47d54e8d 100644 --- a/demos/react-native-supabase-todolist/app.config.ts +++ b/demos/react-native-supabase-todolist/app.config.ts @@ -59,14 +59,14 @@ const config: ExpoConfig = { { ios: { deploymentTarget: '13.4', - newArchEnabled: false + newArchEnabled: true }, android: { minSdkVersion: 23, compileSdkVersion: 34, targetSdkVersion: 34, buildToolsVersion: '34.0.0', - newArchEnabled: false + newArchEnabled: true } } ], diff --git a/demos/react-native-supabase-todolist/ios/Podfile.lock b/demos/react-native-supabase-todolist/ios/Podfile.lock index f1730452..f2cda8f7 100644 --- a/demos/react-native-supabase-todolist/ios/Podfile.lock +++ b/demos/react-native-supabase-todolist/ios/Podfile.lock @@ -3,7 +3,7 @@ PODS: - DoubleConversion (1.1.6) - EXConstants (16.0.2): - ExpoModulesCore - - Expo (51.0.34): + - Expo (51.0.37): - ExpoModulesCore - ExpoAsset (10.0.10): - ExpoModulesCore @@ -21,7 +21,7 @@ PODS: - ExpoModulesCore - ExpoKeepAwake (13.0.2): - ExpoModulesCore - - ExpoModulesCore (1.12.24): + - ExpoModulesCore (1.12.25): - DoubleConversion - glog - hermes-engine @@ -1347,51 +1347,7 @@ PODS: - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - Yoga - - RNReanimated (3.15.4): - - DoubleConversion - - glog - - hermes-engine - - RCT-Folly (= 2024.01.01.00) - - RCTRequired - - RCTTypeSafety - - React-Codegen - - React-Core - - React-debug - - React-Fabric - - React-featureflags - - React-graphics - - React-ImageManager - - React-NativeModulesApple - - React-RCTFabric - - React-rendererdebug - - React-utils - - ReactCommon/turbomodule/bridging - - ReactCommon/turbomodule/core - - RNReanimated/reanimated (= 3.15.4) - - RNReanimated/worklets (= 3.15.4) - - Yoga - - RNReanimated/reanimated (3.15.4): - - DoubleConversion - - glog - - hermes-engine - - RCT-Folly (= 2024.01.01.00) - - RCTRequired - - RCTTypeSafety - - React-Codegen - - React-Core - - React-debug - - React-Fabric - - React-featureflags - - React-graphics - - React-ImageManager - - React-NativeModulesApple - - React-RCTFabric - - React-rendererdebug - - React-utils - - ReactCommon/turbomodule/bridging - - ReactCommon/turbomodule/core - - Yoga - - RNReanimated/worklets (3.15.4): + - RNReanimated (3.10.1): - DoubleConversion - glog - hermes-engine @@ -1457,27 +1413,6 @@ PODS: - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - Yoga - - RNVectorIcons (10.2.0): - - DoubleConversion - - glog - - hermes-engine - - RCT-Folly (= 2024.01.01.00) - - RCTRequired - - RCTTypeSafety - - React-Codegen - - React-Core - - React-debug - - React-Fabric - - React-featureflags - - React-graphics - - React-ImageManager - - React-NativeModulesApple - - React-RCTFabric - - React-rendererdebug - - React-utils - - ReactCommon/turbomodule/bridging - - ReactCommon/turbomodule/core - - Yoga - SocketRocket (0.7.0) - Yoga (0.0.0) - ZXingObjC/Core (3.6.9) @@ -1559,9 +1494,8 @@ DEPENDENCIES: - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - "RNCMaskedView (from `../../../node_modules/@react-native-community/masked-view`)" - RNGestureHandler (from `../../../node_modules/react-native-gesture-handler`) - - RNReanimated (from `../node_modules/react-native-reanimated`) + - RNReanimated (from `../../../node_modules/react-native-reanimated`) - RNScreens (from `../../../node_modules/react-native-screens`) - - RNVectorIcons (from `../../../node_modules/react-native-vector-icons`) - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) SPEC REPOS: @@ -1713,11 +1647,9 @@ EXTERNAL SOURCES: RNGestureHandler: :path: "../../../node_modules/react-native-gesture-handler" RNReanimated: - :path: "../node_modules/react-native-reanimated" + :path: "../../../node_modules/react-native-reanimated" RNScreens: :path: "../../../node_modules/react-native-screens" - RNVectorIcons: - :path: "../../../node_modules/react-native-vector-icons" Yoga: :path: "../node_modules/react-native/ReactCommon/yoga" @@ -1725,7 +1657,7 @@ SPEC CHECKSUMS: boost: d3f49c53809116a5d38da093a8aa78bf551aed09 DoubleConversion: 76ab83afb40bddeeee456813d9c04f67f78771b5 EXConstants: 409690fbfd5afea964e5e9d6c4eb2c2b59222c59 - Expo: 963ef4ae102e4f4ac114a8510d70127c44adffbf + Expo: 67b60b3b80a3c8e9f3bcaaa84d06d140229a246d ExpoAsset: 323700f291684f110fb55f0d4022a3362ea9f875 ExpoCamera: 929be541d1c1319fcf32f9f5d9df8b97804346b5 ExpoCrypto: 156078f266bf28f80ecf5e2a9c3a0d6ffce07a1c @@ -1733,7 +1665,7 @@ SPEC CHECKSUMS: ExpoFont: 00756e6c796d8f7ee8d211e29c8b619e75cbf238 ExpoHead: fcb28a68ed4ba28f177394d2dfb8a0a8824cd103 ExpoKeepAwake: 3b8815d9dd1d419ee474df004021c69fdd316d08 - ExpoModulesCore: a113755f96c40590671f01cfcdce8ebdf0cf5f83 + ExpoModulesCore: 260ee156852434da26e782bbb993093186c5aade ExpoSecureStore: 060cebcb956b80ddae09821610ac1aa9e1ac74cd EXSplashScreen: 10b116117c9bb6a272ba782706f21dadc23f44d9 FBLazyVector: ac12dc084d1c8ec4cc4d7b3cf1b0ebda6dab85af @@ -1793,9 +1725,8 @@ SPEC CHECKSUMS: ReactCommon: f7da14a8827b72704169a48c929bcde802698361 RNCMaskedView: 0e1bc4bfa8365eba5fbbb71e07fbdc0555249489 RNGestureHandler: 156548e18203327173a764c6932a3f52e90cb9cd - RNReanimated: 7ee83f9cbe173965b5d2828af2ddac310ec1c5ae + RNReanimated: 58a768c2c17a5589ef732fa6bd8d7ed0eb6df1c1 RNScreens: 63fe8222c172a79f5c30dd1aefaeb369c6eb57b6 - RNVectorIcons: 46a635b764a63e9a4ffedae054bca3847e0c8934 SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d Yoga: 950bbfd7e6f04790fdb51149ed51df41f329fcc8 ZXingObjC: 8898711ab495761b2dbbdec76d90164a6d7e14c5 diff --git a/demos/react-native-supabase-todolist/ios/Podfile.properties.json b/demos/react-native-supabase-todolist/ios/Podfile.properties.json index eeb93f1f..ff68afa6 100644 --- a/demos/react-native-supabase-todolist/ios/Podfile.properties.json +++ b/demos/react-native-supabase-todolist/ios/Podfile.properties.json @@ -2,7 +2,7 @@ "expo.jsEngine": "hermes", "EX_DEV_CLIENT_NETWORK_INSPECTOR": "true", "ios.deploymentTarget": "13.4", - "newArchEnabled": "false", + "newArchEnabled": "true", "apple.extraPods": "[]", "apple.ccacheEnabled": "false", "apple.privacyManifestAggregationEnabled": "true" diff --git a/demos/react-native-supabase-todolist/ios/powersyncexample.xcodeproj/project.pbxproj b/demos/react-native-supabase-todolist/ios/powersyncexample.xcodeproj/project.pbxproj index 388fc758..6124bd3e 100644 --- a/demos/react-native-supabase-todolist/ios/powersyncexample.xcodeproj/project.pbxproj +++ b/demos/react-native-supabase-todolist/ios/powersyncexample.xcodeproj/project.pbxproj @@ -7,32 +7,32 @@ objects = { /* Begin PBXBuildFile section */ - 0A2D7112718854BE352BCC80 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = C7800BEF0023EF5D896607F6 /* PrivacyInfo.xcprivacy */; }; 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; + 260CD1EC7D19C3506DDDA02A /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 6378DAD92F52B69EDE318300 /* PrivacyInfo.xcprivacy */; }; + 33F2643B20394BD2938B948C /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36EDE82B95BA4A9C9925CBEF /* noop-file.swift */; }; 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; }; - 59196A12A76D4073A1C90FA5 /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0783202F60264A90AD94BA39 /* noop-file.swift */; }; 96905EF65AED1B983A6B3ABC /* libPods-powersyncexample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-powersyncexample.a */; }; B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; }; BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 01AD3E97234A4D2DA115DDD5 /* powersyncexample-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "powersyncexample-Bridging-Header.h"; path = "powersyncexample/powersyncexample-Bridging-Header.h"; sourceTree = ""; }; - 0783202F60264A90AD94BA39 /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "powersyncexample/noop-file.swift"; sourceTree = ""; }; + 0D4552278C4D4AE585AC88CE /* powersyncexample-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "powersyncexample-Bridging-Header.h"; path = "powersyncexample/powersyncexample-Bridging-Header.h"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* powersyncexample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = powersyncexample.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = powersyncexample/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = powersyncexample/AppDelegate.mm; sourceTree = ""; }; 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = powersyncexample/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = powersyncexample/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = powersyncexample/main.m; sourceTree = ""; }; + 36EDE82B95BA4A9C9925CBEF /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "powersyncexample/noop-file.swift"; sourceTree = ""; }; 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-powersyncexample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-powersyncexample.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6378DAD92F52B69EDE318300 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = powersyncexample/PrivacyInfo.xcprivacy; sourceTree = ""; }; 6C2E3173556A471DD304B334 /* Pods-powersyncexample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-powersyncexample.debug.xcconfig"; path = "Target Support Files/Pods-powersyncexample/Pods-powersyncexample.debug.xcconfig"; sourceTree = ""; }; 7A4D352CD337FB3A3BF06240 /* Pods-powersyncexample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-powersyncexample.release.xcconfig"; path = "Target Support Files/Pods-powersyncexample/Pods-powersyncexample.release.xcconfig"; sourceTree = ""; }; AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = powersyncexample/SplashScreen.storyboard; sourceTree = ""; }; BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; sourceTree = ""; }; - C7800BEF0023EF5D896607F6 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = powersyncexample/PrivacyInfo.xcprivacy; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-powersyncexample/ExpoModulesProvider.swift"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -59,9 +59,9 @@ 13B07FB61A68108700A75B9A /* Info.plist */, 13B07FB71A68108700A75B9A /* main.m */, AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */, - 0783202F60264A90AD94BA39 /* noop-file.swift */, - 01AD3E97234A4D2DA115DDD5 /* powersyncexample-Bridging-Header.h */, - C7800BEF0023EF5D896607F6 /* PrivacyInfo.xcprivacy */, + 36EDE82B95BA4A9C9925CBEF /* noop-file.swift */, + 0D4552278C4D4AE585AC88CE /* powersyncexample-Bridging-Header.h */, + 6378DAD92F52B69EDE318300 /* PrivacyInfo.xcprivacy */, ); name = powersyncexample; sourceTree = ""; @@ -147,13 +147,13 @@ buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "powersyncexample" */; buildPhases = ( 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */, - 01820CF66976138D9A5DD430 /* [Expo] Configure project */, + BE9B4DB0D86D7F515938A6BC /* [Expo] Configure project */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */, - A1719D29411D545557907636 /* [CP] Embed Pods Frameworks */, + ED16BFA7ADF7A8E90CBD97B5 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -203,7 +203,7 @@ BB2F792D24A3F905000567C9 /* Expo.plist in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */, - 0A2D7112718854BE352BCC80 /* PrivacyInfo.xcprivacy in Resources */, + 260CD1EC7D19C3506DDDA02A /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -225,25 +225,6 @@ shellPath = /bin/sh; shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n# The project root by default is one level up from the ios directory\nexport PROJECT_ROOT=\"$PROJECT_DIR\"/..\n\nif [[ \"$CONFIGURATION\" = *Debug* ]]; then\n export SKIP_BUNDLING=1\nfi\nif [[ -z \"$ENTRY_FILE\" ]]; then\n # Set the entry JS file using the bundler's entry resolution.\n export ENTRY_FILE=\"$(\"$NODE_BINARY\" -e \"require('expo/scripts/resolveAppEntry')\" \"$PROJECT_ROOT\" ios absolute | tail -n 1)\"\nfi\n\nif [[ -z \"$CLI_PATH\" ]]; then\n # Use Expo CLI\n export CLI_PATH=\"$(\"$NODE_BINARY\" --print \"require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })\")\"\nfi\nif [[ -z \"$BUNDLE_COMMAND\" ]]; then\n # Default Expo CLI command for bundling\n export BUNDLE_COMMAND=\"export:embed\"\nfi\n\n# Source .xcode.env.updates if it exists to allow\n# SKIP_BUNDLING to be unset if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.updates\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.updates\"\nfi\n# Source local changes to allow overrides\n# if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n`\"$NODE_BINARY\" --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'\"`\n\n"; }; - 01820CF66976138D9A5DD430 /* [Expo] Configure project */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "[Expo] Configure project"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-powersyncexample/expo-configure-project.sh\"\n"; - }; 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -276,25 +257,6 @@ "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/EXConstants.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/ExpoConstants_privacy.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/ExpoFileSystem/ExpoFileSystem_privacy.bundle", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", - "${PODS_ROOT}/../../../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/RCTI18nStrings.bundle", ); name = "[CP] Copy Pods Resources"; @@ -302,25 +264,6 @@ "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXConstants.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ExpoConstants_privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ExpoFileSystem_privacy.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/RCTI18nStrings.bundle", ); runOnlyForDeploymentPostprocessing = 0; @@ -328,7 +271,26 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-powersyncexample/Pods-powersyncexample-resources.sh\"\n"; showEnvVarsInLog = 0; }; - A1719D29411D545557907636 /* [CP] Embed Pods Frameworks */ = { + BE9B4DB0D86D7F515938A6BC /* [Expo] Configure project */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "[Expo] Configure project"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-powersyncexample/expo-configure-project.sh\"\n"; + }; + ED16BFA7ADF7A8E90CBD97B5 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -358,7 +320,7 @@ 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */, 13B07FC11A68108700A75B9A /* main.m in Sources */, B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */, - 59196A12A76D4073A1C90FA5 /* noop-file.swift in Sources */, + 33F2643B20394BD2938B948C /* noop-file.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/demos/react-native-supabase-todolist/library/widgets/CameraWidget.tsx b/demos/react-native-supabase-todolist/library/widgets/CameraWidget.tsx index c5e53858..a0a77e8a 100644 --- a/demos/react-native-supabase-todolist/library/widgets/CameraWidget.tsx +++ b/demos/react-native-supabase-todolist/library/widgets/CameraWidget.tsx @@ -10,6 +10,8 @@ import { Platform } from 'react-native'; import { Button, Icon } from '@rneui/themed'; +import { SafeAreaView } from 'react-native-safe-area-context'; +import { CameraType } from 'expo-camera/build/legacy/Camera.types'; export interface Props { onCaptured: (photo: CameraCapturedPicture) => void; @@ -23,6 +25,7 @@ export const CameraWidget: React.FC = (props) => { const [permission, requestPermission] = useCameraPermissions(); const [ready, setReady] = React.useState(false); const [loading, setLoading] = React.useState(false); + const [facing, setFacing] = React.useState(CameraType.back); // Getting width and height of the screen const { width } = useWindowDimensions(); @@ -54,6 +57,10 @@ export const CameraWidget: React.FC = (props) => { } }; + const onFlipPress = () => { + setFacing(facing === CameraType.back ? CameraType.front : CameraType.back); + }; + if (!permission) { // Camera permissions are still loading return ; @@ -70,57 +77,71 @@ export const CameraWidget: React.FC = (props) => { } return ( - + + + + + + + + + + - - - - - - - - - + facing={facing} + onCameraReady={onReady}> + + + - + ); }; const styles = StyleSheet.create({ container: { flex: 1, - justifyContent: 'center' + flexDirection: 'column', + justifyContent: 'center', + backgroundColor: 'transparent' }, - backButtonContainer: { - position: 'absolute', - top: 0, - left: 0, + topBarContainer: { + flex: 0, + display: 'flex', + flexDirection: 'row', + justifyContent: 'space-between', + padding: 20, width: '100%', - backgroundColor: 'rgba(52, 52, 52, 0.5)' + backgroundColor: 'black', + height: 80 + }, + topBarCloseIcon: { + flex: 1, + display: 'flex', + flexDirection: 'row', + justifyContent: 'flex-start' }, - backButton: { + topBarFlipIcon: { flex: 1, + display: 'flex', flexDirection: 'row', - justifyContent: 'flex-start', - marginLeft: 10, - marginTop: 10 + justifyContent: 'flex-end' }, camera: { flex: 1 }, bottomCamera: { - flex: 1, - alignSelf: 'stretch', + flex: 0, + // alignSelf: 'stretch', alignItems: 'flex-end', justifyContent: 'center', flexDirection: 'row', columnGap: 30, - backgroundColor: 'transparent' + backgroundColor: 'black', + minHeight: 100 }, shutterButton: { width: 70, diff --git a/demos/react-native-supabase-todolist/library/widgets/ListItemWidget.tsx b/demos/react-native-supabase-todolist/library/widgets/ListItemWidget.tsx index 7768e387..3e38e55c 100644 --- a/demos/react-native-supabase-todolist/library/widgets/ListItemWidget.tsx +++ b/demos/react-native-supabase-todolist/library/widgets/ListItemWidget.tsx @@ -17,13 +17,23 @@ export const ListItemWidget: React.FC = ({ title, descripti onPress={() => onPress?.()} rightContent={