diff --git a/Gemfile b/Gemfile
index 5250e72f560b..3414005bcd89 100644
--- a/Gemfile
+++ b/Gemfile
@@ -9,6 +9,12 @@ gem 'xcodeproj', '< 1.26.0'
 gem "fastlane", "~> 2", ">= 2.222.0"
 gem "xcpretty", "~> 0"
 
+# Ruby 3.4.0 has removed some libraries from the standard library.
+gem 'bigdecimal'
+gem 'logger'
+gem 'benchmark'
+gem 'mutex_m'
+
 
 plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
 eval_gemfile(plugins_path) if File.exist?(plugins_path)
diff --git a/Gemfile.lock b/Gemfile.lock
index 53a966923ee9..bc7c7d16eba6 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -37,6 +37,8 @@ GEM
       aws-eventstream (~> 1, >= 1.0.2)
     babosa (1.0.4)
     base64 (0.2.0)
+    benchmark (0.3.0)
+    bigdecimal (3.1.5)
     claide (1.1.0)
     cocoapods (1.15.2)
       addressable (~> 2.8)
@@ -227,6 +229,7 @@ GEM
     json (2.7.6)
     jwt (2.9.3)
       base64
+    logger (1.6.0)
     mime-types (3.5.1)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2023.1003)
@@ -236,6 +239,7 @@ GEM
     molinillo (0.8.0)
     multi_json (1.15.0)
     multipart-post (2.4.1)
+    mutex_m (0.2.0)
     nanaimo (0.3.0)
     nap (1.1.0)
     naturally (2.2.1)
@@ -302,10 +306,14 @@ PLATFORMS
 
 DEPENDENCIES
   activesupport (>= 6.1.7.5, != 7.1.0)
+  benchmark
+  bigdecimal
   cocoapods (= 1.15.2)
   fastlane (~> 2, >= 2.222.0)
   fastlane-plugin-aws_s3
   fastlane-plugin-firebase_app_distribution
+  logger
+  mutex_m
   xcodeproj (< 1.26.0)
   xcpretty (~> 0)
 
diff --git a/Mobile-Expensify b/Mobile-Expensify
index b86ee3b426bc..2cb8f70fa9aa 160000
--- a/Mobile-Expensify
+++ b/Mobile-Expensify
@@ -1 +1 @@
-Subproject commit b86ee3b426bcd1862fac90c2a1ad15b80e6b3fb6
+Subproject commit 2cb8f70fa9aadc18c8cfb9a5bf102b56c2e2e9b0
diff --git a/__mocks__/@react-native-documents/picker.ts b/__mocks__/@react-native-documents/picker.ts
new file mode 100644
index 000000000000..37e9303b64a7
--- /dev/null
+++ b/__mocks__/@react-native-documents/picker.ts
@@ -0,0 +1,24 @@
+import type {FileToCopy} from '@react-native-documents/picker';
+
+const keepLocalCopy = jest.fn();
+const pick = jest.fn();
+const types = Object.freeze({
+    allFiles: 'public.item',
+    audio: 'public.audio',
+    csv: 'public.comma-separated-values-text',
+    doc: 'com.microsoft.word.doc',
+    docx: 'org.openxmlformats.wordprocessingml.document',
+    images: 'public.image',
+    json: 'public.json',
+    pdf: 'com.adobe.pdf',
+    plainText: 'public.plain-text',
+    ppt: 'com.microsoft.powerpoint.ppt',
+    pptx: 'org.openxmlformats.presentationml.presentation',
+    video: 'public.movie',
+    xls: 'com.microsoft.excel.xls',
+    xlsx: 'org.openxmlformats.spreadsheetml.sheet',
+    zip: 'public.zip-archive',
+});
+
+export type {FileToCopy};
+export {keepLocalCopy, pick, types};
diff --git a/__mocks__/react-native-document-picker.ts b/__mocks__/react-native-document-picker.ts
deleted file mode 100644
index 524e701f88fc..000000000000
--- a/__mocks__/react-native-document-picker.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-import type {pick, pickDirectory, releaseSecureAccess, types} from 'react-native-document-picker';
-
-type ReactNativeDocumentPickerMock = {
-    pick: typeof pick;
-    releaseSecureAccess: typeof releaseSecureAccess;
-    pickDirectory: typeof pickDirectory;
-    types: typeof types;
-};
-
-const reactNativeDocumentPickerMock: ReactNativeDocumentPickerMock = {
-    pick: jest.fn(),
-    releaseSecureAccess: jest.fn(),
-    pickDirectory: jest.fn(),
-    types: Object.freeze({
-        allFiles: 'public.item',
-        audio: 'public.audio',
-        csv: 'public.comma-separated-values-text',
-        doc: 'com.microsoft.word.doc',
-        docx: 'org.openxmlformats.wordprocessingml.document',
-        images: 'public.image',
-        json: 'public.json',
-        pdf: 'com.adobe.pdf',
-        plainText: 'public.plain-text',
-        ppt: 'com.microsoft.powerpoint.ppt',
-        pptx: 'org.openxmlformats.presentationml.presentation',
-        video: 'public.movie',
-        xls: 'com.microsoft.excel.xls',
-        xlsx: 'org.openxmlformats.spreadsheetml.sheet',
-        zip: 'public.zip-archive',
-    }),
-};
-
-export default reactNativeDocumentPickerMock;
diff --git a/android/app/build.gradle b/android/app/build.gradle
index ca330c26a441..768238917adf 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -89,14 +89,14 @@ def enableProguardInReleaseBuilds = true
  * The preferred build flavor of JavaScriptCore (JSC)
  *
  * For example, to use the international variant, you can use:
- * `def jscFlavor = 'org.webkit:android-jsc-intl:+'`
+ * `def jscFlavor = 'io.github.react-native-community:jsc-android-intl:2026004.+`
  *
  * The international variant includes ICU i18n library and necessary data
  * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that
  * give correct results when using with locales other than en-US. Note that
  * this variant is about 6MiB larger per architecture than default.
  */
-def jscFlavor = 'org.webkit:android-jsc:+'
+def jscFlavor = 'io.github.react-native-community:jsc-android:2026004.+'
 
 android {
     androidResources {
diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties
index 79eb9d003fea..37f853b1c84d 100644
--- a/android/gradle/wrapper/gradle-wrapper.properties
+++ b/android/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
 networkTimeout=10000
 validateDistributionUrl=true
 zipStoreBase=GRADLE_USER_HOME
diff --git a/android/gradlew b/android/gradlew
index f5feea6d6b11..786141ff3f67 100755
--- a/android/gradlew
+++ b/android/gradlew
@@ -86,8 +86,8 @@ done
 # shellcheck disable=SC2034
 APP_BASE_NAME=${0##*/}
 # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
 
 # Use the maximum available, or set MAX_FD != -1 to use that value.
 MAX_FD=maximum
diff --git a/ios/AppDelegate.swift b/ios/AppDelegate.swift
index 98dba0e9e6c1..a9e3a51457ed 100644
--- a/ios/AppDelegate.swift
+++ b/ios/AppDelegate.swift
@@ -5,58 +5,59 @@
 //  Created by Marcin Warchoł on 08/04/2025.
 //
 
-import UIKit
+//import UIKit
 import React
 import React_RCTAppDelegate
 import ReactAppDependencyProvider
 import ExpoModulesCore
 import Firebase
+import Expo
+
 
- 
 @main
 class AppDelegate: ExpoAppDelegate, UNUserNotificationCenterDelegate {
   override func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
     self.moduleName = "NewExpensify"
     self.dependencyProvider = RCTAppDependencyProvider()
     self.initialProps = [:]
-    
+
     // Configure firebase
     FirebaseApp.configure()
-    
+
     // Force the app to LTR mode.
     RCTI18nUtil.sharedInstance().allowRTL(false)
     RCTI18nUtil.sharedInstance().forceRTL(false)
-    
+
     _ = super.application(application, didFinishLaunchingWithOptions: launchOptions)
-    
-    if let rootView = self.window.rootViewController?.view as? RCTRootView {
+
+    if let rootView = self.window?.rootViewController?.view as? RCTRootView {
         RCTBootSplash.initWithStoryboard("BootSplash", rootView: rootView) // <- initialization using the storyboard file name
     }
-    
+
     // Define UNUserNotificationCenter
     let center = UNUserNotificationCenter.current()
     center.delegate = self
-    
+
     // Start the "js_load" custom performance tracing metric. This timer is
     // stopped by a native module in the JS so we can measure total time starting
     // in the native layer and ending in the JS layer.
     RCTStartupTimer.start()
-    
+
     if !UserDefaults.standard.bool(forKey: "isFirstRunComplete") {
         UIApplication.shared.applicationIconBadgeNumber = 0
         UserDefaults.standard.set(true, forKey: "isFirstRunComplete")
     }
 
     RNBackgroundTaskManager.setup()
- 
+
     return true
   }
-  
-  
+
+
   override func application(_ application: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {
       return RCTLinkingManager.application(application, open: url, options: options)
   }
-  
+
   override func application(_ application: UIApplication,
                    continue userActivity: NSUserActivity,
                    restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
@@ -64,11 +65,11 @@ class AppDelegate: ExpoAppDelegate, UNUserNotificationCenterDelegate {
                                            continue: userActivity,
                                            restorationHandler: restorationHandler)
   }
- 
+
   override func sourceURL(for bridge: RCTBridge) -> URL? {
     return self.bundleURL()
   }
- 
+
   override func bundleURL() -> URL? {
 #if DEBUG
     return RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: "index")
@@ -76,7 +77,7 @@ class AppDelegate: ExpoAppDelegate, UNUserNotificationCenterDelegate {
     return Bundle.main.url(forResource: "main", withExtension: "jsbundle")
 #endif
   }
-  
+
   // This methods is needed to support the hardware keyboard shortcuts
   func keyCommands() -> [Any]? {
     return HardwareShortcuts.sharedInstance().keyCommands()
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index de1d6addb24d..219909122b46 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,24 +1,24 @@
 PODS:
-  - Airship (19.2.0):
-    - Airship/Automation (= 19.2.0)
-    - Airship/Basement (= 19.2.0)
-    - Airship/Core (= 19.2.0)
-    - Airship/FeatureFlags (= 19.2.0)
-    - Airship/MessageCenter (= 19.2.0)
-    - Airship/PreferenceCenter (= 19.2.0)
-  - Airship/Automation (19.2.0):
+  - Airship (19.1.0):
+    - Airship/Automation (= 19.1.0)
+    - Airship/Basement (= 19.1.0)
+    - Airship/Core (= 19.1.0)
+    - Airship/FeatureFlags (= 19.1.0)
+    - Airship/MessageCenter (= 19.1.0)
+    - Airship/PreferenceCenter (= 19.1.0)
+  - Airship/Automation (19.1.0):
     - Airship/Core
-  - Airship/Basement (19.2.0)
-  - Airship/Core (19.2.0):
+  - Airship/Basement (19.1.0)
+  - Airship/Core (19.1.0):
     - Airship/Basement
-  - Airship/FeatureFlags (19.2.0):
+  - Airship/FeatureFlags (19.1.0):
     - Airship/Core
-  - Airship/MessageCenter (19.2.0):
+  - Airship/MessageCenter (19.1.0):
     - Airship/Core
-  - Airship/PreferenceCenter (19.2.0):
+  - Airship/PreferenceCenter (19.1.0):
     - Airship/Core
-  - AirshipFrameworkProxy (14.1.0):
-    - Airship (= 19.2.0)
+  - AirshipFrameworkProxy (13.2.0):
+    - Airship (= 19.1.0)
   - AirshipServiceExtension (18.7.2)
   - AppAuth (1.7.5):
     - AppAuth/Core (= 1.7.5)
@@ -29,10 +29,10 @@ PODS:
   - AppLogs (0.1.0)
   - boost (1.84.0)
   - DoubleConversion (1.1.6)
-  - EXAV (15.0.2):
+  - EXAV (15.1.1-canary-20250408-7f0ab53):
     - ExpoModulesCore
     - ReactCommon/turbomodule/core
-  - EXImageLoader (5.0.0):
+  - EXImageLoader (5.1.1-canary-20250408-7f0ab53):
     - ExpoModulesCore
     - React-Core
   - expensify-react-native-background-task (0.0.0):
@@ -47,32 +47,61 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - Expo (52.0.41):
+  - Expo (53.0.0-preview.7):
+    - DoubleConversion
     - ExpoModulesCore
-  - ExpoAsset (11.0.5):
+    - glog
+    - hermes-engine
+    - RCT-Folly (= 2024.11.18.00)
+    - RCTRequired
+    - RCTTypeSafety
+    - React-Core
+    - React-debug
+    - React-Fabric
+    - React-featureflags
+    - React-graphics
+    - React-hermes
+    - React-ImageManager
+    - React-jsi
+    - React-NativeModulesApple
+    - React-RCTAppDelegate
+    - React-RCTFabric
+    - React-renderercss
+    - React-rendererdebug
+    - React-utils
+    - ReactAppDependencyProvider
+    - ReactCodegen
+    - ReactCommon/turbomodule/bridging
+    - ReactCommon/turbomodule/core
+    - Yoga
+  - ExpoAsset (11.1.1-canary-20250408-7f0ab53):
     - ExpoModulesCore
-  - ExpoFont (13.0.4):
+  - ExpoFont (13.1.1-canary-20250408-7f0ab53):
     - ExpoModulesCore
-  - ExpoImage (2.0.4):
+  - ExpoImage (2.1.1-canary-20250408-7f0ab53):
     - ExpoModulesCore
     - libavif/libdav1d
-    - SDWebImage (~> 5.19.1)
+    - SDWebImage (~> 5.21.0)
     - SDWebImageAVIFCoder (~> 0.11.0)
     - SDWebImageSVGCoder (~> 1.7.0)
-  - ExpoImageManipulator (13.0.6):
+    - SDWebImageWebPCoder (~> 0.14.6)
+  - ExpoImageManipulator (13.1.1-canary-20250408-7f0ab53):
     - EXImageLoader
     - ExpoModulesCore
     - SDWebImageWebPCoder
-  - ExpoModulesCore (2.2.3):
+  - ExpoModulesCore (2.3.5):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -84,20 +113,21 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-jsinspector
     - React-NativeModulesApple
-    - React-RCTAppDelegate
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
-    - ReactAppDependencyProvider
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
   - fast_float (6.1.4)
-  - FBLazyVector (0.77.1)
+  - FBLazyVector (0.79.0)
   - Firebase/Analytics (8.8.0):
     - Firebase/Core
   - Firebase/Core (8.8.0):
@@ -183,9 +213,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -256,26 +289,26 @@ PODS:
     - GTMSessionFetcher/Core (< 4.0, >= 3.3)
   - GTMSessionFetcher/Core (3.5.0)
   - GzipSwift (5.1.1)
-  - hermes-engine (0.77.1):
-    - hermes-engine/Pre-built (= 0.77.1)
-  - hermes-engine/Pre-built (0.77.1)
+  - hermes-engine (0.79.0):
+    - hermes-engine/Pre-built (= 0.79.0)
+  - hermes-engine/Pre-built (0.79.0)
   - JitsiWebRTC (124.0.2)
   - libavif/core (0.11.1)
   - libavif/libdav1d (0.11.1):
     - libavif/core
     - libdav1d (>= 0.6.0)
   - libdav1d (1.2.0)
-  - libwebp (1.3.2):
-    - libwebp/demux (= 1.3.2)
-    - libwebp/mux (= 1.3.2)
-    - libwebp/sharpyuv (= 1.3.2)
-    - libwebp/webp (= 1.3.2)
-  - libwebp/demux (1.3.2):
+  - libwebp (1.5.0):
+    - libwebp/demux (= 1.5.0)
+    - libwebp/mux (= 1.5.0)
+    - libwebp/sharpyuv (= 1.5.0)
+    - libwebp/webp (= 1.5.0)
+  - libwebp/demux (1.5.0):
     - libwebp/webp
-  - libwebp/mux (1.3.2):
+  - libwebp/mux (1.5.0):
     - libwebp/demux
-  - libwebp/sharpyuv (1.3.2)
-  - libwebp/webp (1.3.2):
+  - libwebp/sharpyuv (1.5.0)
+  - libwebp/webp (1.5.0):
     - libwebp/sharpyuv
   - lottie-ios (4.3.4)
   - lottie-react-native (6.5.1):
@@ -291,20 +324,23 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - MapboxCommon (23.11.2)
+  - MapboxCommon (23.11.4)
   - MapboxCoreMaps (10.19.2):
     - MapboxCommon (~> 23.11)
-  - MapboxMaps (10.19.1):
-    - MapboxCommon (= 23.11.2)
+  - MapboxMaps (10.19.4):
+    - MapboxCommon (= 23.11.4)
     - MapboxCoreMaps (= 10.19.2)
     - MapboxMobileEvents (= 2.0.0)
     - Turf (= 2.8.0)
@@ -329,16 +365,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - Plaid (5.6.0)
+  - Plaid (5.6.1)
   - PromisesObjC (2.4.0)
   - pusher-websocket-react-native (1.3.1):
     - PusherSwift (~> 10.1.5)
@@ -365,45 +404,45 @@ PODS:
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
-  - RCTDeprecation (0.77.1)
-  - RCTRequired (0.77.1)
-  - RCTTypeSafety (0.77.1):
-    - FBLazyVector (= 0.77.1)
-    - RCTRequired (= 0.77.1)
-    - React-Core (= 0.77.1)
-  - React (0.77.1):
-    - React-Core (= 0.77.1)
-    - React-Core/DevSupport (= 0.77.1)
-    - React-Core/RCTWebSocket (= 0.77.1)
-    - React-RCTActionSheet (= 0.77.1)
-    - React-RCTAnimation (= 0.77.1)
-    - React-RCTBlob (= 0.77.1)
-    - React-RCTImage (= 0.77.1)
-    - React-RCTLinking (= 0.77.1)
-    - React-RCTNetwork (= 0.77.1)
-    - React-RCTSettings (= 0.77.1)
-    - React-RCTText (= 0.77.1)
-    - React-RCTVibration (= 0.77.1)
-  - React-callinvoker (0.77.1)
-  - React-Core (0.77.1):
+  - RCTDeprecation (0.79.0)
+  - RCTRequired (0.79.0)
+  - RCTTypeSafety (0.79.0):
+    - FBLazyVector (= 0.79.0)
+    - RCTRequired (= 0.79.0)
+    - React-Core (= 0.79.0)
+  - React (0.79.0):
+    - React-Core (= 0.79.0)
+    - React-Core/DevSupport (= 0.79.0)
+    - React-Core/RCTWebSocket (= 0.79.0)
+    - React-RCTActionSheet (= 0.79.0)
+    - React-RCTAnimation (= 0.79.0)
+    - React-RCTBlob (= 0.79.0)
+    - React-RCTImage (= 0.79.0)
+    - React-RCTLinking (= 0.79.0)
+    - React-RCTNetwork (= 0.79.0)
+    - React-RCTSettings (= 0.79.0)
+    - React-RCTText (= 0.79.0)
+    - React-RCTVibration (= 0.79.0)
+  - React-callinvoker (0.79.0)
+  - React-Core (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
     - RCTDeprecation
-    - React-Core/Default (= 0.77.1)
+    - React-Core/Default (= 0.79.0)
     - React-cxxreact
     - React-featureflags
     - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/CoreModulesHeaders (0.77.1):
+  - React-Core/CoreModulesHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -415,13 +454,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/Default (0.77.1):
+  - React-Core/Default (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -432,32 +471,32 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/DevSupport (0.77.1):
+  - React-Core/DevSupport (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
     - RCTDeprecation
-    - React-Core/Default (= 0.77.1)
-    - React-Core/RCTWebSocket (= 0.77.1)
+    - React-Core/Default (= 0.79.0)
+    - React-Core/RCTWebSocket (= 0.79.0)
     - React-cxxreact
     - React-featureflags
     - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTActionSheetHeaders (0.77.1):
+  - React-Core/RCTActionSheetHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -469,13 +508,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTAnimationHeaders (0.77.1):
+  - React-Core/RCTAnimationHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -487,13 +526,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTBlobHeaders (0.77.1):
+  - React-Core/RCTBlobHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -505,13 +544,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTImageHeaders (0.77.1):
+  - React-Core/RCTImageHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -523,13 +562,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTLinkingHeaders (0.77.1):
+  - React-Core/RCTLinkingHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -541,13 +580,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTNetworkHeaders (0.77.1):
+  - React-Core/RCTNetworkHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -559,13 +598,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTSettingsHeaders (0.77.1):
+  - React-Core/RCTSettingsHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -577,13 +616,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTTextHeaders (0.77.1):
+  - React-Core/RCTTextHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -595,13 +634,13 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTVibrationHeaders (0.77.1):
+  - React-Core/RCTVibrationHeaders (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -613,46 +652,47 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-Core/RCTWebSocket (0.77.1):
+  - React-Core/RCTWebSocket (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
     - RCTDeprecation
-    - React-Core/Default (= 0.77.1)
+    - React-Core/Default (= 0.79.0)
     - React-cxxreact
     - React-featureflags
     - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-perflogger
-    - React-rendererconsistency
     - React-runtimescheduler
     - React-utils
     - SocketRocket (= 0.7.1)
     - Yoga
-  - React-CoreModules (0.77.1):
+  - React-CoreModules (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - RCT-Folly (= 2024.11.18.00)
-    - RCTTypeSafety (= 0.77.1)
-    - React-Core/CoreModulesHeaders (= 0.77.1)
-    - React-jsi (= 0.77.1)
+    - RCTTypeSafety (= 0.79.0)
+    - React-Core/CoreModulesHeaders (= 0.79.0)
+    - React-jsi (= 0.79.0)
     - React-jsinspector
+    - React-jsinspectortracing
     - React-NativeModulesApple
     - React-RCTBlob
     - React-RCTFBReactNativeSpec
-    - React-RCTImage (= 0.77.1)
+    - React-RCTImage (= 0.79.0)
     - ReactCommon
     - SocketRocket (= 0.7.1)
-  - React-cxxreact (0.77.1):
+  - React-cxxreact (0.79.0):
     - boost
     - DoubleConversion
     - fast_float (= 6.1.4)
@@ -660,37 +700,78 @@ PODS:
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-callinvoker (= 0.77.1)
-    - React-debug (= 0.77.1)
-    - React-jsi (= 0.77.1)
+    - React-callinvoker (= 0.79.0)
+    - React-debug (= 0.79.0)
+    - React-jsi (= 0.79.0)
     - React-jsinspector
-    - React-logger (= 0.77.1)
-    - React-perflogger (= 0.77.1)
-    - React-runtimeexecutor (= 0.77.1)
-    - React-timing (= 0.77.1)
-  - React-debug (0.77.1)
-  - React-defaultsnativemodule (0.77.1):
+    - React-jsinspectortracing
+    - React-logger (= 0.79.0)
+    - React-perflogger (= 0.79.0)
+    - React-runtimeexecutor (= 0.79.0)
+    - React-timing (= 0.79.0)
+  - React-debug (0.79.0)
+  - React-defaultsnativemodule (0.79.0):
     - hermes-engine
     - RCT-Folly
     - React-domnativemodule
     - React-featureflagsnativemodule
+    - React-hermes
     - React-idlecallbacksnativemodule
     - React-jsi
     - React-jsiexecutor
     - React-microtasksnativemodule
     - React-RCTFBReactNativeSpec
-  - React-domnativemodule (0.77.1):
+  - React-domnativemodule (0.79.0):
     - hermes-engine
     - RCT-Folly
     - React-Fabric
     - React-FabricComponents
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-RCTFBReactNativeSpec
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-Fabric (0.77.1):
+  - React-Fabric (0.79.0):
+    - DoubleConversion
+    - fast_float (= 6.1.4)
+    - fmt (= 11.0.2)
+    - glog
+    - hermes-engine
+    - RCT-Folly/Fabric (= 2024.11.18.00)
+    - RCTRequired
+    - RCTTypeSafety
+    - React-Core
+    - React-cxxreact
+    - React-debug
+    - React-Fabric/animations (= 0.79.0)
+    - React-Fabric/attributedstring (= 0.79.0)
+    - React-Fabric/componentregistry (= 0.79.0)
+    - React-Fabric/componentregistrynative (= 0.79.0)
+    - React-Fabric/components (= 0.79.0)
+    - React-Fabric/consistency (= 0.79.0)
+    - React-Fabric/core (= 0.79.0)
+    - React-Fabric/dom (= 0.79.0)
+    - React-Fabric/imagemanager (= 0.79.0)
+    - React-Fabric/leakchecker (= 0.79.0)
+    - React-Fabric/mounting (= 0.79.0)
+    - React-Fabric/observers (= 0.79.0)
+    - React-Fabric/scheduler (= 0.79.0)
+    - React-Fabric/telemetry (= 0.79.0)
+    - React-Fabric/templateprocessor (= 0.79.0)
+    - React-Fabric/uimanager (= 0.79.0)
+    - React-featureflags
+    - React-graphics
+    - React-hermes
+    - React-jsi
+    - React-jsiexecutor
+    - React-logger
+    - React-rendererdebug
+    - React-runtimescheduler
+    - React-utils
+    - ReactCommon/turbomodule/core
+  - React-Fabric/animations (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -702,24 +783,9 @@ PODS:
     - React-Core
     - React-cxxreact
     - React-debug
-    - React-Fabric/animations (= 0.77.1)
-    - React-Fabric/attributedstring (= 0.77.1)
-    - React-Fabric/componentregistry (= 0.77.1)
-    - React-Fabric/componentregistrynative (= 0.77.1)
-    - React-Fabric/components (= 0.77.1)
-    - React-Fabric/consistency (= 0.77.1)
-    - React-Fabric/core (= 0.77.1)
-    - React-Fabric/dom (= 0.77.1)
-    - React-Fabric/imagemanager (= 0.77.1)
-    - React-Fabric/leakchecker (= 0.77.1)
-    - React-Fabric/mounting (= 0.77.1)
-    - React-Fabric/observers (= 0.77.1)
-    - React-Fabric/scheduler (= 0.77.1)
-    - React-Fabric/telemetry (= 0.77.1)
-    - React-Fabric/templateprocessor (= 0.77.1)
-    - React-Fabric/uimanager (= 0.77.1)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -727,7 +793,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/animations (0.77.1):
+  - React-Fabric/attributedstring (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -741,6 +807,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -748,7 +815,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/attributedstring (0.77.1):
+  - React-Fabric/componentregistry (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -762,6 +829,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -769,7 +837,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/componentregistry (0.77.1):
+  - React-Fabric/componentregistrynative (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -783,6 +851,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -790,7 +859,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/componentregistrynative (0.77.1):
+  - React-Fabric/components (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -802,8 +871,13 @@ PODS:
     - React-Core
     - React-cxxreact
     - React-debug
+    - React-Fabric/components/legacyviewmanagerinterop (= 0.79.0)
+    - React-Fabric/components/root (= 0.79.0)
+    - React-Fabric/components/scrollview (= 0.79.0)
+    - React-Fabric/components/view (= 0.79.0)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -811,7 +885,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/components (0.77.1):
+  - React-Fabric/components/legacyviewmanagerinterop (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -823,11 +897,9 @@ PODS:
     - React-Core
     - React-cxxreact
     - React-debug
-    - React-Fabric/components/legacyviewmanagerinterop (= 0.77.1)
-    - React-Fabric/components/root (= 0.77.1)
-    - React-Fabric/components/view (= 0.77.1)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -835,7 +907,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/components/legacyviewmanagerinterop (0.77.1):
+  - React-Fabric/components/root (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -849,6 +921,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -856,7 +929,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/components/root (0.77.1):
+  - React-Fabric/components/scrollview (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -870,6 +943,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -877,7 +951,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/components/view (0.77.1):
+  - React-Fabric/components/view (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -891,15 +965,17 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
+    - React-renderercss
     - React-rendererdebug
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-Fabric/consistency (0.77.1):
+  - React-Fabric/consistency (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -913,6 +989,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -920,7 +997,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/core (0.77.1):
+  - React-Fabric/core (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -934,6 +1011,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -941,7 +1019,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/dom (0.77.1):
+  - React-Fabric/dom (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -955,6 +1033,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -962,7 +1041,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/imagemanager (0.77.1):
+  - React-Fabric/imagemanager (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -976,6 +1055,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -983,7 +1063,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/leakchecker (0.77.1):
+  - React-Fabric/leakchecker (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -997,6 +1077,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1004,7 +1085,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/mounting (0.77.1):
+  - React-Fabric/mounting (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1018,6 +1099,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1025,7 +1107,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/observers (0.77.1):
+  - React-Fabric/observers (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1037,9 +1119,10 @@ PODS:
     - React-Core
     - React-cxxreact
     - React-debug
-    - React-Fabric/observers/events (= 0.77.1)
+    - React-Fabric/observers/events (= 0.79.0)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1047,7 +1130,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/observers/events (0.77.1):
+  - React-Fabric/observers/events (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1061,6 +1144,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1068,7 +1152,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/scheduler (0.77.1):
+  - React-Fabric/scheduler (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1083,6 +1167,7 @@ PODS:
     - React-Fabric/observers/events
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1091,7 +1176,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/telemetry (0.77.1):
+  - React-Fabric/telemetry (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1105,6 +1190,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1112,7 +1198,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/templateprocessor (0.77.1):
+  - React-Fabric/templateprocessor (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1126,6 +1212,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1133,7 +1220,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/uimanager (0.77.1):
+  - React-Fabric/uimanager (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1145,9 +1232,10 @@ PODS:
     - React-Core
     - React-cxxreact
     - React-debug
-    - React-Fabric/uimanager/consistency (= 0.77.1)
+    - React-Fabric/uimanager/consistency (= 0.79.0)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1156,7 +1244,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-Fabric/uimanager/consistency (0.77.1):
+  - React-Fabric/uimanager/consistency (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1170,6 +1258,7 @@ PODS:
     - React-debug
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1178,7 +1267,7 @@ PODS:
     - React-runtimescheduler
     - React-utils
     - ReactCommon/turbomodule/core
-  - React-FabricComponents (0.77.1):
+  - React-FabricComponents (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1191,10 +1280,11 @@ PODS:
     - React-cxxreact
     - React-debug
     - React-Fabric
-    - React-FabricComponents/components (= 0.77.1)
-    - React-FabricComponents/textlayoutmanager (= 0.77.1)
+    - React-FabricComponents/components (= 0.79.0)
+    - React-FabricComponents/textlayoutmanager (= 0.79.0)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1203,7 +1293,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components (0.77.1):
+  - React-FabricComponents/components (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1216,17 +1306,18 @@ PODS:
     - React-cxxreact
     - React-debug
     - React-Fabric
-    - React-FabricComponents/components/inputaccessory (= 0.77.1)
-    - React-FabricComponents/components/iostextinput (= 0.77.1)
-    - React-FabricComponents/components/modal (= 0.77.1)
-    - React-FabricComponents/components/rncore (= 0.77.1)
-    - React-FabricComponents/components/safeareaview (= 0.77.1)
-    - React-FabricComponents/components/scrollview (= 0.77.1)
-    - React-FabricComponents/components/text (= 0.77.1)
-    - React-FabricComponents/components/textinput (= 0.77.1)
-    - React-FabricComponents/components/unimplementedview (= 0.77.1)
+    - React-FabricComponents/components/inputaccessory (= 0.79.0)
+    - React-FabricComponents/components/iostextinput (= 0.79.0)
+    - React-FabricComponents/components/modal (= 0.79.0)
+    - React-FabricComponents/components/rncore (= 0.79.0)
+    - React-FabricComponents/components/safeareaview (= 0.79.0)
+    - React-FabricComponents/components/scrollview (= 0.79.0)
+    - React-FabricComponents/components/text (= 0.79.0)
+    - React-FabricComponents/components/textinput (= 0.79.0)
+    - React-FabricComponents/components/unimplementedview (= 0.79.0)
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1235,7 +1326,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/inputaccessory (0.77.1):
+  - React-FabricComponents/components/inputaccessory (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1250,6 +1341,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1258,7 +1350,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/iostextinput (0.77.1):
+  - React-FabricComponents/components/iostextinput (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1273,6 +1365,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1281,7 +1374,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/modal (0.77.1):
+  - React-FabricComponents/components/modal (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1296,6 +1389,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1304,7 +1398,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/rncore (0.77.1):
+  - React-FabricComponents/components/rncore (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1319,6 +1413,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1327,7 +1422,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/safeareaview (0.77.1):
+  - React-FabricComponents/components/safeareaview (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1342,6 +1437,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1350,7 +1446,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/scrollview (0.77.1):
+  - React-FabricComponents/components/scrollview (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1365,6 +1461,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1373,7 +1470,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/text (0.77.1):
+  - React-FabricComponents/components/text (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1388,6 +1485,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1396,7 +1494,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/textinput (0.77.1):
+  - React-FabricComponents/components/textinput (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1411,6 +1509,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1419,7 +1518,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/components/unimplementedview (0.77.1):
+  - React-FabricComponents/components/unimplementedview (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1434,6 +1533,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1442,7 +1542,7 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricComponents/textlayoutmanager (0.77.1):
+  - React-FabricComponents/textlayoutmanager (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -1457,6 +1557,7 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-logger
@@ -1465,66 +1566,74 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-FabricImage (0.77.1):
+  - React-FabricImage (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
-    - RCTRequired (= 0.77.1)
-    - RCTTypeSafety (= 0.77.1)
+    - RCTRequired (= 0.79.0)
+    - RCTTypeSafety (= 0.79.0)
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
     - React-jsi
-    - React-jsiexecutor (= 0.77.1)
+    - React-jsiexecutor (= 0.79.0)
     - React-logger
     - React-rendererdebug
     - React-utils
     - ReactCommon
     - Yoga
-  - React-featureflags (0.77.1)
-  - React-featureflagsnativemodule (0.77.1):
+  - React-featureflags (0.79.0):
+    - RCT-Folly (= 2024.11.18.00)
+  - React-featureflagsnativemodule (0.79.0):
     - hermes-engine
     - RCT-Folly
     - React-featureflags
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-RCTFBReactNativeSpec
     - ReactCommon/turbomodule/core
-  - React-graphics (0.77.1):
+  - React-graphics (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
+    - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-utils
-  - React-hermes (0.77.1):
+  - React-hermes (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-cxxreact (= 0.77.1)
+    - React-cxxreact (= 0.79.0)
     - React-jsi
-    - React-jsiexecutor (= 0.77.1)
+    - React-jsiexecutor (= 0.79.0)
     - React-jsinspector
-    - React-perflogger (= 0.77.1)
+    - React-jsinspectortracing
+    - React-perflogger (= 0.79.0)
     - React-runtimeexecutor
-  - React-idlecallbacksnativemodule (0.77.1):
+  - React-idlecallbacksnativemodule (0.79.0):
+    - glog
     - hermes-engine
     - RCT-Folly
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-RCTFBReactNativeSpec
     - React-runtimescheduler
     - ReactCommon/turbomodule/core
-  - React-ImageManager (0.77.1):
+  - React-ImageManager (0.79.0):
     - glog
     - RCT-Folly/Fabric
     - React-Core/Default
@@ -1533,7 +1642,7 @@ PODS:
     - React-graphics
     - React-rendererdebug
     - React-utils
-  - React-jserrorhandler (0.77.1):
+  - React-jserrorhandler (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
@@ -1542,7 +1651,7 @@ PODS:
     - React-featureflags
     - React-jsi
     - ReactCommon/turbomodule/bridging
-  - React-jsi (0.77.1):
+  - React-jsi (0.79.0):
     - boost
     - DoubleConversion
     - fast_float (= 6.1.4)
@@ -1550,36 +1659,52 @@ PODS:
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-  - React-jsiexecutor (0.77.1):
+  - React-jsiexecutor (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-cxxreact (= 0.77.1)
-    - React-jsi (= 0.77.1)
+    - React-cxxreact (= 0.79.0)
+    - React-jsi (= 0.79.0)
     - React-jsinspector
-    - React-perflogger (= 0.77.1)
-  - React-jsinspector (0.77.1):
+    - React-jsinspectortracing
+    - React-perflogger (= 0.79.0)
+  - React-jsinspector (0.79.0):
     - DoubleConversion
     - glog
     - hermes-engine
-    - RCT-Folly (= 2024.11.18.00)
+    - RCT-Folly
     - React-featureflags
     - React-jsi
-    - React-perflogger (= 0.77.1)
-    - React-runtimeexecutor (= 0.77.1)
-  - React-jsitracing (0.77.1):
+    - React-jsinspectortracing
+    - React-perflogger (= 0.79.0)
+    - React-runtimeexecutor (= 0.79.0)
+  - React-jsinspectortracing (0.79.0):
+    - RCT-Folly
+    - React-oscompat
+  - React-jsitooling (0.79.0):
+    - DoubleConversion
+    - fast_float (= 6.1.4)
+    - fmt (= 11.0.2)
+    - glog
+    - RCT-Folly (= 2024.11.18.00)
+    - React-cxxreact (= 0.79.0)
+    - React-jsi (= 0.79.0)
+    - React-jsinspector
+    - React-jsinspectortracing
+  - React-jsitracing (0.79.0):
     - React-jsi
-  - React-logger (0.77.1):
+  - React-logger (0.79.0):
     - glog
-  - React-Mapbuffer (0.77.1):
+  - React-Mapbuffer (0.79.0):
     - glog
     - React-debug
-  - React-microtasksnativemodule (0.77.1):
+  - React-microtasksnativemodule (0.79.0):
     - hermes-engine
     - RCT-Folly
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-RCTFBReactNativeSpec
@@ -1597,17 +1722,20 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-airship (21.4.1):
-    - AirshipFrameworkProxy (= 14.1.0)
+  - react-native-airship (22.0.0):
+    - AirshipFrameworkProxy (= 13.2.0)
     - DoubleConversion
     - glog
     - hermes-engine
@@ -1619,9 +1747,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1640,9 +1771,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1661,9 +1795,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1682,9 +1819,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1705,16 +1845,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-document-picker (9.3.1):
+  - react-native-document-picker (10.1.1):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -1726,9 +1869,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1747,9 +1893,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1768,9 +1917,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1789,9 +1941,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1810,9 +1965,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1833,38 +1991,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-pager-view (6.5.2):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2024.11.18.00)
-    - RCTRequired
-    - RCTTypeSafety
-    - React-Core
-    - React-debug
-    - React-Fabric
-    - React-featureflags
-    - React-graphics
-    - React-ImageManager
-    - react-native-pager-view/common (= 6.5.2)
-    - React-NativeModulesApple
-    - React-RCTFabric
-    - React-rendererdebug
-    - React-utils
-    - ReactCodegen
-    - ReactCommon/turbomodule/bridging
-    - ReactCommon/turbomodule/core
-    - Yoga
-  - react-native-pager-view/common (6.5.2):
+  - react-native-pager-view (6.7.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -1876,9 +2015,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1897,9 +2039,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1918,9 +2063,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1940,9 +2088,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1961,9 +2112,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -1982,16 +2136,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-safe-area-context (4.12.0):
+  - react-native-safe-area-context (5.3.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2003,18 +2160,21 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
-    - react-native-safe-area-context/common (= 4.12.0)
-    - react-native-safe-area-context/fabric (= 4.12.0)
+    - React-jsi
+    - react-native-safe-area-context/common (= 5.3.0)
+    - react-native-safe-area-context/fabric (= 5.3.0)
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-safe-area-context/common (4.12.0):
+  - react-native-safe-area-context/common (5.3.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2026,16 +2186,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-safe-area-context/fabric (4.12.0):
+  - react-native-safe-area-context/fabric (5.3.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2047,17 +2210,20 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - react-native-safe-area-context/common
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - react-native-view-shot (4.0.0):
+  - react-native-view-shot (4.0.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2069,9 +2235,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2090,9 +2259,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2102,7 +2274,7 @@ PODS:
   - react-native-webrtc (124.0.5):
     - JitsiWebRTC (~> 124.0.0)
     - React-Core
-  - react-native-webview (13.13.1):
+  - react-native-webview (13.13.5):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2114,38 +2286,45 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - React-nativeconfig (0.77.1)
-  - React-NativeModulesApple (0.77.1):
+  - React-NativeModulesApple (0.79.0):
     - glog
     - hermes-engine
     - React-callinvoker
     - React-Core
     - React-cxxreact
+    - React-featureflags
+    - React-hermes
     - React-jsi
     - React-jsinspector
     - React-runtimeexecutor
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-  - React-perflogger (0.77.1):
+  - React-oscompat (0.79.0)
+  - React-perflogger (0.79.0):
     - DoubleConversion
     - RCT-Folly (= 2024.11.18.00)
-  - React-performancetimeline (0.77.1):
+  - React-performancetimeline (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - React-cxxreact
     - React-featureflags
+    - React-jsinspectortracing
+    - React-perflogger
     - React-timing
-  - React-RCTActionSheet (0.77.1):
-    - React-Core/RCTActionSheetHeaders (= 0.77.1)
-  - React-RCTAnimation (0.77.1):
+  - React-RCTActionSheet (0.79.0):
+    - React-Core/RCTActionSheetHeaders (= 0.79.0)
+  - React-RCTAnimation (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - RCTTypeSafety
     - React-Core/RCTAnimationHeaders
@@ -2153,7 +2332,8 @@ PODS:
     - React-NativeModulesApple
     - React-RCTFBReactNativeSpec
     - ReactCommon
-  - React-RCTAppDelegate (0.77.1):
+  - React-RCTAppDelegate (0.79.0):
+    - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
     - RCTRequired
     - RCTTypeSafety
@@ -2165,20 +2345,20 @@ PODS:
     - React-featureflags
     - React-graphics
     - React-hermes
-    - React-nativeconfig
+    - React-jsitooling
     - React-NativeModulesApple
     - React-RCTFabric
     - React-RCTFBReactNativeSpec
     - React-RCTImage
     - React-RCTNetwork
+    - React-RCTRuntime
     - React-rendererdebug
     - React-RuntimeApple
     - React-RuntimeCore
-    - React-RuntimeHermes
     - React-runtimescheduler
     - React-utils
     - ReactCommon
-  - React-RCTBlob (0.77.1):
+  - React-RCTBlob (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
@@ -2192,7 +2372,7 @@ PODS:
     - React-RCTFBReactNativeSpec
     - React-RCTNetwork
     - ReactCommon
-  - React-RCTFabric (0.77.1):
+  - React-RCTFabric (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
@@ -2203,29 +2383,33 @@ PODS:
     - React-FabricImage
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
     - React-jsi
     - React-jsinspector
-    - React-nativeconfig
+    - React-jsinspectortracing
     - React-performancetimeline
+    - React-RCTAnimation
     - React-RCTImage
     - React-RCTText
     - React-rendererconsistency
+    - React-renderercss
     - React-rendererdebug
     - React-runtimescheduler
     - React-utils
     - Yoga
-  - React-RCTFBReactNativeSpec (0.77.1):
+  - React-RCTFBReactNativeSpec (0.79.0):
     - hermes-engine
     - RCT-Folly
     - RCTRequired
     - RCTTypeSafety
     - React-Core
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-NativeModulesApple
     - ReactCommon
-  - React-RCTImage (0.77.1):
+  - React-RCTImage (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - RCTTypeSafety
     - React-Core/RCTImageHeaders
@@ -2234,14 +2418,14 @@ PODS:
     - React-RCTFBReactNativeSpec
     - React-RCTNetwork
     - ReactCommon
-  - React-RCTLinking (0.77.1):
-    - React-Core/RCTLinkingHeaders (= 0.77.1)
-    - React-jsi (= 0.77.1)
+  - React-RCTLinking (0.79.0):
+    - React-Core/RCTLinkingHeaders (= 0.79.0)
+    - React-jsi (= 0.79.0)
     - React-NativeModulesApple
     - React-RCTFBReactNativeSpec
     - ReactCommon
-    - ReactCommon/turbomodule/core (= 0.77.1)
-  - React-RCTNetwork (0.77.1):
+    - ReactCommon/turbomodule/core (= 0.79.0)
+  - React-RCTNetwork (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - RCTTypeSafety
     - React-Core/RCTNetworkHeaders
@@ -2249,7 +2433,20 @@ PODS:
     - React-NativeModulesApple
     - React-RCTFBReactNativeSpec
     - ReactCommon
-  - React-RCTSettings (0.77.1):
+  - React-RCTRuntime (0.79.0):
+    - glog
+    - hermes-engine
+    - RCT-Folly/Fabric (= 2024.11.18.00)
+    - React-Core
+    - React-hermes
+    - React-jsi
+    - React-jsinspector
+    - React-jsinspectortracing
+    - React-jsitooling
+    - React-RuntimeApple
+    - React-RuntimeCore
+    - React-RuntimeHermes
+  - React-RCTSettings (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - RCTTypeSafety
     - React-Core/RCTSettingsHeaders
@@ -2257,25 +2454,28 @@ PODS:
     - React-NativeModulesApple
     - React-RCTFBReactNativeSpec
     - ReactCommon
-  - React-RCTText (0.77.1):
-    - React-Core/RCTTextHeaders (= 0.77.1)
+  - React-RCTText (0.79.0):
+    - React-Core/RCTTextHeaders (= 0.79.0)
     - Yoga
-  - React-RCTVibration (0.77.1):
+  - React-RCTVibration (0.79.0):
     - RCT-Folly (= 2024.11.18.00)
     - React-Core/RCTVibrationHeaders
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFBReactNativeSpec
     - ReactCommon
-  - React-rendererconsistency (0.77.1)
-  - React-rendererdebug (0.77.1):
+  - React-rendererconsistency (0.79.0)
+  - React-renderercss (0.79.0):
+    - React-debug
+    - React-utils
+  - React-rendererdebug (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - RCT-Folly (= 2024.11.18.00)
     - React-debug
-  - React-rncore (0.77.1)
-  - React-RuntimeApple (0.77.1):
+  - React-rncore (0.79.0)
+  - React-RuntimeApple (0.79.0):
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
     - React-callinvoker
@@ -2287,6 +2487,7 @@ PODS:
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-Mapbuffer
     - React-NativeModulesApple
     - React-RCTFabric
@@ -2296,35 +2497,38 @@ PODS:
     - React-RuntimeHermes
     - React-runtimescheduler
     - React-utils
-  - React-RuntimeCore (0.77.1):
+  - React-RuntimeCore (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
     - React-cxxreact
     - React-Fabric
     - React-featureflags
+    - React-hermes
     - React-jserrorhandler
     - React-jsi
     - React-jsiexecutor
     - React-jsinspector
+    - React-jsitooling
     - React-performancetimeline
     - React-runtimeexecutor
     - React-runtimescheduler
     - React-utils
-  - React-runtimeexecutor (0.77.1):
-    - React-jsi (= 0.77.1)
-  - React-RuntimeHermes (0.77.1):
+  - React-runtimeexecutor (0.79.0):
+    - React-jsi (= 0.79.0)
+  - React-RuntimeHermes (0.79.0):
     - hermes-engine
     - RCT-Folly/Fabric (= 2024.11.18.00)
     - React-featureflags
     - React-hermes
     - React-jsi
     - React-jsinspector
+    - React-jsinspectortracing
+    - React-jsitooling
     - React-jsitracing
-    - React-nativeconfig
     - React-RuntimeCore
     - React-utils
-  - React-runtimescheduler (0.77.1):
+  - React-runtimescheduler (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
@@ -2332,23 +2536,26 @@ PODS:
     - React-cxxreact
     - React-debug
     - React-featureflags
+    - React-hermes
     - React-jsi
+    - React-jsinspectortracing
     - React-performancetimeline
     - React-rendererconsistency
     - React-rendererdebug
     - React-runtimeexecutor
     - React-timing
     - React-utils
-  - React-timing (0.77.1)
-  - React-utils (0.77.1):
+  - React-timing (0.79.0)
+  - React-utils (0.79.0):
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
     - React-debug
-    - React-jsi (= 0.77.1)
-  - ReactAppDependencyProvider (0.77.1):
+    - React-hermes
+    - React-jsi (= 0.79.0)
+  - ReactAppDependencyProvider (0.79.0):
     - ReactCodegen
-  - ReactCodegen (0.77.1):
+  - ReactCodegen (0.79.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2361,6 +2568,7 @@ PODS:
     - React-FabricImage
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-jsi
     - React-jsiexecutor
     - React-NativeModulesApple
@@ -2369,49 +2577,49 @@ PODS:
     - React-utils
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-  - ReactCommon (0.77.1):
-    - ReactCommon/turbomodule (= 0.77.1)
-  - ReactCommon/turbomodule (0.77.1):
+  - ReactCommon (0.79.0):
+    - ReactCommon/turbomodule (= 0.79.0)
+  - ReactCommon/turbomodule (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-callinvoker (= 0.77.1)
-    - React-cxxreact (= 0.77.1)
-    - React-jsi (= 0.77.1)
-    - React-logger (= 0.77.1)
-    - React-perflogger (= 0.77.1)
-    - ReactCommon/turbomodule/bridging (= 0.77.1)
-    - ReactCommon/turbomodule/core (= 0.77.1)
-  - ReactCommon/turbomodule/bridging (0.77.1):
+    - React-callinvoker (= 0.79.0)
+    - React-cxxreact (= 0.79.0)
+    - React-jsi (= 0.79.0)
+    - React-logger (= 0.79.0)
+    - React-perflogger (= 0.79.0)
+    - ReactCommon/turbomodule/bridging (= 0.79.0)
+    - ReactCommon/turbomodule/core (= 0.79.0)
+  - ReactCommon/turbomodule/bridging (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-callinvoker (= 0.77.1)
-    - React-cxxreact (= 0.77.1)
-    - React-jsi (= 0.77.1)
-    - React-logger (= 0.77.1)
-    - React-perflogger (= 0.77.1)
-  - ReactCommon/turbomodule/core (0.77.1):
+    - React-callinvoker (= 0.79.0)
+    - React-cxxreact (= 0.79.0)
+    - React-jsi (= 0.79.0)
+    - React-logger (= 0.79.0)
+    - React-perflogger (= 0.79.0)
+  - ReactCommon/turbomodule/core (0.79.0):
     - DoubleConversion
     - fast_float (= 6.1.4)
     - fmt (= 11.0.2)
     - glog
     - hermes-engine
     - RCT-Folly (= 2024.11.18.00)
-    - React-callinvoker (= 0.77.1)
-    - React-cxxreact (= 0.77.1)
-    - React-debug (= 0.77.1)
-    - React-featureflags (= 0.77.1)
-    - React-jsi (= 0.77.1)
-    - React-logger (= 0.77.1)
-    - React-perflogger (= 0.77.1)
-    - React-utils (= 0.77.1)
+    - React-callinvoker (= 0.79.0)
+    - React-cxxreact (= 0.79.0)
+    - React-debug (= 0.79.0)
+    - React-featureflags (= 0.79.0)
+    - React-jsi (= 0.79.0)
+    - React-logger (= 0.79.0)
+    - React-perflogger (= 0.79.0)
+    - React-utils (= 0.79.0)
   - ReactNativeHybridApp (0.0.0):
     - DoubleConversion
     - glog
@@ -2424,9 +2632,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2447,9 +2658,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2468,9 +2682,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2489,9 +2706,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2513,7 +2733,7 @@ PODS:
     - Firebase/Performance (= 8.8.0)
     - React-Core
     - RNFBApp
-  - RNFlashList (1.7.1):
+  - RNFlashList (1.7.6):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2525,9 +2745,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2536,7 +2759,7 @@ PODS:
     - Yoga
   - RNFS (2.20.0):
     - React-Core
-  - RNGestureHandler (2.22.0):
+  - RNGestureHandler (2.24.0):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2548,9 +2771,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2560,30 +2786,7 @@ PODS:
   - RNGoogleSignin (10.0.1):
     - GoogleSignIn (~> 7.0)
     - React-Core
-  - RNLiveMarkdown (0.1.244):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2024.11.18.00)
-    - RCTRequired
-    - RCTTypeSafety
-    - React-Core
-    - React-debug
-    - React-Fabric
-    - React-featureflags
-    - React-graphics
-    - React-ImageManager
-    - React-NativeModulesApple
-    - React-RCTFabric
-    - React-rendererdebug
-    - React-utils
-    - ReactCodegen
-    - ReactCommon/turbomodule/bridging
-    - ReactCommon/turbomodule/core
-    - RNLiveMarkdown/newarch (= 0.1.244)
-    - RNReanimated/worklets
-    - Yoga
-  - RNLiveMarkdown/newarch (0.1.244):
+  - RNLiveMarkdown (0.1.256):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2595,9 +2798,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2623,9 +2829,12 @@ PODS:
     - React
     - React-Core
     - React-featureflags
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
@@ -2644,9 +2853,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2665,16 +2877,19 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - RNReanimated (3.17.1):
+  - RNReanimated (3.17.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2691,15 +2906,16 @@ PODS:
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-    - RNReanimated/reanimated (= 3.17.1)
-    - RNReanimated/worklets (= 3.17.1)
+    - RNReanimated/reanimated (= 3.17.3)
+    - RNReanimated/worklets (= 3.17.3)
     - Yoga
-  - RNReanimated/reanimated (3.17.1):
+  - RNReanimated/reanimated (3.17.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2716,14 +2932,15 @@ PODS:
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-    - RNReanimated/reanimated/apple (= 3.17.1)
+    - RNReanimated/reanimated/apple (= 3.17.3)
     - Yoga
-  - RNReanimated/reanimated/apple (3.17.1):
+  - RNReanimated/reanimated/apple (3.17.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2740,13 +2957,14 @@ PODS:
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - RNReanimated/worklets (3.17.1):
+  - RNReanimated/worklets (3.17.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2763,14 +2981,15 @@ PODS:
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-    - RNReanimated/worklets/apple (= 3.17.1)
+    - RNReanimated/worklets/apple (= 3.17.3)
     - Yoga
-  - RNReanimated/worklets/apple (3.17.1):
+  - RNReanimated/worklets/apple (3.17.3):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2787,6 +3006,7 @@ PODS:
     - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2805,10 +3025,13 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
     - React-RCTImage
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2828,10 +3051,13 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
     - React-RCTImage
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2850,9 +3076,12 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
@@ -2864,7 +3093,7 @@ PODS:
     - RNSound/Core (= 0.11.2)
   - RNSound/Core (0.11.2):
     - React-Core
-  - RNSVG (15.9.0):
+  - RNSVG (15.11.2):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2876,17 +3105,20 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
-    - RNSVG/common (= 15.9.0)
+    - RNSVG/common (= 15.11.2)
     - Yoga
-  - RNSVG/common (15.9.0):
+  - RNSVG/common (15.11.2):
     - DoubleConversion
     - glog
     - hermes-engine
@@ -2898,18 +3130,21 @@ PODS:
     - React-Fabric
     - React-featureflags
     - React-graphics
+    - React-hermes
     - React-ImageManager
+    - React-jsi
     - React-NativeModulesApple
     - React-RCTFabric
+    - React-renderercss
     - React-rendererdebug
     - React-utils
     - ReactCodegen
     - ReactCommon/turbomodule/bridging
     - ReactCommon/turbomodule/core
     - Yoga
-  - SDWebImage (5.19.4):
-    - SDWebImage/Core (= 5.19.4)
-  - SDWebImage/Core (5.19.4)
+  - SDWebImage (5.21.0):
+    - SDWebImage/Core (= 5.21.0)
+  - SDWebImage/Core (5.21.0)
   - SDWebImageAVIFCoder (0.11.0):
     - libavif/core (>= 0.11.0)
     - SDWebImage (~> 5.10)
@@ -2981,6 +3216,8 @@ DEPENDENCIES:
   - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
   - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
   - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`)
+  - React-jsinspectortracing (from `../node_modules/react-native/ReactCommon/jsinspector-modern/tracing`)
+  - React-jsitooling (from `../node_modules/react-native/ReactCommon/jsitooling`)
   - React-jsitracing (from `../node_modules/react-native/ReactCommon/hermes/executor/`)
   - React-logger (from `../node_modules/react-native/ReactCommon/logger`)
   - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`)
@@ -2991,7 +3228,7 @@ DEPENDENCIES:
   - react-native-blob-util (from `../node_modules/react-native-blob-util`)
   - "react-native-cameraroll (from `../node_modules/@react-native-camera-roll/camera-roll`)"
   - react-native-config (from `../node_modules/react-native-config`)
-  - react-native-document-picker (from `../node_modules/react-native-document-picker`)
+  - "react-native-document-picker (from `../node_modules/@react-native-documents/picker`)"
   - "react-native-geolocation (from `../node_modules/@react-native-community/geolocation`)"
   - react-native-image-picker (from `../node_modules/react-native-image-picker`)
   - react-native-key-command (from `../node_modules/react-native-key-command`)
@@ -3009,8 +3246,8 @@ DEPENDENCIES:
   - "react-native-wallet (from `../node_modules/@expensify/react-native-wallet`)"
   - react-native-webrtc (from `../node_modules/react-native-webrtc`)
   - react-native-webview (from `../node_modules/react-native-webview`)
-  - React-nativeconfig (from `../node_modules/react-native/ReactCommon`)
   - React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`)
+  - React-oscompat (from `../node_modules/react-native/ReactCommon/oscompat`)
   - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
   - React-performancetimeline (from `../node_modules/react-native/ReactCommon/react/performance/timeline`)
   - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
@@ -3022,10 +3259,12 @@ DEPENDENCIES:
   - React-RCTImage (from `../node_modules/react-native/Libraries/Image`)
   - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`)
   - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`)
+  - React-RCTRuntime (from `../node_modules/react-native/React/Runtime`)
   - 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-rendererconsistency (from `../node_modules/react-native/ReactCommon/react/renderer/consistency`)
+  - React-renderercss (from `../node_modules/react-native/ReactCommon/react/renderer/css`)
   - React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`)
   - React-rncore (from `../node_modules/react-native/ReactCommon`)
   - React-RuntimeApple (from `../node_modules/react-native/ReactCommon/react/runtime/platform/ios`)
@@ -3149,7 +3388,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-2024-11-25-RNv0.77.0-d4f25d534ab744866448b36ca3bf3d97c08e638c
+    :tag: hermes-2025-03-03-RNv0.79.0-bc17d964d03743424823d7dd1a9f37633459c5c5
   lottie-react-native:
     :path: "../node_modules/lottie-react-native"
   onfido-react-native-sdk:
@@ -3206,6 +3445,10 @@ EXTERNAL SOURCES:
     :path: "../node_modules/react-native/ReactCommon/jsiexecutor"
   React-jsinspector:
     :path: "../node_modules/react-native/ReactCommon/jsinspector-modern"
+  React-jsinspectortracing:
+    :path: "../node_modules/react-native/ReactCommon/jsinspector-modern/tracing"
+  React-jsitooling:
+    :path: "../node_modules/react-native/ReactCommon/jsitooling"
   React-jsitracing:
     :path: "../node_modules/react-native/ReactCommon/hermes/executor/"
   React-logger:
@@ -3227,7 +3470,7 @@ EXTERNAL SOURCES:
   react-native-config:
     :path: "../node_modules/react-native-config"
   react-native-document-picker:
-    :path: "../node_modules/react-native-document-picker"
+    :path: "../node_modules/@react-native-documents/picker"
   react-native-geolocation:
     :path: "../node_modules/@react-native-community/geolocation"
   react-native-image-picker:
@@ -3262,10 +3505,10 @@ EXTERNAL SOURCES:
     :path: "../node_modules/react-native-webrtc"
   react-native-webview:
     :path: "../node_modules/react-native-webview"
-  React-nativeconfig:
-    :path: "../node_modules/react-native/ReactCommon"
   React-NativeModulesApple:
     :path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios"
+  React-oscompat:
+    :path: "../node_modules/react-native/ReactCommon/oscompat"
   React-perflogger:
     :path: "../node_modules/react-native/ReactCommon/reactperflogger"
   React-performancetimeline:
@@ -3288,6 +3531,8 @@ EXTERNAL SOURCES:
     :path: "../node_modules/react-native/Libraries/LinkingIOS"
   React-RCTNetwork:
     :path: "../node_modules/react-native/Libraries/Network"
+  React-RCTRuntime:
+    :path: "../node_modules/react-native/React/Runtime"
   React-RCTSettings:
     :path: "../node_modules/react-native/Libraries/Settings"
   React-RCTText:
@@ -3296,6 +3541,8 @@ EXTERNAL SOURCES:
     :path: "../node_modules/react-native/Libraries/Vibration"
   React-rendererconsistency:
     :path: "../node_modules/react-native/ReactCommon/react/renderer/consistency"
+  React-renderercss:
+    :path: "../node_modules/react-native/ReactCommon/react/renderer/css"
   React-rendererdebug:
     :path: "../node_modules/react-native/ReactCommon/react/renderer/debug"
   React-rncore:
@@ -3376,24 +3623,24 @@ CHECKOUT OPTIONS:
     :http: https://ios-releases.fullstory.com/fullstory-1.52.0-xcframework.tar.gz
 
 SPEC CHECKSUMS:
-  Airship: 4f4dc8dc616703787bdf73869437ccd0a52c6db7
-  AirshipFrameworkProxy: 6b6bee0ef983258931a67f701f1171e9ded2d8c5
+  Airship: eb4783c5465b9440a995169bdabfa6194ca8e3c5
+  AirshipFrameworkProxy: de286bad2060f857bbe35215ac9711512c645b2b
   AirshipServiceExtension: 9c73369f426396d9fb9ff222d86d842fac76ba46
   AppAuth: 501c04eda8a8d11f179dbe8637b7a91bb7e5d2fa
   AppLogs: 3bc4e9b141dbf265b9464409caaa40416a9ee0e0
-  boost: 659a89341ea4ab3df8259733813b52f26d8be9a5
+  boost: 7e761d76ca2ce687f7cc98e698152abd03a18f90
   DoubleConversion: cb417026b2400c8f53ae97020b2be961b59470cb
-  EXAV: 57ea461614a714b8b8fcc72c6fbc298b8f1ec78b
-  EXImageLoader: 759063a65ab016b836f73972d3bb25404888713d
-  expensify-react-native-background-task: f180077e77a41952128fdc2c83ce1d980994d125
-  Expo: 3a8a619381412bbf8537746ec27b485be01c8a1f
-  ExpoAsset: 0687fe05f5d051c4a34dd1f9440bd00858413cfe
-  ExpoFont: 773955186469acc5108ff569712a2d243857475f
-  ExpoImage: 3099001359e4414d60addd7c3e00a5d949df41e0
-  ExpoImageManipulator: 43c7bb3ecccbe993054d2e9131c8dcbe54f1385b
-  ExpoModulesCore: 99d5de91c92f514765d101d1e4988a5f387995e8
+  EXAV: 61f46d00f0fb30e0f216e5da95c838f3e45f8844
+  EXImageLoader: 7a6c83196db2da8a8283756e3b828629cf0951e2
+  expensify-react-native-background-task: 47792ed07f5a1a6d1fe27eaff09148f033321f46
+  Expo: 484fcc97508bd7651f66d9ce5a18a7dfcf93eeb5
+  ExpoAsset: 5a9fc80f20aa7d821508a6680be54b636e0d4288
+  ExpoFont: f9d53edb5a01a0882066dc621c398adcb88984c6
+  ExpoImage: 3295482c1eafa09b6a6f483fbacd6d5e480a4d4e
+  ExpoImageManipulator: d7a0ce1afdb04fdaec95a7dbb868c2b91b0913db
+  ExpoModulesCore: 177738c057b6ec1f72a23c6f42be287beb184b0e
   fast_float: 06eeec4fe712a76acc9376682e4808b05ce978b6
-  FBLazyVector: 79c4b7ec726447eec5f8593379466bd9fde1aa14
+  FBLazyVector: 758fbc1be5fb7ce700b23160033d82e574c2b6b7
   Firebase: 629510f1a9ddb235f3a7c5c8ceb23ba887f0f814
   FirebaseABTesting: 10cbce8db9985ae2e3847ea44e9947dd18f94e10
   FirebaseAnalytics: 5506ea8b867d8423485a84b4cd612d279f7b0b8a
@@ -3406,8 +3653,8 @@ SPEC CHECKSUMS:
   fmt: a40bb5bd0294ea969aaaba240a927bd33d878cdd
   ForkInputMask: 55e3fbab504b22da98483e9f9a6514b98fdd2f3c
   FullStory: c8a10b2358c0d33c57be84d16e4c440b0434b33d
-  fullstory_react-native: 5132c9dfa5e1ea4ec42679a708af782d4c4ec4bc
-  glog: eb93e2f488219332457c3c4eafd2738ddc7e80b8
+  fullstory_react-native: 86d27070ffd12056ffb70d215cfc41f851f9c2f3
+  glog: 5683914934d5b6e4240e497e0f4a3b42d1854183
   GoogleAppMeasurement: 5ba1164e3c844ba84272555e916d0a6d3d977e91
   GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
   GoogleSignIn: d4281ab6cf21542b1cfaff85c191f230b399d2db
@@ -3415,131 +3662,135 @@ SPEC CHECKSUMS:
   GTMAppAuth: f69bd07d68cd3b766125f7e072c45d7340dea0de
   GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
   GzipSwift: 893f3e48e597a1a4f62fafcb6514220fcf8287fa
-  hermes-engine: ccc24d29d650ea725d582a9a53d57cd417fbdb53
+  hermes-engine: cd4bd90f051e3658c83cc00e87c603dfe1b75947
   JitsiWebRTC: b47805ab5668be38e7ee60e2258f49badfe8e1d0
   libavif: 84bbb62fb232c3018d6f1bab79beea87e35de7b7
   libdav1d: 23581a4d8ec811ff171ed5e2e05cd27bad64c39f
-  libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
+  libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8
   lottie-ios: 3d98679b41fa6fd6aff2352b3953dbd3df8a397e
-  lottie-react-native: 0f6ceb2f3eff212f2498c953dffee442590aa492
-  MapboxCommon: 873b75dd0e8c5d7029e0c849437eba365f4887e5
+  lottie-react-native: 85c7a494f70296494ba0a2b687c034cf13263d8a
+  MapboxCommon: cc47fafe3fe5408ca49240aa80fa64f27f275711
   MapboxCoreMaps: 35685edba03e44468aed57c3dfd7f8795edafda8
-  MapboxMaps: 05822ab0ee74f7d626e6471572439afe35c1c116
+  MapboxMaps: f87023cf0d72b180b40ea0b6fb4b2d7db6b73b71
   MapboxMobileEvents: d044b9edbe0ec7df60f6c2c9634fe9a7f449266b
   nanopb: a0ba3315591a9ae0a16a309ee504766e90db0c96
   NWWebSocket: 040d22f23438cc09aaeabf537beff67699c3c76d
   Onfido: f3af62ea1c9a419589c133e3e511e5d2c4f3f8af
-  onfido-react-native-sdk: 1b8abe574234b86a592d7efb4eeada715709e23b
-  Plaid: c32f22ffce5ec67c9e6147eaf6c4d7d5f8086d89
+  onfido-react-native-sdk: 535b5c213516c2695877d26ec2789653927460e4
+  Plaid: 93c9e80b93f5cea960a1120047ef2b689394ff91
   PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
   pusher-websocket-react-native: e40c49a1e4ec96d4157375aebcf44943f0f8f62f
   PusherSwift: cad631bad86cfff4b8458dce1310a7774e469b1f
   RCT-Folly: 36fe2295e44b10d831836cc0d1daec5f8abcf809
-  RCTDeprecation: 664055db806cce35c3c1b43c84414dd66e117ae6
-  RCTRequired: dc9a83fa1012054f94430d210337ca3a1afe6fc0
-  RCTTypeSafety: 031cefa254a1df313a196f105b8fcffdab1c5ab6
-  React: 8edfc46c315852ec88ea4a29d5e79019af3dc667
-  React-callinvoker: 4450b01574dfc7a8f074f7e29e6965ac04859c8f
-  React-Core: 0ac3acde025b10da5ccb9970547ab60a863654ce
-  React-CoreModules: ebe93fa403bbd4d0909de105ffd34eeaad355083
-  React-cxxreact: af8a2be3edfed0e1168279eea443f95a7285602e
-  React-debug: b0f7271aeacc2eb9e34f863397dcfc204ef721c0
-  React-defaultsnativemodule: 2ad21fff895dabfb7db60ee1c37d0a3866229430
-  React-domnativemodule: f788e7169988a61ac38a5fc493ac02b5fbda7d6b
-  React-Fabric: 012ec12475cf941575871fdc006cf934090a9840
-  React-FabricComponents: 40cecebced128b2aa50c25a5fa6fdcd3b175286d
-  React-FabricImage: 81787fa643b67f1327b4aa5fa1678dc73a771e34
-  React-featureflags: 23d3dcdac6c9badeeb631db8a0883c7a3108d580
-  React-featureflagsnativemodule: 0a513d79c46288c108c5660c85b4d255ab8a7abd
-  React-graphics: 61380f6d01a225af9a3808dfd0f16622d2b6f90d
-  React-hermes: 55685771359191ccc4efed69f98da90353235b9d
-  React-idlecallbacksnativemodule: bef8c33ab7f9f8459f9a2750021375c4246b507e
-  React-ImageManager: bab699b4ed44ce23b23d5bcab1cdc376eb69d583
-  React-jserrorhandler: 7e3bdce29ae1b8d12959e4e42f3adc847a8d3750
-  React-jsi: 07273ffe8eb40a0e21a68d2fdaf1a6a032d46c1d
-  React-jsiexecutor: f5512f2b849e96add6309fd14a1731c704851da5
-  React-jsinspector: 615b4497d1258b5249096612cb488db006d95a8f
-  React-jsitracing: 838bbd073e24e84cf936354f085721cbc9204d70
-  React-logger: 1935d6e6461e9c8be4c87af56c56a4876021171e
-  React-Mapbuffer: 212171f037e3b22e6c2df839aa826806da480b85
-  React-microtasksnativemodule: 72564d5469003687d39bfc4efad281df8efc0684
-  react-native-advanced-input-mask: 7783a35343e2f0ec4b726d526bda4665e8fc11c9
-  react-native-airship: 2ff893d451520832e447fcce7f3f5ed9d3645f6a
-  react-native-app-logs: 70fb83d2fe260d3911e5bb222496ef1f7a2bfef9
-  react-native-blob-util: d65692a2acce17b7a836805114828142a3634033
-  react-native-cameraroll: 78710a5d35b0c6f41899a193e714564d8fd648b0
-  react-native-config: 5b9e180ca7beb5748ba473b257bb9a7d10e2a957
-  react-native-document-picker: da64a39fd71a84a9d3f7f58c8b0623c393e9991c
-  react-native-geolocation: cd91e4fd914de585933c836fd71f6bdb3c97a410
-  react-native-image-picker: 9e419813377d42566b0168121ab9483614488db5
-  react-native-key-command: 96c9dfb09bc89ecd1d58348c0d3ed84d0255648b
-  react-native-keyboard-controller: 5c628f5d8301047a87039a2d7de322233a39bbda
+  RCTDeprecation: c147f8912f768e5eedbc5f115b2b223d007d9fe3
+  RCTRequired: a71a7e9efd6546704d5abc683e0b68fcaa759861
+  RCTTypeSafety: d1bd039b216cfc4a46ad1d8b4564f780648e1be0
+  React: d03beae5eb2d321696d1ce2ae2d3989bccd31f46
+  React-callinvoker: 11905b2d609a9205024e9c524d53f5d010bfa0b1
+  React-Core: fd9a1af129310e9e562fa7df569fc176fee0036c
+  React-CoreModules: 073730eb76bdc973da76a4d734fbddd22b2669bf
+  React-cxxreact: 2a8602df7ac1d447b6d47b2032b8a769cca0f9fb
+  React-debug: 87ee65859590520301d17e91daa92f7f36308875
+  React-defaultsnativemodule: 36649012cf5d044393dde191abf6f3ffb66f0faa
+  React-domnativemodule: f9fac63242a62456d916dc1c5d26a54182d16c88
+  React-Fabric: 2e6eefac60baa5d2d67523a267c26e8e747c056d
+  React-FabricComponents: 5daf8fb9e1f0c2c10dc452242c99b92b4b602385
+  React-FabricImage: 628b565085a51aa3bea7e05ca68c80e55e43e3c0
+  React-featureflags: 12a3dddd2db68c28e0a8149104db4a14dda6a48b
+  React-featureflagsnativemodule: 8db61d5e2820c5469cf37816c13dc5658674f6ac
+  React-graphics: 8f96d144e394257ae409e7ef50db1c497aad650a
+  React-hermes: 99ac03df9051da2462523e30b5f98c736e48cdaf
+  React-idlecallbacksnativemodule: acc318140c8fbbb8df7cc17bdbec8204e55ebf49
+  React-ImageManager: 3ff2f4ee7652e863f3b2d31e91e12b3d52a3d944
+  React-jserrorhandler: 6e56ce4ee8c20de2c7381f53a6bbf3ad771242e9
+  React-jsi: 808c49ebbdf2f9fb5208c19d87c4b17c55f01074
+  React-jsiexecutor: b5f9739174274dd1f32c89898c20c2caeade6190
+  React-jsinspector: f657c5b348f18e85e016313a07814580095a9ba0
+  React-jsinspectortracing: 8f94248b83439ef0f6518085a7ccfdd122c59366
+  React-jsitooling: 400fa6985b49b7c33c58b321698a8c62cbdacabc
+  React-jsitracing: 3fd269d260bf814d15db9be4ebdb74e2ae214587
+  React-logger: a0374da29c78e17da5523809c9f54c91dfef0462
+  React-Mapbuffer: 08d7cddd2dcd2cc51c424931cca9ef507f7afe7b
+  React-microtasksnativemodule: cd8733e55d2bc53f5342d2c8e26c8c9bae82a999
+  react-native-advanced-input-mask: d4aa4ce2496f6b75076974e90a8260c0af3c1176
+  react-native-airship: ca6982bcf011ba20cd52fa3b6dabe5e021c0bc90
+  react-native-app-logs: 6af30dbe7eee481a88380e3e66313a597ac0eaeb
+  react-native-blob-util: 2aeac5a5274d88310dadc1ddfd5b01f36d490bc2
+  react-native-cameraroll: 3d2cc0692f384ead14e5d9e2e5fbf0e6e0139163
+  react-native-config: 93caafc2a444beb5fd7c641af2f93f5fae0d2ee3
+  react-native-document-picker: 287bf207901f020e9f50309f0f103d28a5600d45
+  react-native-geolocation: 39ed0f7fb573661bf4922bc55a7d81fe5410a10d
+  react-native-image-picker: 93ea6f8f49d30fe03f69a565665ea60b2278d4da
+  react-native-key-command: 0db5319034acde9839d6b35ff92a1dd2dcedbbfd
+  react-native-keyboard-controller: 98971543d6c70d5232f4122aa04483d2dfa9c970
   react-native-launch-arguments: 5f41e0abf88a15e3c5309b8875d6fd5ac43df49d
-  react-native-netinfo: eb0dfd4450b6f825eea973c490cee45db21cf570
-  react-native-pager-view: 679269230b107e29b6a211a6387d3721b9d0eed4
-  react-native-pdf: e4ae1d67ffaadc6f0e1bb103036276371e446626
-  react-native-performance: 6171618da76fcf5aaed3eff4e841e44f3fbe05f0
-  react-native-plaid-link-sdk: e774d5c1d57e10b5a8759dd439bcbd9a6af17fa1
-  react-native-quick-sqlite: 407d285646c6ca0674147ea2e08e48e7983409ad
-  react-native-release-profiler: dffea1dd7929bf5cf7da5ad4697dea7d9a062377
-  react-native-safe-area-context: b3edb1da341e5e61f865763d9e0b6d3d34706464
-  react-native-view-shot: bb169342812ded991a4a0387e7d0b17cb515e62a
-  react-native-wallet: 46df147c6089b2490dc5f4cbf25c58ce70b0215d
+  react-native-netinfo: 6aa96b58130ce8de834c2f6c00878b69703d9e10
+  react-native-pager-view: b7f8cf921e19063a3528ee2aeae945bb42104dbd
+  react-native-pdf: 65f142fbddbb7ef4ee51c5e3bf2a03d24f507c11
+  react-native-performance: 025cfdaddd31efee1e334b15924a04f5497d9702
+  react-native-plaid-link-sdk: d82ea6d7f8065e82d9ea8cf6abf3cf4914da8b5c
+  react-native-quick-sqlite: 70c757cf4947a7c08b46a259437a2c8d3a136a68
+  react-native-release-profiler: 4dbd61f2e1ebc2b11cfa5a03511bbc88fda5a25b
+  react-native-safe-area-context: 55dbcf556a51092ddf163b29febbc07dc7f14ebb
+  react-native-view-shot: 41c5c50c809f1fd61f91c99400b2222c9b80d13f
+  react-native-wallet: 7f992d5140331ac1304fe862f43a218e8caf2a36
   react-native-webrtc: 0f1c94069ff1eb9d8fb1618c2dc71f73542c8cfa
-  react-native-webview: b375842af66a9f0ab979378bdc8b26eeb5d8e3ee
-  React-nativeconfig: cb207ebba7cafce30657c7ad9f1587a8f32e4564
-  React-NativeModulesApple: 82a8bee52df9f5b378195a500f22be3a6ef0f890
-  React-perflogger: a8a27aa65a47f740eff65bb38b79baacb38a50d5
-  React-performancetimeline: 3ef4a640b56f9c7ec5f52bd93217b9b607c37cf4
-  React-RCTActionSheet: 0fdf55fb8724856d63ca8c63cdb4e2325e15e8ec
-  React-RCTAnimation: b93f5a1675cc2599e96851fec13c909fdfb1d6bb
-  React-RCTAppDelegate: 1e52340adeca84f16211da985a420b9435118fef
-  React-RCTBlob: e437ac6279a3cc2ddea9bffc8e258efac71b2609
-  React-RCTFabric: 0a9ae1f46dfe9e11ea3664d2ce0f5fd1e58f58a8
-  React-RCTFBReactNativeSpec: d25807c3413a4574c1c90240ff58e8704606d5af
-  React-RCTImage: 028171a4d7017ea96a2e605c817cd76f01ed3836
-  React-RCTLinking: e3f5431ab5f8f56b82387d41a2c484a278a8e645
-  React-RCTNetwork: 6de20da228ffe8bd9c9e3bafe3f7d1dfe1d7bd55
-  React-RCTSettings: 433c9f6a070bcecbe5a44d5009326b4d6f3b0667
-  React-RCTText: 46249950f8d8738b90a60883d19b5bef09f0a296
-  React-RCTVibration: 8f41e85ab6d40c7db6111ca9e8c7492c8de374fb
-  React-rendererconsistency: d59654ad59217708509d1bb6373358be321613a4
-  React-rendererdebug: 1f619b295f346242842f3accee23e8394b995d3c
-  React-rncore: cafe45e14d870bbecbbf4bd89e12ef3b596e1f2d
-  React-RuntimeApple: 7f27fb75a37e00a8e1efaa6e8f7a5b653871fb1b
-  React-RuntimeCore: b4756a863be9d7128d8e31ac3c0505e088d1530f
-  React-runtimeexecutor: 201311bdafb53b5c30292782c8ee90193af86d91
-  React-RuntimeHermes: 4bd3779228ffeaeae3a72747fff66861bad569ac
-  React-runtimescheduler: 845c26b9870053c312f3a4f358ba7ec897c01605
-  React-timing: 127d8598b5a15ae5b29ebd0ec474d590285c6f2f
-  React-utils: e33fe9381f4f7f25b2dfdf9526c82f5be8712c86
-  ReactAppDependencyProvider: e7e92253013754a8c35ebdbf8ad700f4e8956f62
-  ReactCodegen: 8c6710db5ccee603fa0475978465b606abe1ed77
-  ReactCommon: 8da6c58517fa560d0fc7a9da83093457303ae9f8
-  ReactNativeHybridApp: f8a5dbdc675c976bc9afe53ef99ced57cf30fe84
+  react-native-webview: cde150463e7caa49b316b0ed1871e7ef8193bef4
+  React-NativeModulesApple: b0bd6d12dc7b554676bdd1be5c4ddaa5ff125ae0
+  React-oscompat: faff1df234d57a7368b56e9642222dde9eb9f422
+  React-perflogger: 978df3d0a604cd92887381d2e199461d4d7f2659
+  React-performancetimeline: 4a44a8012d4ee363ad2ae7d35f4f7b2b78c8b67f
+  React-RCTActionSheet: 9ce0ed65693f0faa48e7ab0f60828251af7564f5
+  React-RCTAnimation: e0289b24820b56ad01af3c44801c7587fc3ec05a
+  React-RCTAppDelegate: d8fea31f7aa70a133c182008f68a86439926fd85
+  React-RCTBlob: acd775e71fe2779f7b6d7bfc6d4e4562545a47f8
+  React-RCTFabric: 77a577098475e0e6b86d8d35541db9f4dcd476ff
+  React-RCTFBReactNativeSpec: 3f95daae8ee64dc75ee269bc8ef7c5990f4509ba
+  React-RCTImage: ecdbb5d684df7c72f587fab17147b9b3d6c19222
+  React-RCTLinking: 68d7b9a63109c9102eb8dd5c20a85a1f08082c42
+  React-RCTNetwork: 0bf473d7d4810bd151adbc73deb6d167143e5a78
+  React-RCTRuntime: d7c1af2448cf8aec9e3f67bcc6842ff13c2368c7
+  React-RCTSettings: 0fa7d724b8d8c77693edcc8106d9e8f9721142d8
+  React-RCTText: d59a5dad032c931fc5c88479aa2d5ed3f0e2dbaa
+  React-RCTVibration: 276d9591fb29ac9ef4c7f1202508a55b170a4509
+  React-rendererconsistency: 994a5556edf3114dc9b757f17a32996a00e650c4
+  React-renderercss: 3290539ddc13e8247deb5812c4e2ebd66a95beeb
+  React-rendererdebug: ecb6d4b95b3f2eff8415e76b712de48eed660c18
+  React-rncore: cb66e8753cd847098c378c4af319ece0c56a5cc9
+  React-RuntimeApple: 8edd4f0fcb9b0ba8ecd0fc97fd6043d6be3eaf25
+  React-RuntimeCore: 009ff6d9612226d78b8b0ed917ea80ab47b08a51
+  React-runtimeexecutor: a8931ab42571aba415ed3386ec302e0ab5301f8f
+  React-RuntimeHermes: a0df3490b92a5b73e3f41e13502cdeeca34c21d0
+  React-runtimescheduler: 883f969119ec93a22c54a3d77a3f1cc8146fbba8
+  React-timing: f379c1e5064513ce4ad6fe921b0f4e2b08463a40
+  React-utils: 933581c02d311d4e5613911c79cd8f7f46910002
+  ReactAppDependencyProvider: e365be84c6636b639c30133fbf1b0c8be8e95e62
+  ReactCodegen: daf57f5314369a4ad607ee77516d45aad03b10d7
+  ReactCommon: c07346679f14c0b62ad02b20e18e984da3b575ce
+  ReactNativeHybridApp: b070b20046f53bfb82bca922e7190b1f01eb5e29
   RNAppleAuthentication: 0571c08da8c327ae2afc0261b48b4a515b0286a6
-  RNCClipboard: 97d92b55b35f73533df13f1291532afaa278063e
-  RNCPicker: df40bc15151322f96fd2c59fb987a95d6de03b26
-  RNDeviceInfo: a24bbab321aca6ab97e52935d60b7e2c66fec9c4
+  RNCClipboard: e63f1470286d683f2ade736feb352f4f18745247
+  RNCPicker: 4c540720342bbec49d1cc4bc4cdc7fbff044f5e6
+  RNDeviceInfo: 1760646529b1e4125675d48234981db0d06d39de
   RNFBAnalytics: f76bfa164ac235b00505deb9fc1776634056898c
   RNFBApp: 729c0666395b1953198dc4a1ec6deb8fbe1c302e
   RNFBCrashlytics: 2061ca863e8e2fa1aae9b12477d7dfa8e88ca0f9
   RNFBPerf: 389914cda4000fe0d996a752532a591132cbf3f9
-  RNFlashList: cb8f8b4dbf724147e86a373e7ac78c602cbfebcc
+  RNFlashList: 30b68f572400383347ce7df3777985af0d089624
   RNFS: 4ac0f0ea233904cb798630b3c077808c06931688
-  RNGestureHandler: 4e7defe5095e936424173fc75f0bf2af5bba8e23
+  RNGestureHandler: ccf4105b125002bd88e39d2a1f2b7e6001bcdf34
   RNGoogleSignin: ccaa4a81582cf713eea562c5dd9dc1961a715fd0
-  RNLiveMarkdown: e3f49ff5a70a7fb5ba515a390cae767e5e999ac9
+  RNLiveMarkdown: 266f22a1d5adbe4c94d7fbaa2405e37311afbc0c
   RNLocalize: d4b8af4e442d4bcca54e68fc687a2129b4d71a81
-  rnmapbox-maps: 1d313fe5d7d18845b3015ffd6994e0c81afbffcd
-  RNPermissions: ae4949b7250af8edc4791e440490c0f96237b329
-  RNReactNativeHapticFeedback: 5fdbbaedabc1698dc3bb2a72105fadf63136a451
-  RNReanimated: 67d8eda35002543abb656f25fa1a457ceeab6807
-  RNScreens: 9b9bb7f9dc3eb218d79d84e0ac15df65d0e349f2
-  RNShare: c91b5757e92391206939fdf8fce0a3d966e2b6d6
+  rnmapbox-maps: ef00aafe2cbef8808f2aa6168e3f86ce103058bc
+  RNPermissions: d1d4ae2fab871ac9252d96938b49aa95f94f9a42
+  RNReactNativeHapticFeedback: 7dfb10cca09eb7a4ed6b63ae6415a195beec8cf2
+  RNReanimated: 17308ae776a86e6be5d6fb1797722482569932fe
+  RNScreens: 297343f8f56f6a11ee0ebed0848e074120c5bfd7
+  RNShare: 4861d5243b2a1ca5292561c2253ff98e5cb6940b
   RNSound: 6c156f925295bdc83e8e422e7d8b38d33bc71852
-  RNSVG: 297c578f1fa3f8b749137ead32435b7bd8fa9136
-  SDWebImage: 066c47b573f408f18caa467d71deace7c0f8280d
+  RNSVG: ee32efbed652c5151fd3f98bed13c68af285bc38
+  SDWebImage: f84b0feeb08d2d11e6a9b843cb06d75ebf5b8868
   SDWebImageAVIFCoder: 00310d246aab3232ce77f1d8f0076f8c4b021d90
   SDWebImageSVGCoder: 15a300a97ec1c8ac958f009c02220ac0402e936c
   SDWebImageWebPCoder: e38c0a70396191361d60c092933e22c20d5b1380
@@ -3547,7 +3798,7 @@ SPEC CHECKSUMS:
   Turf: aa2ede4298009639d10db36aba1a7ebaad072a5e
   TweetNacl: 3abf4d1d2082b0114e7a67410e300892448951e6
   VisionCamera: c95a8ad535f527562be1fb05fb2fd324578e769c
-  Yoga: 1fd059161b449018342943b095a6d4e69bcaa719
+  Yoga: 9773f1327b258fa449988c2e42fbb7cbdf655d96
 
 PODFILE CHECKSUM: 7c82525cf111fba4b673ad07e55f2994ea241a32
 
diff --git a/package-lock.json b/package-lock.json
index f676c20adceb..d75815ddc984 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,9 +13,9 @@
         "@dotlottie/react-player": "^1.6.3",
         "@expensify/react-native-background-task": "file:./modules/background-task",
         "@expensify/react-native-hybrid-app": "file:./modules/hybrid-app",
-        "@expensify/react-native-live-markdown": "0.1.244",
+        "@expensify/react-native-live-markdown": "0.1.256",
         "@expensify/react-native-wallet": "file:modules/expensify-react-native-wallet.tgz",
-        "@expo/metro-runtime": "^4.0.1",
+        "@expo/metro-runtime": "5.0.1-canary-20250408-7f0ab53",
         "@firebase/app": "^0.10.10",
         "@firebase/performance": "^0.6.8",
         "@formatjs/intl-datetimeformat": "^6.12.5",
@@ -33,6 +33,7 @@
         "@react-native-clipboard/clipboard": "^1.15.0",
         "@react-native-community/geolocation": "3.3.0",
         "@react-native-community/netinfo": "11.2.1",
+        "@react-native-documents/picker": "^10.1.1",
         "@react-native-firebase/analytics": "^12.3.0",
         "@react-native-firebase/app": "^12.3.0",
         "@react-native-firebase/crashlytics": "^12.3.0",
@@ -45,10 +46,10 @@
         "@react-navigation/stack": "6.3.29",
         "@react-ng/bounds-observer": "^0.2.1",
         "@rnmapbox/maps": "10.1.33",
-        "@shopify/flash-list": "1.7.1",
+        "@shopify/flash-list": "1.7.6",
         "@types/pako": "^2.0.3",
         "@types/webrtc": "^0.0.46",
-        "@ua/react-native-airship": "~21.4.1",
+        "@ua/react-native-airship": "22.0.0",
         "awesome-phonenumber": "^5.4.0",
         "babel-polyfill": "^6.26.0",
         "canvas-size": "^1.2.6",
@@ -58,12 +59,12 @@
         "dom-serializer": "^0.2.2",
         "domhandler": "^4.3.0",
         "expensify-common": "2.0.127",
-        "expo": "52.0.41",
-        "expo-asset": "^11.0.5",
-        "expo-av": "^15.0.2",
-        "expo-font": "^13.0.4",
-        "expo-image": "^2.0.4",
-        "expo-image-manipulator": "^13.0.6",
+        "expo": "53.0.0-preview.7",
+        "expo-asset": "11.1.1-canary-20250408-7f0ab53",
+        "expo-av": "15.1.1-canary-20250408-7f0ab53",
+        "expo-font": "13.1.1-canary-20250408-7f0ab53",
+        "expo-image": "2.1.1-canary-20250408-7f0ab53",
+        "expo-image-manipulator": "13.1.1-canary-20250408-7f0ab53",
         "fast-equals": "^4.0.3",
         "focus-trap-react": "^11.0.3",
         "howler": "^2.2.4",
@@ -76,15 +77,15 @@
         "pako": "^2.1.0",
         "process": "^0.11.10",
         "pusher-js": "8.3.0",
-        "react": "18.3.1",
+        "react": "19.0.0",
         "react-beautiful-dnd": "^13.1.1",
         "react-collapse": "^5.1.0",
         "react-content-loader": "^7.0.0",
-        "react-dom": "18.3.1",
+        "react-dom": "19.0.0",
         "react-error-boundary": "^4.0.11",
         "react-fast-pdf": "^1.0.27",
         "react-map-gl": "^7.1.3",
-        "react-native": "0.77.1",
+        "react-native": "0.79.0",
         "react-native-advanced-input-mask": "1.3.1",
         "react-native-android-location-enabler": "^2.0.1",
         "react-native-app-logs": "0.3.1",
@@ -92,10 +93,9 @@
         "react-native-collapsible": "^1.6.2",
         "react-native-config": "1.5.3",
         "react-native-device-info": "10.3.1",
-        "react-native-document-picker": "^9.3.1",
         "react-native-draggable-flatlist": "^4.0.1",
         "react-native-fs": "^2.20.0",
-        "react-native-gesture-handler": "2.22.0",
+        "react-native-gesture-handler": "2.24.0",
         "react-native-google-places-autocomplete": "2.5.6",
         "react-native-haptic-feedback": "^2.3.3",
         "react-native-image-picker": "^7.1.2",
@@ -106,7 +106,7 @@
         "react-native-localize": "^2.2.6",
         "react-native-modal": "^13.0.0",
         "react-native-onyx": "2.0.100",
-        "react-native-pager-view": "6.5.2",
+        "react-native-pager-view": "6.7.0",
         "react-native-pdf": "6.7.3",
         "react-native-performance": "^5.1.0",
         "react-native-permissions": "^3.10.0",
@@ -114,21 +114,21 @@
         "react-native-plaid-link-sdk": "11.11.0",
         "react-native-qrcode-svg": "6.3.14",
         "react-native-quick-sqlite": "git+https://github.com/margelo/react-native-nitro-sqlite#99f34ebefa91698945f3ed26622e002bd79489e0",
-        "react-native-reanimated": "3.17.1",
+        "react-native-reanimated": "3.17.3",
         "react-native-release-profiler": "^0.2.1",
         "react-native-render-html": "6.3.1",
-        "react-native-safe-area-context": "4.12.0",
+        "react-native-safe-area-context": "5.3.0",
         "react-native-screens": "3.37.0",
         "react-native-share": "11.0.2",
         "react-native-sound": "^0.11.2",
-        "react-native-svg": "15.9.0",
+        "react-native-svg": "15.11.2",
         "react-native-tab-view": "^3.5.2",
         "react-native-url-polyfill": "^2.0.0",
-        "react-native-view-shot": "4.0.0",
+        "react-native-view-shot": "4.0.3",
         "react-native-vision-camera": "^4.6.1",
-        "react-native-web": "0.19.13",
+        "react-native-web": "0.20.0",
         "react-native-webrtc": "^124.0.5",
-        "react-native-webview": "13.13.1",
+        "react-native-webview": "13.13.5",
         "react-plaid-link": "3.3.2",
         "react-web-config": "^1.0.0",
         "react-webcam": "^7.1.1",
@@ -168,12 +168,12 @@
         "@perf-profiler/reporter": "^0.9.0",
         "@perf-profiler/types": "^0.8.0",
         "@pmmmwh/react-refresh-webpack-plugin": "^0.5.15",
-        "@react-native-community/cli": "15.0.1",
-        "@react-native-community/cli-platform-android": "15.0.1",
-        "@react-native-community/cli-platform-ios": "15.0.1",
+        "@react-native-community/cli": "18.0.0",
+        "@react-native-community/cli-platform-android": "18.0.0",
+        "@react-native-community/cli-platform-ios": "18.0.0",
         "@react-native-community/eslint-config": "3.2.0",
-        "@react-native/babel-preset": "0.77.1",
-        "@react-native/metro-config": "0.77.1",
+        "@react-native/babel-preset": "0.79.0",
+        "@react-native/metro-config": "0.79.0",
         "@react-navigation/devtools": "^6.0.10",
         "@rnef/cli": "^0.5.3",
         "@rnef/platform-android": "^0.5.3",
@@ -202,13 +202,13 @@
         "@types/mime-db": "^1.43.5",
         "@types/node": "^20.11.5",
         "@types/pusher-js": "^5.1.0",
-        "@types/react": "^18.2.6",
+        "@types/react": "^19.0.0",
         "@types/react-beautiful-dnd": "^13.1.4",
         "@types/react-collapse": "^5.0.1",
-        "@types/react-dom": "^18.2.4",
+        "@types/react-dom": "^19.0.0",
         "@types/react-is": "^18.3.0",
         "@types/react-native-web": "^0.0.0",
-        "@types/react-test-renderer": "^18.0.0",
+        "@types/react-test-renderer": "19.0.0",
         "@types/semver": "^7.5.4",
         "@types/setimmediate": "^1.0.2",
         "@types/webpack": "^5.28.5",
@@ -217,7 +217,7 @@
         "@typescript-eslint/parser": "^7.13.1",
         "@vercel/ncc": "0.38.1",
         "@vue/preload-webpack-plugin": "^2.0.0",
-        "@welldone-software/why-did-you-render": "7.0.1",
+        "@welldone-software/why-did-you-render": "10.0.1",
         "ajv-cli": "^5.0.0",
         "babel-jest": "29.4.1",
         "babel-loader": "^9.1.3",
@@ -255,7 +255,7 @@
         "jest-circus": "29.4.1",
         "jest-cli": "29.4.1",
         "jest-environment-jsdom": "^29.4.1",
-        "jest-expo": "52.0.3",
+        "jest-expo": "53.0.0-canary-20250408-7f0ab53",
         "jest-transformer-svg": "^2.0.1",
         "jest-when": "^3.5.2",
         "link": "^2.1.1",
@@ -271,7 +271,7 @@
         "react-is": "^18.3.1",
         "react-native-clean-project": "^4.0.0-alpha4.0",
         "react-refresh": "^0.14.2",
-        "react-test-renderer": "18.3.1",
+        "react-test-renderer": "19.0.0",
         "reassure": "^1.0.0-rc.4",
         "semver": "7.5.2",
         "setimmediate": "^1.0.5",
@@ -602,6 +602,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz",
       "integrity": "sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==",
+      "dev": true,
       "dependencies": {
         "@babel/traverse": "^7.25.9",
         "@babel/types": "^7.25.9"
@@ -614,6 +615,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
       "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "dev": true,
       "dependencies": {
         "@babel/code-frame": "^7.25.9",
         "@babel/generator": "^7.25.9",
@@ -1160,6 +1162,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz",
       "integrity": "sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9",
         "@babel/traverse": "^7.25.9"
@@ -1175,6 +1178,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
       "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "dev": true,
       "dependencies": {
         "@babel/code-frame": "^7.25.9",
         "@babel/generator": "^7.25.9",
@@ -1192,6 +1196,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz",
       "integrity": "sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1206,6 +1211,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz",
       "integrity": "sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1220,6 +1226,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz",
       "integrity": "sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9",
         "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
@@ -1236,6 +1243,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz",
       "integrity": "sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9",
         "@babel/traverse": "^7.25.9"
@@ -1251,6 +1259,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
       "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "dev": true,
       "dependencies": {
         "@babel/code-frame": "^7.25.9",
         "@babel/generator": "^7.25.9",
@@ -1266,6 +1275,7 @@
     },
     "node_modules/@babel/plugin-proposal-class-properties": {
       "version": "7.18.6",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@babel/helper-create-class-features-plugin": "^7.18.6",
@@ -1324,41 +1334,6 @@
         "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": {
-      "version": "7.18.6",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz",
-      "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==",
-      "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/helper-plugin-utils": "^7.18.6",
-        "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
-      }
-    },
-    "node_modules/@babel/plugin-proposal-optional-chaining": {
-      "version": "7.21.0",
-      "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz",
-      "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==",
-      "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/helper-plugin-utils": "^7.20.2",
-        "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
-        "@babel/plugin-syntax-optional-chaining": "^7.8.3"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
-      }
-    },
     "node_modules/@babel/plugin-proposal-private-methods": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz",
@@ -1494,6 +1469,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.9.tgz",
       "integrity": "sha512-4GHX5uzr5QMOOuzV0an9MFju4hKlm0OyePl/lHhcsTVae5t/IKVHnb8W67Vr6FuLlk5lPqLB7n7O+K5R46emYg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1508,6 +1484,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.9.tgz",
       "integrity": "sha512-u3EN9ub8LyYvgTnrgp8gboElouayiwPdnM7x5tcnW3iSt09/lQYPwMNK40I9IUxo7QOZhAsPHCmmuO7EPdruqg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1657,6 +1634,7 @@
     },
     "node_modules/@babel/plugin-syntax-unicode-sets-regex": {
       "version": "7.18.6",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@babel/helper-create-regexp-features-plugin": "^7.18.6",
@@ -1736,6 +1714,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz",
       "integrity": "sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1779,6 +1758,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.9.tgz",
       "integrity": "sha512-UIf+72C7YJ+PJ685/PpATbCz00XqiFEzHX5iysRwfvNT0Ko+FaXSvRgLytFSp8xUItrG9pFM/KoBBZDrY/cYyg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-create-class-features-plugin": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -1859,6 +1839,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz",
       "integrity": "sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-create-regexp-features-plugin": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -1874,6 +1855,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz",
       "integrity": "sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1888,6 +1870,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz",
       "integrity": "sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-create-regexp-features-plugin": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -1903,6 +1886,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz",
       "integrity": "sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -1917,6 +1901,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz",
       "integrity": "sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-builder-binary-assignment-operator-visitor": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -2010,6 +1995,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz",
       "integrity": "sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2052,6 +2038,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz",
       "integrity": "sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2066,6 +2053,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz",
       "integrity": "sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-module-transforms": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -2097,6 +2085,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz",
       "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-module-transforms": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9",
@@ -2114,6 +2103,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
       "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "dev": true,
       "dependencies": {
         "@babel/code-frame": "^7.25.9",
         "@babel/generator": "^7.25.9",
@@ -2131,6 +2121,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz",
       "integrity": "sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-module-transforms": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -2161,6 +2152,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz",
       "integrity": "sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2219,6 +2211,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz",
       "integrity": "sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9",
         "@babel/helper-replace-supers": "^7.25.9"
@@ -2308,6 +2301,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz",
       "integrity": "sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2438,6 +2432,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz",
       "integrity": "sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2535,6 +2530,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz",
       "integrity": "sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2568,6 +2564,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz",
       "integrity": "sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9"
       },
@@ -2582,6 +2579,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz",
       "integrity": "sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-create-regexp-features-plugin": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -2612,6 +2610,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz",
       "integrity": "sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==",
+      "dev": true,
       "dependencies": {
         "@babel/helper-create-regexp-features-plugin": "^7.25.9",
         "@babel/helper-plugin-utils": "^7.25.9"
@@ -2627,6 +2626,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.9.tgz",
       "integrity": "sha512-XqDEt+hfsQukahSX9JOBDHhpUHDhj2zGSxoqWQFCMajOSBnbhBdgON/bU/5PkBA1yX5tqW6tTzuIPVsZTQ7h5Q==",
+      "dev": true,
       "dependencies": {
         "@babel/compat-data": "^7.25.9",
         "@babel/helper-compilation-targets": "^7.25.9",
@@ -2706,6 +2706,7 @@
     },
     "node_modules/@babel/preset-env/node_modules/@babel/plugin-proposal-private-property-in-object": {
       "version": "7.21.0-placeholder-for-preset-env.2",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=6.9.0"
@@ -2716,6 +2717,7 @@
     },
     "node_modules/@babel/preset-env/node_modules/semver": {
       "version": "6.3.1",
+      "dev": true,
       "license": "ISC",
       "bin": {
         "semver": "bin/semver.js"
@@ -2725,6 +2727,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.25.9.tgz",
       "integrity": "sha512-EASHsAhE+SSlEzJ4bzfusnXSHiU+JfAYzj+jbw2vgQKgq5HrUr8qs+vgtiEL5dOH6sEweI+PNt2D7AqrDSHyqQ==",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.25.9",
@@ -2740,6 +2743,7 @@
     },
     "node_modules/@babel/preset-modules": {
       "version": "0.1.6-no-external-plugins",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@babel/helper-plugin-utils": "^7.0.0",
@@ -2791,6 +2795,7 @@
       "version": "7.25.9",
       "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.25.9.tgz",
       "integrity": "sha512-8D43jXtGsYmEeDvm4MWHYUpWf8iiXgWYx3fW7E7Wb7Oe6FWqJPl5K6TuFW0dOwNZzEE5rjlaSJYH9JjrUKJszA==",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "clone-deep": "^4.0.1",
@@ -3756,9 +3761,9 @@
       "link": true
     },
     "node_modules/@expensify/react-native-live-markdown": {
-      "version": "0.1.244",
-      "resolved": "https://registry.npmjs.org/@expensify/react-native-live-markdown/-/react-native-live-markdown-0.1.244.tgz",
-      "integrity": "sha512-f9LD7Xbu8YG5Acc5gFsMhth8SoOFmE6aDeHsj21PYn2ZJXCJKJVCsctkH1o8MNhlKy+IEIM4pUSret3DGq0ikg==",
+      "version": "0.1.256",
+      "resolved": "https://registry.npmjs.org/@expensify/react-native-live-markdown/-/react-native-live-markdown-0.1.256.tgz",
+      "integrity": "sha512-tAra/qwrBz/B8B1EwxEaI0td4nNM0zyh8CD0IHDapu5kC65vk9MVicSkUIIJSeSLgyDCXtUmmBSd4SOmNskstA==",
       "license": "MIT",
       "workspaces": [
         "./example",
@@ -3791,68 +3796,65 @@
         "react-native": "*"
       }
     },
-    "node_modules/@expo/bunyan": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/@expo/bunyan/-/bunyan-4.0.1.tgz",
-      "integrity": "sha512-+Lla7nYSiHZirgK+U/uYzsLv/X+HaJienbD5AKX1UQZHYfWaP+9uuQluRB4GrEVWF0GZ7vEVp/jzaOT9k/SQlg==",
+    "node_modules/@expensify/react-native-wallet/node_modules/expo-image": {
+      "version": "2.0.7",
+      "resolved": "https://registry.npmjs.org/expo-image/-/expo-image-2.0.7.tgz",
+      "integrity": "sha512-kv40OIJOkItwznhdqFmKxTMC5O8GkpyTf8ng7Py4Hy6IBiH59dkeP6vUZQhzPhJOm5v1kZK4XldbskBosqzOug==",
       "license": "MIT",
-      "dependencies": {
-        "uuid": "^8.0.0"
+      "peerDependencies": {
+        "expo": "*",
+        "react": "*",
+        "react-native": "*",
+        "react-native-web": "*"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "peerDependenciesMeta": {
+        "react-native-web": {
+          "optional": true
+        }
       }
     },
     "node_modules/@expo/cli": {
-      "version": "0.22.22",
-      "resolved": "https://registry.npmjs.org/@expo/cli/-/cli-0.22.22.tgz",
-      "integrity": "sha512-sOttVuk/8gdnsiSeDpnRNpLgBJHLbyQQC0QBGd2iHpr/x6xSYpgoRO6AqwAwGtQsk4ZEPZ83ulvccei1IIPdwg==",
+      "version": "0.24.2",
+      "resolved": "https://registry.npmjs.org/@expo/cli/-/cli-0.24.2.tgz",
+      "integrity": "sha512-CW/mLfLMk7FRBIka+4W+3dmv93uAQ3MGe4e7iWbmuW/Pm6F9V8ueoPZ11cUGbEQX7MGJfyb4jZQtgYecoPX8yw==",
       "license": "MIT",
       "dependencies": {
         "@0no-co/graphql.web": "^1.0.8",
         "@babel/runtime": "^7.20.0",
         "@expo/code-signing-certificates": "^0.0.5",
-        "@expo/config": "~10.0.11",
-        "@expo/config-plugins": "~9.0.17",
+        "@expo/config": "~11.0.3",
+        "@expo/config-plugins": "~9.1.4",
         "@expo/devcert": "^1.1.2",
-        "@expo/env": "~0.4.2",
-        "@expo/image-utils": "^0.6.5",
-        "@expo/json-file": "^9.0.2",
-        "@expo/metro-config": "~0.19.12",
-        "@expo/osascript": "^2.1.6",
-        "@expo/package-manager": "^1.7.2",
-        "@expo/plist": "^0.2.2",
-        "@expo/prebuild-config": "^8.0.29",
-        "@expo/rudder-sdk-node": "^1.1.1",
+        "@expo/env": "~1.0.3",
+        "@expo/image-utils": "^0.7.2",
+        "@expo/json-file": "^9.1.2",
+        "@expo/metro-config": "~0.20.4",
+        "@expo/osascript": "^2.2.2",
+        "@expo/package-manager": "^1.8.2",
+        "@expo/plist": "^0.3.2",
+        "@expo/prebuild-config": "^9.0.0",
         "@expo/spawn-async": "^1.7.2",
         "@expo/ws-tunnel": "^1.0.1",
         "@expo/xcpretty": "^4.3.0",
-        "@react-native/dev-middleware": "0.76.7",
+        "@react-native/dev-middleware": "0.79.0",
         "@urql/core": "^5.0.6",
         "@urql/exchange-retry": "^1.3.0",
         "accepts": "^1.3.8",
         "arg": "^5.0.2",
         "better-opn": "~3.0.2",
-        "bplist-creator": "0.0.7",
+        "bplist-creator": "0.1.0",
         "bplist-parser": "^0.3.1",
-        "cacache": "^18.0.2",
         "chalk": "^4.0.0",
         "ci-info": "^3.3.0",
         "compression": "^1.7.4",
         "connect": "^3.7.0",
         "debug": "^4.3.4",
         "env-editor": "^0.4.1",
-        "fast-glob": "^3.3.2",
-        "form-data": "^3.0.1",
         "freeport-async": "^2.0.0",
-        "fs-extra": "~8.1.0",
         "getenv": "^1.0.0",
         "glob": "^10.4.2",
-        "internal-ip": "^4.3.0",
-        "is-docker": "^2.0.0",
-        "is-wsl": "^2.1.1",
-        "lodash.debounce": "^4.0.8",
-        "minimatch": "^3.0.4",
+        "internal-ip": "6.1.0",
+        "minimatch": "^9.0.0",
         "node-forge": "^1.3.1",
         "npm-package-arg": "^11.0.0",
         "ora": "^3.4.0",
@@ -3873,12 +3875,9 @@
         "source-map-support": "~0.5.21",
         "stacktrace-parser": "^0.1.10",
         "structured-headers": "^0.4.1",
-        "tar": "^6.2.1",
-        "temp-dir": "^2.0.0",
-        "tempy": "^0.7.1",
+        "tar": "^7.4.3",
         "terminal-link": "^2.1.1",
         "undici": "^6.18.2",
-        "unique-string": "~2.0.0",
         "wrap-ansi": "^7.0.0",
         "ws": "^8.12.1"
       },
@@ -3886,6 +3885,124 @@
         "expo-internal": "build/bin/cli"
       }
     },
+    "node_modules/@expo/cli/node_modules/@babel/code-frame": {
+      "version": "7.10.4",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+      "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/highlight": "^7.10.4"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/config": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/config/-/config-11.0.3.tgz",
+      "integrity": "sha512-VOb7II8xTqewN7axNKusZDidjkS8R2/wa7yep3fFfBzdyXvy1mTzpeAWDsMY1g77MOB/Byswy0MoP/Mi1cWkww==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "^9.1.2",
+        "deepmerge": "^4.3.1",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "require-from-string": "^2.0.2",
+        "resolve-from": "^5.0.0",
+        "resolve-workspace-root": "^2.0.0",
+        "semver": "^7.6.0",
+        "slugify": "^1.3.4",
+        "sucrase": "3.35.0"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/config-plugins": {
+      "version": "9.1.4",
+      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.1.4.tgz",
+      "integrity": "sha512-1KNE6HvPotIlD4AzlrwVlzi4DmuVJWPYAwC6jM6wYpqo2HDCS5fng02Om7JfZgGmXJC1LM0anKDZu2u5gQx3Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "~9.1.2",
+        "@expo/plist": "^0.3.2",
+        "@expo/sdk-runtime-versions": "^1.0.0",
+        "chalk": "^4.1.2",
+        "debug": "^4.3.5",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.5.4",
+        "slash": "^3.0.0",
+        "slugify": "^1.6.6",
+        "xcode": "^3.0.1",
+        "xml2js": "0.6.0"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/config-types": {
+      "version": "53.0.0-preview.3",
+      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-53.0.0-preview.3.tgz",
+      "integrity": "sha512-0/7J4UtaJzf0Lwj++y63K7JEv091RcUk5Q6WWbIzsAOG4yJ7hF8ncJaaGVWYzcTIWHvv7wScLKUTj7jSmy9Kvg==",
+      "license": "MIT"
+    },
+    "node_modules/@expo/cli/node_modules/@expo/env": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/env/-/env-1.0.3.tgz",
+      "integrity": "sha512-94l5HV9FSCMt4dnFykFmcfh94NmajyaoYXY2Z36pTdR5UbgCtR1brAhlvJ/5Ma8eHbzdqvmta+LXA9LHNKpyww==",
+      "license": "MIT",
+      "dependencies": {
+        "chalk": "^4.0.0",
+        "debug": "^4.3.4",
+        "dotenv": "~16.4.5",
+        "dotenv-expand": "~11.0.6",
+        "getenv": "^1.0.0"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/image-utils": {
+      "version": "0.7.2",
+      "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.7.2.tgz",
+      "integrity": "sha512-j5/+1Gfg03WPnzWrbOZ6tl0zuUE33IVRfs8Sl7gZhjtgczbYC8IUXHSA2MsLXTrPlRXzZXBKm3toPjwbZulqlA==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/spawn-async": "^1.7.2",
+        "chalk": "^4.0.0",
+        "getenv": "^1.0.0",
+        "jimp-compact": "0.16.1",
+        "parse-png": "^2.1.0",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.6.0",
+        "temp-dir": "~2.0.0",
+        "unique-string": "~2.0.0"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/json-file": {
+      "version": "9.1.2",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.2.tgz",
+      "integrity": "sha512-J/ncQd3dTXaHddfHCXw5A95yVLD6myp0tfI3BWPYJQdwrhIlL5fm2NVOqCcJIBM/NC0l6J+Lfw/ZCeZZmT70Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "json5": "^2.2.3"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@expo/plist": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.3.2.tgz",
+      "integrity": "sha512-wJ4ifg8AIQN3xEDrAJ7mrd0vSsFP7bFuuJtcXBoE4ORrt3AE+0mSQAAXEjb7eKMsGaxiSZwHqrkqYAzv5Ypidw==",
+      "license": "MIT",
+      "dependencies": {
+        "@xmldom/xmldom": "^0.8.8",
+        "base64-js": "^1.2.3",
+        "xmlbuilder": "^15.1.1"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
     "node_modules/@expo/cli/node_modules/ansi-styles": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
@@ -3932,6 +4049,15 @@
         "url": "https://github.com/chalk/chalk?sponsor=1"
       }
     },
+    "node_modules/@expo/cli/node_modules/chownr": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz",
+      "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==",
+      "license": "BlueOak-1.0.0",
+      "engines": {
+        "node": ">=18"
+      }
+    },
     "node_modules/@expo/cli/node_modules/cli-cursor": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
@@ -3971,20 +4097,6 @@
         "node": ">=0.8.0"
       }
     },
-    "node_modules/@expo/cli/node_modules/fs-extra": {
-      "version": "8.1.0",
-      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
-      "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
-      "license": "MIT",
-      "dependencies": {
-        "graceful-fs": "^4.2.0",
-        "jsonfile": "^4.0.0",
-        "universalify": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=6 <7 || >=8"
-      }
-    },
     "node_modules/@expo/cli/node_modules/glob": {
       "version": "10.4.5",
       "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
@@ -4005,21 +4117,6 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@expo/cli/node_modules/glob/node_modules/minimatch": {
-      "version": "9.0.5",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
-      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
-      "license": "ISC",
-      "dependencies": {
-        "brace-expansion": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
     "node_modules/@expo/cli/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -4029,15 +4126,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/@expo/cli/node_modules/jsonfile": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
-      "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
-      "license": "MIT",
-      "optionalDependencies": {
-        "graceful-fs": "^4.1.6"
-      }
-    },
     "node_modules/@expo/cli/node_modules/log-symbols": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
@@ -4121,6 +4209,21 @@
         "node": ">=4"
       }
     },
+    "node_modules/@expo/cli/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "license": "ISC",
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
     "node_modules/@expo/cli/node_modules/minipass": {
       "version": "7.1.2",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
@@ -4130,6 +4233,33 @@
         "node": ">=16 || 14 >=14.17"
       }
     },
+    "node_modules/@expo/cli/node_modules/minizlib": {
+      "version": "3.0.2",
+      "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz",
+      "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==",
+      "license": "MIT",
+      "dependencies": {
+        "minipass": "^7.1.2"
+      },
+      "engines": {
+        "node": ">= 18"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/mkdirp": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz",
+      "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
+      "license": "MIT",
+      "bin": {
+        "mkdirp": "dist/cjs/src/bin.js"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
     "node_modules/@expo/cli/node_modules/onetime": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
@@ -4282,13 +4412,39 @@
         "node": ">=8"
       }
     },
-    "node_modules/@expo/cli/node_modules/universalify": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
-      "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+    "node_modules/@expo/cli/node_modules/tar": {
+      "version": "7.4.3",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz",
+      "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==",
+      "license": "ISC",
+      "dependencies": {
+        "@isaacs/fs-minipass": "^4.0.0",
+        "chownr": "^3.0.0",
+        "minipass": "^7.1.2",
+        "minizlib": "^3.0.1",
+        "mkdirp": "^3.0.1",
+        "yallist": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
       "license": "MIT",
       "engines": {
-        "node": ">= 4.0.0"
+        "node": ">=8.0"
+      }
+    },
+    "node_modules/@expo/cli/node_modules/yallist": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz",
+      "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==",
+      "license": "BlueOak-1.0.0",
+      "engines": {
+        "node": ">=18"
       }
     },
     "node_modules/@expo/code-signing-certificates": {
@@ -4302,15 +4458,15 @@
       }
     },
     "node_modules/@expo/config": {
-      "version": "10.0.11",
-      "resolved": "https://registry.npmjs.org/@expo/config/-/config-10.0.11.tgz",
-      "integrity": "sha512-nociJ4zr/NmbVfMNe9j/+zRlt7wz/siISu7PjdWE4WE+elEGxWWxsGzltdJG0llzrM+khx8qUiFK5aiVcdMBww==",
+      "version": "11.0.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/config/-/config-11.0.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-y+ZT6gj5CTJpB/fgw7Ucw4qHn+ihn3VTl1hlkMycBxoBRTBWQ7PI/uH7UDkUakmMkpPXLnNETUHrujYSxMkFqg==",
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "~7.10.4",
-        "@expo/config-plugins": "~9.0.17",
-        "@expo/config-types": "^52.0.5",
-        "@expo/json-file": "^9.0.2",
+        "@expo/config-plugins": "9.1.1-canary-20250408-7f0ab53",
+        "@expo/config-types": "53.0.0-canary-20250408-7f0ab53",
+        "@expo/json-file": "9.1.1-canary-20250408-7f0ab53",
         "deepmerge": "^4.3.1",
         "getenv": "^1.0.0",
         "glob": "^10.4.2",
@@ -4323,14 +4479,14 @@
       }
     },
     "node_modules/@expo/config-plugins": {
-      "version": "9.0.17",
-      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.0.17.tgz",
-      "integrity": "sha512-m24F1COquwOm7PBl5wRbkT9P9DviCXe0D7S7nQsolfbhdCWuvMkfXeoWmgjtdhy7sDlOyIgBrAdnB6MfsWKqIg==",
+      "version": "9.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-rh6rUxOff8s8qafSJ2h+bNFmBrycgZfspmzuphIevuvOGIMam0tFXTGhnBe1YrJ/8X7POeQG20iGOKwrFN/7Qg==",
       "license": "MIT",
       "dependencies": {
-        "@expo/config-types": "^52.0.5",
-        "@expo/json-file": "~9.0.2",
-        "@expo/plist": "^0.2.2",
+        "@expo/config-types": "53.0.0-canary-20250408-7f0ab53",
+        "@expo/json-file": "9.1.1-canary-20250408-7f0ab53",
+        "@expo/plist": "0.3.1-canary-20250408-7f0ab53",
         "@expo/sdk-runtime-versions": "^1.0.0",
         "chalk": "^4.1.2",
         "debug": "^4.3.5",
@@ -4480,9 +4636,9 @@
       }
     },
     "node_modules/@expo/config-types": {
-      "version": "52.0.5",
-      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-52.0.5.tgz",
-      "integrity": "sha512-AMDeuDLHXXqd8W+0zSjIt7f37vUd/BP8p43k68NHpyAvQO+z8mbQZm3cNQVAMySeayK2XoPigAFB1JF2NFajaA==",
+      "version": "53.0.0-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-53.0.0-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-566feytlw7b6TdkOsFNyAw3eNE/mVArnE8BbcVCCc1EY4K2ob4oDqG7cJe+KDLV18k+kGf4ZwgxBwmMfUk74Vw==",
       "license": "MIT"
     },
     "node_modules/@expo/config/node_modules/@babel/code-frame": {
@@ -4548,9 +4704,9 @@
       }
     },
     "node_modules/@expo/config/node_modules/semver": {
-      "version": "7.6.3",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
-      "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+      "version": "7.7.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+      "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
       "license": "ISC",
       "bin": {
         "semver": "bin/semver.js"
@@ -4560,23 +4716,14 @@
       }
     },
     "node_modules/@expo/devcert": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/@expo/devcert/-/devcert-1.1.4.tgz",
-      "integrity": "sha512-fqBODr8c72+gBSX5Ty3SIzaY4bXainlpab78+vEYEKL3fXmsOswMLf0+KE36mUEAa36BYabX7K3EiXOXX5OPMw==",
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@expo/devcert/-/devcert-1.2.0.tgz",
+      "integrity": "sha512-Uilcv3xGELD5t/b0eM4cxBFEKQRIivB3v7i+VhWLV/gL98aw810unLKKJbGAxAIhY6Ipyz8ChWibFsKFXYwstA==",
       "license": "MIT",
       "dependencies": {
-        "application-config-path": "^0.1.0",
-        "command-exists": "^1.2.4",
+        "@expo/sudo-prompt": "^9.3.1",
         "debug": "^3.1.0",
-        "eol": "^0.9.1",
-        "get-port": "^3.2.0",
-        "glob": "^10.4.2",
-        "lodash": "^4.17.21",
-        "mkdirp": "^0.5.1",
-        "password-prompt": "^1.0.4",
-        "sudo-prompt": "^8.2.0",
-        "tmp": "^0.0.33",
-        "tslib": "^2.4.0"
+        "glob": "^10.4.2"
       }
     },
     "node_modules/@expo/devcert/node_modules/brace-expansion": {
@@ -4641,41 +4788,10 @@
         "node": ">=16 || 14 >=14.17"
       }
     },
-    "node_modules/@expo/devcert/node_modules/mkdirp": {
-      "version": "0.5.6",
-      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
-      "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
-      "license": "MIT",
-      "dependencies": {
-        "minimist": "^1.2.6"
-      },
-      "bin": {
-        "mkdirp": "bin/cmd.js"
-      }
-    },
-    "node_modules/@expo/devcert/node_modules/sudo-prompt": {
-      "version": "8.2.5",
-      "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-8.2.5.tgz",
-      "integrity": "sha512-rlBo3HU/1zAJUrkY6jNxDOC9eVYliG6nS4JA8u8KAshITd07tafMc/Br7xQwCSseXwJ2iCcHCE8SNWX3q8Z+kw==",
-      "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
-      "license": "MIT"
-    },
-    "node_modules/@expo/devcert/node_modules/tmp": {
-      "version": "0.0.33",
-      "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
-      "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
-      "license": "MIT",
-      "dependencies": {
-        "os-tmpdir": "~1.0.2"
-      },
-      "engines": {
-        "node": ">=0.6.0"
-      }
-    },
     "node_modules/@expo/env": {
-      "version": "0.4.2",
-      "resolved": "https://registry.npmjs.org/@expo/env/-/env-0.4.2.tgz",
-      "integrity": "sha512-TgbCgvSk0Kq0e2fLoqHwEBL4M0ztFjnBEz0YCDm5boc1nvkV1VMuIMteVdeBwnTh8Z0oPJTwHCD49vhMEt1I6A==",
+      "version": "1.0.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/env/-/env-1.0.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-ItMUt6qIYf8Hk1qIfUGqUqX3xZHbGzhAZ6RyHBV3SQdsJNMhV2vQLfQ/7hOU0i36n3dlLutvubHOXaX/eW3wrw==",
       "license": "MIT",
       "dependencies": {
         "chalk": "^4.0.0",
@@ -4756,9 +4872,9 @@
       }
     },
     "node_modules/@expo/fingerprint": {
-      "version": "0.11.11",
-      "resolved": "https://registry.npmjs.org/@expo/fingerprint/-/fingerprint-0.11.11.tgz",
-      "integrity": "sha512-gNyn1KnAOpEa8gSNsYqXMTcq0fSwqU/vit6fP5863vLSKxHm/dNt/gm/uZJxrRZxKq71KUJWF6I7d3z8qIfq5g==",
+      "version": "0.12.2",
+      "resolved": "https://registry.npmjs.org/@expo/fingerprint/-/fingerprint-0.12.2.tgz",
+      "integrity": "sha512-UUTQdu1NYRd1pBeHidom0aB3oUrORlqCVRf4wSm9wbTv7KRIhkJoxI8oKRkUHUXyxcVv8de6ybrADoc5aGFQ1w==",
       "license": "MIT",
       "dependencies": {
         "@expo/spawn-async": "^1.7.2",
@@ -4767,7 +4883,7 @@
         "debug": "^4.3.4",
         "find-up": "^5.0.0",
         "getenv": "^1.0.0",
-        "minimatch": "^3.0.4",
+        "minimatch": "^9.0.0",
         "p-limit": "^3.1.0",
         "resolve-from": "^5.0.0",
         "semver": "^7.6.0"
@@ -4797,6 +4913,15 @@
       "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
       "license": "MIT"
     },
+    "node_modules/@expo/fingerprint/node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "license": "MIT",
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
     "node_modules/@expo/fingerprint/node_modules/chalk": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
@@ -4840,6 +4965,21 @@
         "node": ">=8"
       }
     },
+    "node_modules/@expo/fingerprint/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "license": "ISC",
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
     "node_modules/@expo/fingerprint/node_modules/semver": {
       "version": "7.7.1",
       "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
@@ -4865,14 +5005,13 @@
       }
     },
     "node_modules/@expo/image-utils": {
-      "version": "0.6.5",
-      "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.6.5.tgz",
-      "integrity": "sha512-RsS/1CwJYzccvlprYktD42KjyfWZECH6PPIEowvoSmXfGLfdViwcUEI4RvBfKX5Jli6P67H+6YmHvPTbGOboew==",
+      "version": "0.7.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.7.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-JQ7XAnrZv+mvljuPQPyVGNu3HUWfrqhbmUvkBS0xgWJbxpJ9BOsWrS/gX9heSULdenqOZc8EhXdtij70GAyPbw==",
       "license": "MIT",
       "dependencies": {
         "@expo/spawn-async": "^1.7.2",
         "chalk": "^4.0.0",
-        "fs-extra": "9.0.0",
         "getenv": "^1.0.0",
         "jimp-compact": "0.16.1",
         "parse-png": "^2.1.0",
@@ -4931,21 +5070,6 @@
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
       "license": "MIT"
     },
-    "node_modules/@expo/image-utils/node_modules/fs-extra": {
-      "version": "9.0.0",
-      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz",
-      "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==",
-      "license": "MIT",
-      "dependencies": {
-        "at-least-node": "^1.0.0",
-        "graceful-fs": "^4.2.0",
-        "jsonfile": "^6.0.1",
-        "universalify": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
     "node_modules/@expo/image-utils/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -4979,24 +5103,14 @@
         "node": ">=8"
       }
     },
-    "node_modules/@expo/image-utils/node_modules/universalify": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz",
-      "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==",
-      "license": "MIT",
-      "engines": {
-        "node": ">= 10.0.0"
-      }
-    },
     "node_modules/@expo/json-file": {
-      "version": "9.0.2",
-      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.0.2.tgz",
-      "integrity": "sha512-yAznIUrybOIWp3Uax7yRflB0xsEpvIwIEqIjao9SGi2Gaa+N0OamWfe0fnXBSWF+2zzF4VvqwT4W5zwelchfgw==",
+      "version": "9.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-L2cgQVUPs62gRwpixwbAxeHAnHgIiLTXP2F96taLVY0mXrqkDiDZ1ASOSylZR0pzj3xFkuUnDvOG5KjyQoFFdg==",
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "~7.10.4",
-        "json5": "^2.2.3",
-        "write-file-atomic": "^2.3.0"
+        "json5": "^2.2.3"
       }
     },
     "node_modules/@expo/json-file/node_modules/@babel/code-frame": {
@@ -5009,31 +5123,131 @@
       }
     },
     "node_modules/@expo/metro-config": {
-      "version": "0.19.12",
-      "resolved": "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.19.12.tgz",
-      "integrity": "sha512-fhT3x1ikQWHpZgw7VrEghBdscFPz1laRYa8WcVRB18nTTqorF6S8qPYslkJu1faEziHZS7c2uyDzTYnrg/CKbg==",
+      "version": "0.20.4",
+      "resolved": "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.20.4.tgz",
+      "integrity": "sha512-NulhAXqKgHnJayBQ98UEs0QdCeHovCGGPkeJ88drKws++SAKsmTyG7fwtPkujKiVADfxedlzi/qirlwfVQjwmw==",
       "license": "MIT",
       "dependencies": {
         "@babel/core": "^7.20.0",
         "@babel/generator": "^7.20.5",
         "@babel/parser": "^7.20.0",
         "@babel/types": "^7.20.0",
-        "@expo/config": "~10.0.11",
-        "@expo/env": "~0.4.2",
-        "@expo/json-file": "~9.0.2",
+        "@expo/config": "~11.0.3",
+        "@expo/env": "~1.0.3",
+        "@expo/json-file": "~9.1.2",
         "@expo/spawn-async": "^1.7.2",
         "chalk": "^4.1.0",
         "debug": "^4.3.2",
-        "fs-extra": "^9.1.0",
         "getenv": "^1.0.0",
         "glob": "^10.4.2",
         "jsc-safe-url": "^0.2.4",
         "lightningcss": "~1.27.0",
-        "minimatch": "^3.0.4",
+        "minimatch": "^9.0.0",
         "postcss": "~8.4.32",
         "resolve-from": "^5.0.0"
       }
     },
+    "node_modules/@expo/metro-config/node_modules/@babel/code-frame": {
+      "version": "7.10.4",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+      "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/highlight": "^7.10.4"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/config": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/config/-/config-11.0.3.tgz",
+      "integrity": "sha512-VOb7II8xTqewN7axNKusZDidjkS8R2/wa7yep3fFfBzdyXvy1mTzpeAWDsMY1g77MOB/Byswy0MoP/Mi1cWkww==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "^9.1.2",
+        "deepmerge": "^4.3.1",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "require-from-string": "^2.0.2",
+        "resolve-from": "^5.0.0",
+        "resolve-workspace-root": "^2.0.0",
+        "semver": "^7.6.0",
+        "slugify": "^1.3.4",
+        "sucrase": "3.35.0"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/config-plugins": {
+      "version": "9.1.4",
+      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.1.4.tgz",
+      "integrity": "sha512-1KNE6HvPotIlD4AzlrwVlzi4DmuVJWPYAwC6jM6wYpqo2HDCS5fng02Om7JfZgGmXJC1LM0anKDZu2u5gQx3Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "~9.1.2",
+        "@expo/plist": "^0.3.2",
+        "@expo/sdk-runtime-versions": "^1.0.0",
+        "chalk": "^4.1.2",
+        "debug": "^4.3.5",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.5.4",
+        "slash": "^3.0.0",
+        "slugify": "^1.6.6",
+        "xcode": "^3.0.1",
+        "xml2js": "0.6.0"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/config-types": {
+      "version": "53.0.0-preview.3",
+      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-53.0.0-preview.3.tgz",
+      "integrity": "sha512-0/7J4UtaJzf0Lwj++y63K7JEv091RcUk5Q6WWbIzsAOG4yJ7hF8ncJaaGVWYzcTIWHvv7wScLKUTj7jSmy9Kvg==",
+      "license": "MIT"
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/env": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/env/-/env-1.0.3.tgz",
+      "integrity": "sha512-94l5HV9FSCMt4dnFykFmcfh94NmajyaoYXY2Z36pTdR5UbgCtR1brAhlvJ/5Ma8eHbzdqvmta+LXA9LHNKpyww==",
+      "license": "MIT",
+      "dependencies": {
+        "chalk": "^4.0.0",
+        "debug": "^4.3.4",
+        "dotenv": "~16.4.5",
+        "dotenv-expand": "~11.0.6",
+        "getenv": "^1.0.0"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/json-file": {
+      "version": "9.1.2",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.2.tgz",
+      "integrity": "sha512-J/ncQd3dTXaHddfHCXw5A95yVLD6myp0tfI3BWPYJQdwrhIlL5fm2NVOqCcJIBM/NC0l6J+Lfw/ZCeZZmT70Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "json5": "^2.2.3"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@expo/plist": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.3.2.tgz",
+      "integrity": "sha512-wJ4ifg8AIQN3xEDrAJ7mrd0vSsFP7bFuuJtcXBoE4ORrt3AE+0mSQAAXEjb7eKMsGaxiSZwHqrkqYAzv5Ypidw==",
+      "license": "MIT",
+      "dependencies": {
+        "@xmldom/xmldom": "^0.8.8",
+        "base64-js": "^1.2.3",
+        "xmlbuilder": "^15.1.1"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
     "node_modules/@expo/metro-config/node_modules/ansi-styles": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
@@ -5112,7 +5326,16 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@expo/metro-config/node_modules/glob/node_modules/minimatch": {
+    "node_modules/@expo/metro-config/node_modules/has-flag": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/@expo/metro-config/node_modules/minimatch": {
       "version": "9.0.5",
       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
       "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
@@ -5127,15 +5350,6 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@expo/metro-config/node_modules/has-flag": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=8"
-      }
-    },
     "node_modules/@expo/metro-config/node_modules/minipass": {
       "version": "7.1.2",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
@@ -5145,6 +5359,18 @@
         "node": ">=16 || 14 >=14.17"
       }
     },
+    "node_modules/@expo/metro-config/node_modules/semver": {
+      "version": "7.7.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+      "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
+      "license": "ISC",
+      "bin": {
+        "semver": "bin/semver.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
     "node_modules/@expo/metro-config/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -5157,19 +5383,28 @@
         "node": ">=8"
       }
     },
+    "node_modules/@expo/metro-config/node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8.0"
+      }
+    },
     "node_modules/@expo/metro-runtime": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/@expo/metro-runtime/-/metro-runtime-4.0.1.tgz",
-      "integrity": "sha512-CRpbLvdJ1T42S+lrYa1iZp1KfDeBp4oeZOK3hdpiS5n0vR0nhD6sC1gGF0sTboCTp64tLteikz5Y3j53dvgOIw==",
+      "version": "5.0.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/metro-runtime/-/metro-runtime-5.0.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-SLvpyG5545nXeEhPwQDK7WFesnvKJjiLHXqUoMn/XnsiIrvP7rxuwTaY+krkbzAHprCd7sv9s8TwAU9hTkkGsQ==",
       "license": "MIT",
       "peerDependencies": {
         "react-native": "*"
       }
     },
     "node_modules/@expo/osascript": {
-      "version": "2.1.6",
-      "resolved": "https://registry.npmjs.org/@expo/osascript/-/osascript-2.1.6.tgz",
-      "integrity": "sha512-SbMp4BUwDAKiFF4zZEJf32rRYMeNnLK9u4FaPo0lQRer60F+SKd20NTSys0wgssiVeQyQz2OhGLRx3cxYowAGw==",
+      "version": "2.2.2",
+      "resolved": "https://registry.npmjs.org/@expo/osascript/-/osascript-2.2.2.tgz",
+      "integrity": "sha512-hESu/JDywyfeIE1B7K2OM7Yco5bKQuPkv8dPklGHFTbCoWJ6+uu4Xtn5RmXCXa52maWyiFGYnMBg/ZNLdJE0fw==",
       "license": "MIT",
       "dependencies": {
         "@expo/spawn-async": "^1.7.2",
@@ -5180,32 +5415,36 @@
       }
     },
     "node_modules/@expo/package-manager": {
-      "version": "1.7.2",
-      "resolved": "https://registry.npmjs.org/@expo/package-manager/-/package-manager-1.7.2.tgz",
-      "integrity": "sha512-wT/qh9ebNjl6xr00bYkSh93b6E/78J3JPlT6WzGbxbsnv5FIZKB/nr522oWqVe1E+ML7BpXs8WugErWDN9kOFg==",
+      "version": "1.8.2",
+      "resolved": "https://registry.npmjs.org/@expo/package-manager/-/package-manager-1.8.2.tgz",
+      "integrity": "sha512-Cn/E8dMYQ4V1/rUNUvq7zxcypby/XMMw6Sb6mJc0sm9EANCO6L8QKWXud5Ns/0032z1yHwG8CjGI29f7vvRliA==",
       "license": "MIT",
       "dependencies": {
-        "@expo/json-file": "^9.0.2",
+        "@expo/json-file": "^9.1.2",
         "@expo/spawn-async": "^1.7.2",
-        "ansi-regex": "^5.0.0",
         "chalk": "^4.0.0",
-        "find-up": "^5.0.0",
-        "js-yaml": "^3.13.1",
-        "micromatch": "^4.0.8",
         "npm-package-arg": "^11.0.0",
         "ora": "^3.4.0",
-        "resolve-workspace-root": "^2.0.0",
-        "split": "^1.0.1",
-        "sudo-prompt": "9.1.1"
+        "resolve-workspace-root": "^2.0.0"
       }
     },
-    "node_modules/@expo/package-manager/node_modules/ansi-regex": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
-      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+    "node_modules/@expo/package-manager/node_modules/@babel/code-frame": {
+      "version": "7.10.4",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+      "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
       "license": "MIT",
-      "engines": {
-        "node": ">=8"
+      "dependencies": {
+        "@babel/highlight": "^7.10.4"
+      }
+    },
+    "node_modules/@expo/package-manager/node_modules/@expo/json-file": {
+      "version": "9.1.2",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.2.tgz",
+      "integrity": "sha512-J/ncQd3dTXaHddfHCXw5A95yVLD6myp0tfI3BWPYJQdwrhIlL5fm2NVOqCcJIBM/NC0l6J+Lfw/ZCeZZmT70Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "json5": "^2.2.3"
       }
     },
     "node_modules/@expo/package-manager/node_modules/ansi-styles": {
@@ -5486,22 +5725,6 @@
         "node": ">=6"
       }
     },
-    "node_modules/@expo/package-manager/node_modules/strip-ansi/node_modules/ansi-regex": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
-      "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/@expo/package-manager/node_modules/sudo-prompt": {
-      "version": "9.1.1",
-      "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.1.1.tgz",
-      "integrity": "sha512-es33J1g2HjMpyAhz8lOR+ICmXXAqTuKbuXuUWLhOLew20oN9oUCgCJx615U/v7aioZg7IX5lIh9x34vwneu4pA==",
-      "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
-      "license": "MIT"
-    },
     "node_modules/@expo/package-manager/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -5515,41 +5738,274 @@
       }
     },
     "node_modules/@expo/plist": {
-      "version": "0.2.2",
-      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.2.2.tgz",
-      "integrity": "sha512-ZZGvTO6vEWq02UAPs3LIdja+HRO18+LRI5QuDl6Hs3Ps7KX7xU6Y6kjahWKY37Rx2YjNpX07dGpBFzzC+vKa2g==",
+      "version": "0.3.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.3.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-7Y8+z+H2V6gmcNe7zPW9Fzrkec18J2zcBlvvuqjJ3ASSkV/ifpzsWttSwtDBhq9gkiZob4krJAFqIPV6r137jg==",
       "license": "MIT",
       "dependencies": {
-        "@xmldom/xmldom": "~0.7.7",
+        "@xmldom/xmldom": "^0.8.8",
         "base64-js": "^1.2.3",
-        "xmlbuilder": "^14.0.0"
+        "xmlbuilder": "^15.1.1"
+      }
+    },
+    "node_modules/@expo/plist/node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/@expo/plist/node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8.0"
       }
     },
     "node_modules/@expo/prebuild-config": {
-      "version": "8.0.30",
-      "resolved": "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-8.0.30.tgz",
-      "integrity": "sha512-xNHWGh0xLZjxBXwVbDW+TPeexuQ95FZX2ZRrzJkALxhQiwYQswQSFE7CVUFMC2USIKVklCcgfEvtqnguTBQVxQ==",
+      "version": "9.0.0",
+      "resolved": "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-9.0.0.tgz",
+      "integrity": "sha512-39OPxvEhzU5JsXkbzg8mE4fueWHySqVQ2n5Ay2RBWfaqpGKeMv/vJ63cZYYEyb60Dd4al3FrHStGkdJ0W/Jh+A==",
       "license": "MIT",
       "dependencies": {
-        "@expo/config": "~10.0.11",
-        "@expo/config-plugins": "~9.0.17",
-        "@expo/config-types": "^52.0.5",
-        "@expo/image-utils": "^0.6.5",
-        "@expo/json-file": "^9.0.2",
-        "@react-native/normalize-colors": "0.76.8",
+        "@expo/config": "~11.0.3",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/image-utils": "^0.7.2",
+        "@expo/json-file": "^9.1.2",
+        "@react-native/normalize-colors": "0.79.0",
         "debug": "^4.3.1",
-        "fs-extra": "^9.0.0",
         "resolve-from": "^5.0.0",
         "semver": "^7.6.0",
         "xml2js": "0.6.0"
       }
     },
+    "node_modules/@expo/prebuild-config/node_modules/@babel/code-frame": {
+      "version": "7.10.4",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+      "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/highlight": "^7.10.4"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/config": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/config/-/config-11.0.3.tgz",
+      "integrity": "sha512-VOb7II8xTqewN7axNKusZDidjkS8R2/wa7yep3fFfBzdyXvy1mTzpeAWDsMY1g77MOB/Byswy0MoP/Mi1cWkww==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "^9.1.2",
+        "deepmerge": "^4.3.1",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "require-from-string": "^2.0.2",
+        "resolve-from": "^5.0.0",
+        "resolve-workspace-root": "^2.0.0",
+        "semver": "^7.6.0",
+        "slugify": "^1.3.4",
+        "sucrase": "3.35.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/config-plugins": {
+      "version": "9.1.4",
+      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.1.4.tgz",
+      "integrity": "sha512-1KNE6HvPotIlD4AzlrwVlzi4DmuVJWPYAwC6jM6wYpqo2HDCS5fng02Om7JfZgGmXJC1LM0anKDZu2u5gQx3Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "~9.1.2",
+        "@expo/plist": "^0.3.2",
+        "@expo/sdk-runtime-versions": "^1.0.0",
+        "chalk": "^4.1.2",
+        "debug": "^4.3.5",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.5.4",
+        "slash": "^3.0.0",
+        "slugify": "^1.6.6",
+        "xcode": "^3.0.1",
+        "xml2js": "0.6.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/config-types": {
+      "version": "53.0.0-preview.3",
+      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-53.0.0-preview.3.tgz",
+      "integrity": "sha512-0/7J4UtaJzf0Lwj++y63K7JEv091RcUk5Q6WWbIzsAOG4yJ7hF8ncJaaGVWYzcTIWHvv7wScLKUTj7jSmy9Kvg==",
+      "license": "MIT"
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/image-utils": {
+      "version": "0.7.2",
+      "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.7.2.tgz",
+      "integrity": "sha512-j5/+1Gfg03WPnzWrbOZ6tl0zuUE33IVRfs8Sl7gZhjtgczbYC8IUXHSA2MsLXTrPlRXzZXBKm3toPjwbZulqlA==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/spawn-async": "^1.7.2",
+        "chalk": "^4.0.0",
+        "getenv": "^1.0.0",
+        "jimp-compact": "0.16.1",
+        "parse-png": "^2.1.0",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.6.0",
+        "temp-dir": "~2.0.0",
+        "unique-string": "~2.0.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/json-file": {
+      "version": "9.1.2",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.2.tgz",
+      "integrity": "sha512-J/ncQd3dTXaHddfHCXw5A95yVLD6myp0tfI3BWPYJQdwrhIlL5fm2NVOqCcJIBM/NC0l6J+Lfw/ZCeZZmT70Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "json5": "^2.2.3"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/@expo/plist": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.3.2.tgz",
+      "integrity": "sha512-wJ4ifg8AIQN3xEDrAJ7mrd0vSsFP7bFuuJtcXBoE4ORrt3AE+0mSQAAXEjb7eKMsGaxiSZwHqrkqYAzv5Ypidw==",
+      "license": "MIT",
+      "dependencies": {
+        "@xmldom/xmldom": "^0.8.8",
+        "base64-js": "^1.2.3",
+        "xmlbuilder": "^15.1.1"
+      }
+    },
     "node_modules/@expo/prebuild-config/node_modules/@react-native/normalize-colors": {
-      "version": "0.76.8",
-      "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.76.8.tgz",
-      "integrity": "sha512-FRjRvs7RgsXjkbGSOjYSxhX5V70c0IzA/jy3HXeYpATMwD9fOR1DbveLW497QGsVdCa0vThbJUtR8rIzAfpHQA==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.79.0.tgz",
+      "integrity": "sha512-RmM7Dgb69a4qwdguKR+8MhT0u1IAKa/s0uy8/7JP9b/fm8zjUV9HctMgRgIpZTOELsowEyQodyTnhHQf4HPX0A==",
       "license": "MIT"
     },
+    "node_modules/@expo/prebuild-config/node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/ansi-styles": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+      "license": "MIT",
+      "dependencies": {
+        "color-convert": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "license": "MIT",
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/chalk": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+      "license": "MIT",
+      "dependencies": {
+        "ansi-styles": "^4.1.0",
+        "supports-color": "^7.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/chalk?sponsor=1"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/color-convert": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+      "license": "MIT",
+      "dependencies": {
+        "color-name": "~1.1.4"
+      },
+      "engines": {
+        "node": ">=7.0.0"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/color-name": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+      "license": "MIT"
+    },
+    "node_modules/@expo/prebuild-config/node_modules/glob": {
+      "version": "10.4.5",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+      "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+      "license": "ISC",
+      "dependencies": {
+        "foreground-child": "^3.1.0",
+        "jackspeak": "^3.1.2",
+        "minimatch": "^9.0.4",
+        "minipass": "^7.1.2",
+        "package-json-from-dist": "^1.0.0",
+        "path-scurry": "^1.11.1"
+      },
+      "bin": {
+        "glob": "dist/esm/bin.mjs"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/has-flag": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "license": "ISC",
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/minipass": {
+      "version": "7.1.2",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
+      "license": "ISC",
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      }
+    },
     "node_modules/@expo/prebuild-config/node_modules/semver": {
       "version": "7.7.1",
       "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
@@ -5562,22 +6018,25 @@
         "node": ">=10"
       }
     },
-    "node_modules/@expo/rudder-sdk-node": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/@expo/rudder-sdk-node/-/rudder-sdk-node-1.1.1.tgz",
-      "integrity": "sha512-uy/hS/awclDJ1S88w9UGpc6Nm9XnNUjzOAAib1A3PVAnGQIwebg8DpFqOthFBTlZxeuV/BKbZ5jmTbtNZkp1WQ==",
+    "node_modules/@expo/prebuild-config/node_modules/supports-color": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
       "license": "MIT",
       "dependencies": {
-        "@expo/bunyan": "^4.0.0",
-        "@segment/loosely-validate-event": "^2.0.0",
-        "fetch-retry": "^4.1.1",
-        "md5": "^2.2.1",
-        "node-fetch": "^2.6.1",
-        "remove-trailing-slash": "^0.1.0",
-        "uuid": "^8.3.2"
+        "has-flag": "^4.0.0"
       },
       "engines": {
-        "node": ">=12"
+        "node": ">=8"
+      }
+    },
+    "node_modules/@expo/prebuild-config/node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8.0"
       }
     },
     "node_modules/@expo/sdk-runtime-versions": {
@@ -5598,6 +6057,12 @@
         "node": ">=12"
       }
     },
+    "node_modules/@expo/sudo-prompt": {
+      "version": "9.3.2",
+      "resolved": "https://registry.npmjs.org/@expo/sudo-prompt/-/sudo-prompt-9.3.2.tgz",
+      "integrity": "sha512-HHQigo3rQWKMDzYDLkubN5WQOYXJJE2eNqIQC2axC2iO3mHdwnIR7FgZVvHWtBwAdzBgAP0ECp8KqS8TiMKvgw==",
+      "license": "MIT"
+    },
     "node_modules/@expo/vector-icons": {
       "version": "14.0.0",
       "license": "MIT"
@@ -5935,14 +6400,14 @@
       "version": "9.3.0",
       "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
       "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause"
     },
     "node_modules/@hapi/topo": {
       "version": "5.1.0",
       "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
       "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause",
       "dependencies": {
         "@hapi/hoek": "^9.0.0"
@@ -6433,7 +6898,6 @@
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz",
       "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==",
-      "dev": true,
       "license": "ISC",
       "dependencies": {
         "minipass": "^7.0.4"
@@ -6446,7 +6910,6 @@
       "version": "7.1.2",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
       "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
-      "dev": true,
       "license": "ISC",
       "engines": {
         "node": ">=16 || 14 >=14.17"
@@ -7246,6 +7709,8 @@
     },
     "node_modules/@jsamr/react-native-li": {
       "version": "2.3.1",
+      "resolved": "https://registry.npmjs.org/@jsamr/react-native-li/-/react-native-li-2.3.1.tgz",
+      "integrity": "sha512-Qbo4NEj48SQ4k8FZJHFE2fgZDKTWaUGmVxcIQh3msg5JezLdTMMHuRRDYctfdHI6L0FZGObmEv3haWbIvmol8w==",
       "license": "MIT",
       "peerDependencies": {
         "@jsamr/counter-style": "^1.0.0 || ^2.0.0",
@@ -7566,6 +8031,8 @@
     },
     "node_modules/@native-html/css-processor": {
       "version": "1.11.0",
+      "resolved": "https://registry.npmjs.org/@native-html/css-processor/-/css-processor-1.11.0.tgz",
+      "integrity": "sha512-NnhBEbJX5M2gBGltPKOetiLlKhNf3OHdRafc8//e2ZQxXN8JaSW/Hy8cm94pnIckQxwaMKxrtaNT3x4ZcffoNQ==",
       "license": "MIT",
       "dependencies": {
         "css-to-react-native": "^3.0.0",
@@ -7576,6 +8043,32 @@
         "@types/react-native": "*"
       }
     },
+    "node_modules/@native-html/transient-render-engine": {
+      "version": "11.2.2",
+      "resolved": "https://registry.npmjs.org/@native-html/transient-render-engine/-/transient-render-engine-11.2.2.tgz",
+      "integrity": "sha512-z0LgQStGJf4gCIeuD8oJiPbk+sUEQ9FOzHlDWwK+uVam+1Q5mmh6PqblCdTCP3IRGBtPLzMM0VZ9njm1TEvb8Q==",
+      "license": "MIT",
+      "dependencies": {
+        "@native-html/css-processor": "1.11.0",
+        "@types/ramda": "^0.27.44",
+        "csstype": "^3.0.9",
+        "domelementtype": "^2.2.0",
+        "domhandler": "^4.2.2",
+        "domutils": "^2.8.0",
+        "htmlparser2": "^7.1.2",
+        "ramda": "^0.27.1"
+      },
+      "peerDependencies": {
+        "@types/react-native": "*",
+        "react-native": "^*"
+      }
+    },
+    "node_modules/@native-html/transient-render-engine/node_modules/ramda": {
+      "version": "0.27.2",
+      "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz",
+      "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==",
+      "license": "MIT"
+    },
     "node_modules/@ngneat/falso": {
       "version": "7.1.1",
       "dev": true,
@@ -7595,6 +8088,7 @@
     },
     "node_modules/@nodelib/fs.scandir": {
       "version": "2.1.5",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "@nodelib/fs.stat": "2.0.5",
@@ -7606,6 +8100,7 @@
     },
     "node_modules/@nodelib/fs.stat": {
       "version": "2.0.5",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 8"
@@ -7613,6 +8108,7 @@
     },
     "node_modules/@nodelib/fs.walk": {
       "version": "1.2.8",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "@nodelib/fs.scandir": "2.1.5",
@@ -7622,18 +8118,6 @@
         "node": ">= 8"
       }
     },
-    "node_modules/@npmcli/fs": {
-      "version": "3.1.1",
-      "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz",
-      "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==",
-      "license": "ISC",
-      "dependencies": {
-        "semver": "^7.3.5"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
     "node_modules/@npmcli/move-file": {
       "version": "2.0.1",
       "dev": true,
@@ -8099,19 +8583,18 @@
       }
     },
     "node_modules/@react-native-community/cli": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-15.0.1.tgz",
-      "integrity": "sha512-xIGPytx2bj5HxFk0c7S25AVuJowHmEFg5LFC9XosKc0TSOjP1r6zGC6OqC/arQV/pNuqmZN2IFnpgJn0Bn+hhQ==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-18.0.0.tgz",
+      "integrity": "sha512-DyKptlG78XPFo7tDod+we5a3R+U9qjyhaVFbOPvH4pFNu5Dehewtol/srl44K6Cszq0aEMlAJZ3juk0W4WnOJA==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-clean": "15.0.1",
-        "@react-native-community/cli-config": "15.0.1",
-        "@react-native-community/cli-debugger-ui": "15.0.1",
-        "@react-native-community/cli-doctor": "15.0.1",
-        "@react-native-community/cli-server-api": "15.0.1",
-        "@react-native-community/cli-tools": "15.0.1",
-        "@react-native-community/cli-types": "15.0.1",
+        "@react-native-community/cli-clean": "18.0.0",
+        "@react-native-community/cli-config": "18.0.0",
+        "@react-native-community/cli-doctor": "18.0.0",
+        "@react-native-community/cli-server-api": "18.0.0",
+        "@react-native-community/cli-tools": "18.0.0",
+        "@react-native-community/cli-types": "18.0.0",
         "chalk": "^4.1.2",
         "commander": "^9.4.1",
         "deepmerge": "^4.3.0",
@@ -8130,13 +8613,13 @@
       }
     },
     "node_modules/@react-native-community/cli-clean": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-clean/-/cli-clean-15.0.1.tgz",
-      "integrity": "sha512-flGTfT005UZvW2LAXVowZ/7ri22oiiZE4pPgMvc8klRxO5uofKIRuohgiHybHtiCo/HNqIz45JmZJvuFrhc4Ow==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-clean/-/cli-clean-18.0.0.tgz",
+      "integrity": "sha512-+k64EnJaMI5U8iNDF9AftHBJW+pO/isAhncEXuKRc6IjRtIh6yoaUIIf5+C98fgjfux7CNRZAMQIkPbZodv2Gw==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "execa": "^5.0.0",
         "fast-glob": "^3.3.2"
@@ -8146,7 +8629,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8162,7 +8645,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8179,7 +8662,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8192,14 +8675,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-clean/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -8209,7 +8692,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8219,13 +8702,13 @@
       }
     },
     "node_modules/@react-native-community/cli-config": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-config/-/cli-config-15.0.1.tgz",
-      "integrity": "sha512-SL3/9zIyzQQPKWei0+W1gNHxCPurrxqpODUWnVLoP38DNcvYCGtsRayw/4DsXgprZfBC+FsscNpd3IDJrG59XA==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-config/-/cli-config-18.0.0.tgz",
+      "integrity": "sha512-GUGvyek06JRF4mfd9zXao9YQW4+H8ny69HznqNXVRtVSIIekFyjOpKQeSEzdcyqJEEa5gej22GOz1JCHMKBccg==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "cosmiconfig": "^9.0.0",
         "deepmerge": "^4.3.0",
@@ -8366,13 +8849,13 @@
       }
     },
     "node_modules/@react-native-community/cli-config-apple": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-config-apple/-/cli-config-apple-15.0.1.tgz",
-      "integrity": "sha512-GEHUx4NRp9W9or6vygn0TgNeFkcJdNjrtko0vQEJAS4gJdWqP/9LqqwJNlUfaW5jHBN7TKALAMlfRmI12Op3sg==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-config-apple/-/cli-config-apple-18.0.0.tgz",
+      "integrity": "sha512-6edjTt3mlNMFBuB/Xd6u0O7GEkhJiKvQgmcoBH18FsNy5cpiHDwQsG8EWM5cHeINp1gMK845qq9fFsTko6gqyQ==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "execa": "^5.0.0",
         "fast-glob": "^3.3.2"
@@ -8382,7 +8865,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8398,7 +8881,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8415,7 +8898,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8428,14 +8911,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-config-apple/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -8445,7 +8928,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8458,7 +8941,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8474,14 +8957,14 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
       "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
-      "dev": true,
+      "devOptional": true,
       "license": "Python-2.0"
     },
     "node_modules/@react-native-community/cli-config/node_modules/chalk": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8498,7 +8981,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8511,14 +8994,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-config/node_modules/cosmiconfig": {
       "version": "9.0.0",
       "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz",
       "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "env-paths": "^2.2.1",
@@ -8545,7 +9028,7 @@
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -8555,7 +9038,7 @@
       "version": "4.1.0",
       "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
       "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "argparse": "^2.0.1"
@@ -8568,7 +9051,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8577,28 +9060,18 @@
         "node": ">=8"
       }
     },
-    "node_modules/@react-native-community/cli-debugger-ui": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-15.0.1.tgz",
-      "integrity": "sha512-xkT2TLS8zg5r7Vl9l/2f7JVUoFECnVBS+B5ivrSu2PNZhKkr9lRmJFxC9aVLFb5lIxQQKNDvEyiIDNfP7wjJiA==",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "serve-static": "^1.13.1"
-      }
-    },
     "node_modules/@react-native-community/cli-doctor": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-doctor/-/cli-doctor-15.0.1.tgz",
-      "integrity": "sha512-YCu44lZR3zZxJJYVTqYZFz9cT9KBfbKI4q2MnKOvkamt00XY3usooMqfuwBAdvM/yvpx7M5w8kbM/nPyj4YCvQ==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-doctor/-/cli-doctor-18.0.0.tgz",
+      "integrity": "sha512-cD3LJfu2h2QSFmZai+fl7RrORKodd5XHSuB7Y9oF1zkebpRYN720vaUtK+GsepqBOElwKk5gl8uVolJ3j+xm8A==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-config": "15.0.1",
-        "@react-native-community/cli-platform-android": "15.0.1",
-        "@react-native-community/cli-platform-apple": "15.0.1",
-        "@react-native-community/cli-platform-ios": "15.0.1",
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-config": "18.0.0",
+        "@react-native-community/cli-platform-android": "18.0.0",
+        "@react-native-community/cli-platform-apple": "18.0.0",
+        "@react-native-community/cli-platform-ios": "18.0.0",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "command-exists": "^1.2.8",
         "deepmerge": "^4.3.0",
@@ -8607,7 +9080,6 @@
         "node-stream-zip": "^1.9.1",
         "ora": "^5.4.1",
         "semver": "^7.5.2",
-        "strip-ansi": "^5.2.0",
         "wcwidth": "^1.0.1",
         "yaml": "^2.2.1"
       }
@@ -8616,7 +9088,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8632,7 +9104,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8649,7 +9121,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8662,37 +9134,24 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-doctor/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
       }
     },
-    "node_modules/@react-native-community/cli-doctor/node_modules/strip-ansi": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
-      "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "ansi-regex": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
     "node_modules/@react-native-community/cli-doctor/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8702,25 +9161,37 @@
       }
     },
     "node_modules/@react-native-community/cli-platform-android": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-15.0.1.tgz",
-      "integrity": "sha512-QlAMomj6H6TY6pHwjTYMsHDQLP5eLzjAmyW1qb03w/kyS/72elK2bjsklNWJrscFY9TMQLqw7qoAsXf1m5t/dg==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-18.0.0.tgz",
+      "integrity": "sha512-3Y3RleN/des1C3oRS6s6fDvFYKN0KwsLrYFRpVx9vzdDnH1OGyFJOy4DbrruSPtdNiHUpvvHnOOxeLMj0+/tmw==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-config-android": "18.0.0",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "execa": "^5.0.0",
-        "fast-glob": "^3.3.2",
-        "fast-xml-parser": "^4.4.1",
         "logkitty": "^0.7.1"
       }
     },
+    "node_modules/@react-native-community/cli-platform-android/node_modules/@react-native-community/cli-config-android": {
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-config-android/-/cli-config-android-18.0.0.tgz",
+      "integrity": "sha512-pgnhEO2cmOeb+bBFEBZFYjeFjDTqWoV0JTorTiugj9bb4RQRCl8cr35baVlBGhxAuaio3722CsJ9GRF1oHjP8w==",
+      "devOptional": true,
+      "license": "MIT",
+      "dependencies": {
+        "@react-native-community/cli-tools": "18.0.0",
+        "chalk": "^4.1.2",
+        "fast-glob": "^3.3.2",
+        "fast-xml-parser": "^4.4.1"
+      }
+    },
     "node_modules/@react-native-community/cli-platform-android/node_modules/ansi-styles": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8736,7 +9207,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8753,7 +9224,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8766,14 +9237,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-platform-android/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -8783,7 +9254,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8793,14 +9264,14 @@
       }
     },
     "node_modules/@react-native-community/cli-platform-apple": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-apple/-/cli-platform-apple-15.0.1.tgz",
-      "integrity": "sha512-iQj1Dt2fr/Q7X2CQhyhWnece3eLDCark1osfiwpViksOfTH2WdpNS3lIwlFcIKhsieFU7YYwbNuFqQ3tF9Dlvw==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-apple/-/cli-platform-apple-18.0.0.tgz",
+      "integrity": "sha512-zD18gdP5Wr8BSLJ79xtHuPYcg2Vi/nL+WsGsPm7TZjzR5ZU2WbY/tZ+qTGVTQYhQaah+92sU+Dam7gStMrF/fA==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-config-apple": "15.0.1",
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-config-apple": "18.0.0",
+        "@react-native-community/cli-tools": "18.0.0",
         "chalk": "^4.1.2",
         "execa": "^5.0.0",
         "fast-xml-parser": "^4.4.1"
@@ -8810,7 +9281,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -8826,7 +9297,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -8843,7 +9314,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -8856,14 +9327,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli-platform-apple/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -8873,7 +9344,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -8883,28 +9354,29 @@
       }
     },
     "node_modules/@react-native-community/cli-platform-ios": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-15.0.1.tgz",
-      "integrity": "sha512-6pKzXEIgGL20eE1uOn8iSsNBlMzO1LG+pQOk+7mvD172EPhKm/lRzUVDX5gO/2jvsGoNw6VUW0JX1FI2firwqA==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-18.0.0.tgz",
+      "integrity": "sha512-05Nvkkre/4Gao1TYqyP1wGet8td1dAH0CLJKqLNl9Te6ihnrQ8/8OhjIna5xw0iEFr9An8VdLfaPu1Dgv2qAnQ==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-platform-apple": "15.0.1"
+        "@react-native-community/cli-platform-apple": "18.0.0"
       }
     },
     "node_modules/@react-native-community/cli-server-api": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-15.0.1.tgz",
-      "integrity": "sha512-f3rb3t1ELLaMSX5/LWO/IykglBIgiP3+pPnyl8GphHnBpf3bdIcp7fHlHLemvHE06YxT2nANRxRPjy1gNskenA==",
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-18.0.0.tgz",
+      "integrity": "sha512-tdmGV7ZntYmzrXWheZNpAy6dVI2yrsX4sQH+xAzU7lCfKHk6J8GucxedduXnB5qBB4JgSrrbzg2RLNxv5v0S/Q==",
       "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native-community/cli-debugger-ui": "15.0.1",
-        "@react-native-community/cli-tools": "15.0.1",
+        "@react-native-community/cli-tools": "18.0.0",
+        "body-parser": "^1.20.3",
         "compression": "^1.7.1",
         "connect": "^3.6.5",
         "errorhandler": "^1.5.1",
         "nocache": "^3.0.1",
+        "open": "^6.2.0",
         "pretty-format": "^26.6.2",
         "serve-static": "^1.13.1",
         "ws": "^6.2.3"
@@ -9010,6 +9482,29 @@
         "node": ">=8"
       }
     },
+    "node_modules/@react-native-community/cli-server-api/node_modules/is-wsl": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
+      "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==",
+      "devOptional": true,
+      "license": "MIT",
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/@react-native-community/cli-server-api/node_modules/open": {
+      "version": "6.4.0",
+      "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz",
+      "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==",
+      "devOptional": true,
+      "license": "MIT",
+      "dependencies": {
+        "is-wsl": "^1.1.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
     "node_modules/@react-native-community/cli-server-api/node_modules/pretty-format": {
       "version": "26.6.2",
       "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz",
@@ -9047,23 +9542,22 @@
       }
     },
     "node_modules/@react-native-community/cli-tools": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-15.0.1.tgz",
-      "integrity": "sha512-N79A+u/94roanfmNohVcNGu6Xg+0idh63JHZFLC9OJJuZwTifGMLDfSTHZATpR1J7rebozQ5ClcSUePavErnSg==",
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-18.0.0.tgz",
+      "integrity": "sha512-oR6FcDEcSDYos79vZy4+Tj8jgAE0Xf5HEiRXMJFGISYLRx7tvslSaK8SodUOW9TZe2bCZOb5QSvj8zeMpORmxg==",
       "devOptional": true,
       "license": "MIT",
       "dependencies": {
+        "@vscode/sudo-prompt": "^9.0.0",
         "appdirsjs": "^1.2.4",
         "chalk": "^4.1.2",
         "execa": "^5.0.0",
         "find-up": "^5.0.0",
+        "launch-editor": "^2.9.1",
         "mime": "^2.4.1",
-        "open": "^6.2.0",
         "ora": "^5.4.1",
         "prompts": "^2.4.2",
-        "semver": "^7.5.2",
-        "shell-quote": "^1.7.3",
-        "sudo-prompt": "^9.0.0"
+        "semver": "^7.5.2"
       }
     },
     "node_modules/@react-native-community/cli-tools/node_modules/ansi-styles": {
@@ -9129,29 +9623,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/@react-native-community/cli-tools/node_modules/is-wsl": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
-      "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==",
-      "devOptional": true,
-      "license": "MIT",
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/@react-native-community/cli-tools/node_modules/open": {
-      "version": "6.4.0",
-      "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz",
-      "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "is-wsl": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
     "node_modules/@react-native-community/cli-tools/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -9166,10 +9637,10 @@
       }
     },
     "node_modules/@react-native-community/cli-types": {
-      "version": "15.0.1",
-      "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-15.0.1.tgz",
-      "integrity": "sha512-sWiJ62kkGu2mgYni2dsPxOMBzpwTjNsDH1ubY4mqcNEI9Zmzs0vRwwDUEhYqwNGys9+KpBKoZRrT2PAlhO84xA==",
-      "dev": true,
+      "version": "18.0.0",
+      "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-18.0.0.tgz",
+      "integrity": "sha512-J84+4IRXl8WlVdoe1maTD5skYZZO9CbQ6LNXEHx1kaZcFmvPZKfjsaxuyQ+8BsSqZnM2izOw8dEWnAp/Zuwb0w==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "joi": "^17.2.1"
@@ -9179,7 +9650,7 @@
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
       "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-convert": "^2.0.1"
@@ -9195,7 +9666,7 @@
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.1.0",
@@ -9212,7 +9683,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
       "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "color-name": "~1.1.4"
@@ -9225,14 +9696,14 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/@react-native-community/cli/node_modules/commander": {
       "version": "9.5.0",
       "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
       "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==",
-      "dev": true,
+      "devOptional": true,
       "engines": {
         "node": "^12.20.0 || >=14"
       }
@@ -9241,7 +9712,7 @@
       "version": "8.1.0",
       "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
       "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
-      "dev": true,
+      "devOptional": true,
       "dependencies": {
         "graceful-fs": "^4.2.0",
         "jsonfile": "^4.0.0",
@@ -9255,7 +9726,7 @@
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
       "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -9265,7 +9736,7 @@
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
       "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
-      "dev": true,
+      "devOptional": true,
       "optionalDependencies": {
         "graceful-fs": "^4.1.6"
       }
@@ -9274,7 +9745,7 @@
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
       "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -9287,7 +9758,7 @@
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
       "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
-      "dev": true,
+      "devOptional": true,
       "engines": {
         "node": ">= 4.0.0"
       }
@@ -9534,11 +10005,23 @@
     },
     "node_modules/@react-native-community/netinfo": {
       "version": "11.2.1",
+      "resolved": "https://registry.npmjs.org/@react-native-community/netinfo/-/netinfo-11.2.1.tgz",
+      "integrity": "sha512-n9kgmH7vLaU7Cdo8vGfJGGwhrlgppaOSq5zKj9I7H4k5iRM3aNtwURw83mgrc22Ip7nSye2afZV2xDiIyvHttQ==",
       "license": "MIT",
       "peerDependencies": {
         "react-native": ">=0.59"
       }
     },
+    "node_modules/@react-native-documents/picker": {
+      "version": "10.1.1",
+      "resolved": "https://registry.npmjs.org/@react-native-documents/picker/-/picker-10.1.1.tgz",
+      "integrity": "sha512-RijOCQmesOPe4ahtwOag6k6GLhLHf34sMQtAJ4KjLk7ab0kG5Chvcsvd5zixWC4d0tuBnVAtMUOzvn0bp+UtAg==",
+      "license": "MIT",
+      "peerDependencies": {
+        "react": "*",
+        "react-native": "*"
+      }
+    },
     "node_modules/@react-native-firebase/analytics": {
       "version": "12.9.3",
       "license": "Apache-2.0",
@@ -10061,38 +10544,38 @@
       }
     },
     "node_modules/@react-native/assets-registry": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.77.1.tgz",
-      "integrity": "sha512-bAQHOgqGZnF6xdYE9sJrbZ7F65Z25yLi9yWps8vOByKtj0b+f3FJhsU3Mcfy1uWvelpNEGebOLQf+WEPiwGrkw==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.79.0.tgz",
+      "integrity": "sha512-Rwvpu3A05lM1HVlX4klH4UR52JbQPDKc8gi2mst2REZL1KeVgJRJxPPw8d8euVlYcq/s8XI1Ol827JaRtSZBTA==",
       "license": "MIT",
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/@react-native/babel-plugin-codegen": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.77.1.tgz",
-      "integrity": "sha512-NmmAJHMTtA6gjHRE1FvO+Jvbp0ekonANcK2IYOyqK6nLj7hhtdiMlZaUDsRi17SGHYY4X4hj6UH2nm6LfD1RLg==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.79.0.tgz",
+      "integrity": "sha512-7IkObXF0dl5Dv1vGO5rBAB+yx26kqDntqrDvurO1ZjB11oeKiWOuDoWMnouaPZGhUbnswkYwMRLXCpYhDTG4bA==",
       "license": "MIT",
       "dependencies": {
         "@babel/traverse": "^7.25.3",
-        "@react-native/codegen": "0.77.1"
+        "@react-native/codegen": "0.79.0"
       },
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/@react-native/babel-plugin-codegen/node_modules/@babel/traverse": {
-      "version": "7.26.9",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz",
-      "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==",
+      "version": "7.27.0",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
+      "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "^7.26.2",
-        "@babel/generator": "^7.26.9",
-        "@babel/parser": "^7.26.9",
-        "@babel/template": "^7.26.9",
-        "@babel/types": "^7.26.9",
+        "@babel/generator": "^7.27.0",
+        "@babel/parser": "^7.27.0",
+        "@babel/template": "^7.27.0",
+        "@babel/types": "^7.27.0",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
       },
@@ -10101,9 +10584,9 @@
       }
     },
     "node_modules/@react-native/babel-preset": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.77.1.tgz",
-      "integrity": "sha512-7eTOcMaZwvPllzZhT5fjcDNysjP54GtEbdXVxO2u5sPXWYriPL3UKuDIzIdhjxil8GtZs6+UvLNoKTateFt19Q==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.79.0.tgz",
+      "integrity": "sha512-OcizKxBRxte1kZo932G4tpgDgKnDMErie0EkbVK83WaQAvnL0Dd1GWPoYjFmlKtJwh7PM2RZqTsrwqsksrmtRg==",
       "license": "MIT",
       "dependencies": {
         "@babel/core": "^7.25.2",
@@ -10147,7 +10630,7 @@
         "@babel/plugin-transform-typescript": "^7.25.2",
         "@babel/plugin-transform-unicode-regex": "^7.24.7",
         "@babel/template": "^7.25.0",
-        "@react-native/babel-plugin-codegen": "0.77.1",
+        "@react-native/babel-plugin-codegen": "0.79.0",
         "babel-plugin-syntax-hermes-parser": "0.25.1",
         "babel-plugin-transform-flow-enums": "^0.0.2",
         "react-refresh": "^0.14.0"
@@ -10160,16 +10643,14 @@
       }
     },
     "node_modules/@react-native/codegen": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.77.1.tgz",
-      "integrity": "sha512-cCUbkUewMjiK94Z2+Smh+qHkZrBSoXelOMruZGZe7TTCD6ygl6ho7fkfNuKrB2yFzSAjlUfUyLfaumVJGKslWw==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.79.0.tgz",
+      "integrity": "sha512-D8bFlD0HH9SMUI00svdg64hEvLbu4ETeWQDlmEP8WmNbuILjwoLFqbnBmlGn69Tot0DM1PuBd1l1ooIzs8sU7w==",
       "license": "MIT",
       "dependencies": {
-        "@babel/parser": "^7.25.3",
         "glob": "^7.1.1",
         "hermes-parser": "0.25.1",
         "invariant": "^2.2.4",
-        "jscodeshift": "^17.0.0",
         "nullthrows": "^1.1.1",
         "yargs": "^17.6.2"
       },
@@ -10177,70 +10658,36 @@
         "node": ">=18"
       },
       "peerDependencies": {
-        "@babel/preset-env": "^7.1.6"
+        "@babel/core": "*"
       }
     },
     "node_modules/@react-native/community-cli-plugin": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.77.1.tgz",
-      "integrity": "sha512-w2H9ePpUq7eqqtzSUSaYqbNNZoU6pbBONjTIWdztp0lFdnUaLoLUMddt9XhtKFUlnNaSmfetjJSSrsi3JVbO6w==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.79.0.tgz",
+      "integrity": "sha512-pl+aSXxGj3ug80FpMDrArjxUbJWY2ibWiSP3MLKX+Xk7An2GUmFFjCzNVSbs0jzWv8814EG2oI60/GH2RXwE4g==",
       "license": "MIT",
       "dependencies": {
-        "@react-native/dev-middleware": "0.77.1",
-        "@react-native/metro-babel-transformer": "0.77.1",
+        "@react-native/dev-middleware": "0.79.0",
         "chalk": "^4.0.0",
         "debug": "^2.2.0",
         "invariant": "^2.2.4",
-        "metro": "^0.81.0",
-        "metro-config": "^0.81.0",
-        "metro-core": "^0.81.0",
-        "readline": "^1.3.0",
+        "metro": "^0.82.0",
+        "metro-config": "^0.82.0",
+        "metro-core": "^0.82.0",
         "semver": "^7.1.3"
       },
       "engines": {
         "node": ">=18"
       },
       "peerDependencies": {
-        "@react-native-community/cli-server-api": "*"
+        "@react-native-community/cli": "*"
       },
       "peerDependenciesMeta": {
-        "@react-native-community/cli-server-api": {
+        "@react-native-community/cli": {
           "optional": true
         }
       }
     },
-    "node_modules/@react-native/community-cli-plugin/node_modules/@react-native/debugger-frontend": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.77.1.tgz",
-      "integrity": "sha512-wX/f4JRyAc0PqcW3OBQAAw35k4KaTmDKe+/AJuSQLbqDH746awkFprmXRRTAfRc88q++4e6Db4gyK0GVdWNIpQ==",
-      "license": "BSD-3-Clause",
-      "engines": {
-        "node": ">=18"
-      }
-    },
-    "node_modules/@react-native/community-cli-plugin/node_modules/@react-native/dev-middleware": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.77.1.tgz",
-      "integrity": "sha512-DU6EEac57ch5XKflUB6eXepelHZFaKMJvmaZ24kt28AnvBp8rVrdaORe09pThuZdIF2m+j2BXsipU5zCd8BbZw==",
-      "license": "MIT",
-      "dependencies": {
-        "@isaacs/ttlcache": "^1.4.1",
-        "@react-native/debugger-frontend": "0.77.1",
-        "chrome-launcher": "^0.15.2",
-        "chromium-edge-launcher": "^0.2.0",
-        "connect": "^3.6.5",
-        "debug": "^2.2.0",
-        "invariant": "^2.2.4",
-        "nullthrows": "^1.1.1",
-        "open": "^7.0.3",
-        "selfsigned": "^2.4.1",
-        "serve-static": "^1.16.2",
-        "ws": "^6.2.3"
-      },
-      "engines": {
-        "node": ">=18"
-      }
-    },
     "node_modules/@react-native/community-cli-plugin/node_modules/ansi-styles": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
@@ -10299,15 +10746,6 @@
         "ms": "2.0.0"
       }
     },
-    "node_modules/@react-native/community-cli-plugin/node_modules/encodeurl": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
-      "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
-      "license": "MIT",
-      "engines": {
-        "node": ">= 0.8"
-      }
-    },
     "node_modules/@react-native/community-cli-plugin/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -10323,21 +10761,6 @@
       "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
       "license": "MIT"
     },
-    "node_modules/@react-native/community-cli-plugin/node_modules/serve-static": {
-      "version": "1.16.2",
-      "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
-      "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
-      "license": "MIT",
-      "dependencies": {
-        "encodeurl": "~2.0.0",
-        "escape-html": "~1.0.3",
-        "parseurl": "~1.3.3",
-        "send": "0.19.0"
-      },
-      "engines": {
-        "node": ">= 0.8.0"
-      }
-    },
     "node_modules/@react-native/community-cli-plugin/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -10351,22 +10774,22 @@
       }
     },
     "node_modules/@react-native/debugger-frontend": {
-      "version": "0.76.7",
-      "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.76.7.tgz",
-      "integrity": "sha512-89ZtZXt7ZxE94i7T94qzZMhp4Gfcpr/QVpGqEaejAxZD+gvDCH21cYSF+/Rz2ttBazm0rk5MZ0mFqb0Iqp1jmw==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.79.0.tgz",
+      "integrity": "sha512-chwKEWAmQMkOKZWwBra+utquuJ/2uFqh+ZgZbJfNX+U0YsBx6AQ3dVbfAaXW3bSLYEJyf9Wb3Opsal4fmcD9Ww==",
       "license": "BSD-3-Clause",
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/@react-native/dev-middleware": {
-      "version": "0.76.7",
-      "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.76.7.tgz",
-      "integrity": "sha512-Jsw8g9DyLPnR9yHEGuT09yHZ7M88/GL9CtU9WmyChlBwdXSeE3AmRqLegsV3XcgULQ1fqdemokaOZ/MwLYkjdA==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.79.0.tgz",
+      "integrity": "sha512-8Mh5L8zJXis2qhgkfXnWMbSmcvb07wrbxQe8KIgIO7C1rS97idg7BBtoPEtmARsaQgmbSGu/wdE7UWFkGYp0OQ==",
       "license": "MIT",
       "dependencies": {
         "@isaacs/ttlcache": "^1.4.1",
-        "@react-native/debugger-frontend": "0.76.7",
+        "@react-native/debugger-frontend": "0.79.0",
         "chrome-launcher": "^0.15.2",
         "chromium-edge-launcher": "^0.2.0",
         "connect": "^3.6.5",
@@ -10374,8 +10797,7 @@
         "invariant": "^2.2.4",
         "nullthrows": "^1.1.1",
         "open": "^7.0.3",
-        "selfsigned": "^2.4.1",
-        "serve-static": "^1.13.1",
+        "serve-static": "^1.16.2",
         "ws": "^6.2.3"
       },
       "engines": {
@@ -10391,62 +10813,87 @@
         "ms": "2.0.0"
       }
     },
+    "node_modules/@react-native/dev-middleware/node_modules/encodeurl": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+      "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">= 0.8"
+      }
+    },
     "node_modules/@react-native/dev-middleware/node_modules/ms": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
       "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
       "license": "MIT"
     },
+    "node_modules/@react-native/dev-middleware/node_modules/serve-static": {
+      "version": "1.16.2",
+      "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
+      "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
+      "license": "MIT",
+      "dependencies": {
+        "encodeurl": "~2.0.0",
+        "escape-html": "~1.0.3",
+        "parseurl": "~1.3.3",
+        "send": "0.19.0"
+      },
+      "engines": {
+        "node": ">= 0.8.0"
+      }
+    },
     "node_modules/@react-native/gradle-plugin": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.77.1.tgz",
-      "integrity": "sha512-QNuNMWH0CeC+PYrAXiuUIBbwdeGJ3fZpQM03vdG3tKdk66cVSFvxLh60P0w5kRHN7UFBg2FAcYx5eQ/IdcAntg==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.79.0.tgz",
+      "integrity": "sha512-c+/qKnmTx3kf8xZesp2BkZ9pAQVSnEPZziQUwviSJaq9jm8tKb/B8fyGG8yIuw/ZTKyGprD+ByzUSzJmCpC/Ow==",
       "license": "MIT",
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/@react-native/js-polyfills": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.77.1.tgz",
-      "integrity": "sha512-6qd3kNr5R+JF+HzgM/fNSLEM1kw4RoOoaJV6XichvlOaCRmWS22X5TehVqiZOP95AAxtULRIifRs1cK5t9+JSg==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.79.0.tgz",
+      "integrity": "sha512-+8lk/zP90JC9xZBGhI8TPqqR1Y5dYXwXvfhXygr/LlHoo+H8TeQxcPrXWdT+PWOJl6Gf7dbCOGh9Std8J7CSQA==",
       "license": "MIT",
       "engines": {
         "node": ">=18"
       }
     },
-    "node_modules/@react-native/metro-babel-transformer": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.77.1.tgz",
-      "integrity": "sha512-M4EzWDmUpIZhwJojEekbK7DzK2fYukU/TRIVZEmnbxVyWVwt/A1urbE2iV+s9E4E99pN+JdVpnBgu4LRCyPzJQ==",
+    "node_modules/@react-native/metro-config": {
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/metro-config/-/metro-config-0.79.0.tgz",
+      "integrity": "sha512-MHevg80zRsyCsv8entCaa8W/dbf+ldnmrsQSllL4Qc8zJBhtXkqEHKDlY+W+qcKmsX48O6oI4PHER38sf3WO4Q==",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@babel/core": "^7.25.2",
-        "@react-native/babel-preset": "0.77.1",
-        "hermes-parser": "0.25.1",
-        "nullthrows": "^1.1.1"
+        "@react-native/js-polyfills": "0.79.0",
+        "@react-native/metro-babel-transformer": "0.79.0",
+        "metro-config": "^0.82.0",
+        "metro-runtime": "^0.82.0"
       },
       "engines": {
         "node": ">=18"
-      },
-      "peerDependencies": {
-        "@babel/core": "*"
       }
     },
-    "node_modules/@react-native/metro-config": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/metro-config/-/metro-config-0.77.1.tgz",
-      "integrity": "sha512-hUtUPyTpAejRCwJAhAJ+WJctTkpzfzc4pBwxt0ax5JbR1UZkK7mME/8gHoO8BaT8+ETaCdUlk12/Njf0MQhZow==",
+    "node_modules/@react-native/metro-config/node_modules/@react-native/metro-babel-transformer": {
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.79.0.tgz",
+      "integrity": "sha512-bv2y9WVmLXOZeEB6yi3Lol8nMjtYLTRY7Ws47x6MPNOG0XrXCsn/TmK704V2whq/GJsj22KMyvzkwG66DX6KSw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@react-native/js-polyfills": "0.77.1",
-        "@react-native/metro-babel-transformer": "0.77.1",
-        "metro-config": "^0.81.0",
-        "metro-runtime": "^0.81.0"
+        "@babel/core": "^7.25.2",
+        "@react-native/babel-preset": "0.79.0",
+        "hermes-parser": "0.25.1",
+        "nullthrows": "^1.1.1"
       },
       "engines": {
         "node": ">=18"
+      },
+      "peerDependencies": {
+        "@babel/core": "*"
       }
     },
     "node_modules/@react-native/normalize-color": {
@@ -10459,9 +10906,9 @@
       "integrity": "sha512-pcE4i0X7y3hsAE0SpIl7t6dUc0B0NZLd1yv7ssm4FrLhWG+CGyIq4eFDXpmPU1XHmL5PPySxTAjEMiwv6tAmOw=="
     },
     "node_modules/@react-native/virtualized-lists": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.77.1.tgz",
-      "integrity": "sha512-S25lyHO9owc+uaV2tcd9CMTVJs7PUZX0UGCG60LoLOBHW3krVq0peI34Gm6HEhkeKqb4YvZXqI/ehoNPUm1/ww==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.79.0.tgz",
+      "integrity": "sha512-tCT1sHSI1O5KSclDwNfnkLTLe3cgiyYWjIlmNxWJHqhCCz017HGOS/oH0zs0ZgxYwN7xCzTkqY330XMDo+yj2g==",
       "license": "MIT",
       "dependencies": {
         "invariant": "^2.2.4",
@@ -10471,7 +10918,7 @@
         "node": ">=18"
       },
       "peerDependencies": {
-        "@types/react": "^18.2.6",
+        "@types/react": "^19.0.0",
         "react": "*",
         "react-native": "*"
       },
@@ -10517,6 +10964,7 @@
       "version": "1.3.31",
       "resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-1.3.31.tgz",
       "integrity": "sha512-bUzP4Awlljx5RKEExw8WYtif8EuQni2glDaieYROKTnaxsu9kEIA515sXQgUDZU4Ob12VoL7+z70uO3qrlfXcQ==",
+      "license": "MIT",
       "peerDependencies": {
         "@react-navigation/native": "^6.0.0",
         "react": "*",
@@ -10604,6 +11052,25 @@
         "react-dom": "^18.2.0"
       }
     },
+    "node_modules/@react-ng/bounds-observer/node_modules/@types/react": {
+      "version": "18.3.18",
+      "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.18.tgz",
+      "integrity": "sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==",
+      "license": "MIT",
+      "dependencies": {
+        "@types/prop-types": "*",
+        "csstype": "^3.0.2"
+      }
+    },
+    "node_modules/@react-ng/bounds-observer/node_modules/@types/react-dom": {
+      "version": "18.3.5",
+      "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz",
+      "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==",
+      "license": "MIT",
+      "peerDependencies": {
+        "@types/react": "^18.0.0"
+      }
+    },
     "node_modules/@rgba-image/common": {
       "version": "0.1.13",
       "resolved": "https://registry.npmjs.org/@rgba-image/common/-/common-0.1.13.tgz",
@@ -11533,6 +12000,98 @@
         "tslib": "^2.3.0"
       }
     },
+    "node_modules/@rnef/tools/node_modules/@expo/fingerprint": {
+      "version": "0.11.11",
+      "resolved": "https://registry.npmjs.org/@expo/fingerprint/-/fingerprint-0.11.11.tgz",
+      "integrity": "sha512-gNyn1KnAOpEa8gSNsYqXMTcq0fSwqU/vit6fP5863vLSKxHm/dNt/gm/uZJxrRZxKq71KUJWF6I7d3z8qIfq5g==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "@expo/spawn-async": "^1.7.2",
+        "arg": "^5.0.2",
+        "chalk": "^4.1.2",
+        "debug": "^4.3.4",
+        "find-up": "^5.0.0",
+        "getenv": "^1.0.0",
+        "minimatch": "^3.0.4",
+        "p-limit": "^3.1.0",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.6.0"
+      },
+      "bin": {
+        "fingerprint": "bin/cli.js"
+      }
+    },
+    "node_modules/@rnef/tools/node_modules/ansi-styles": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "color-convert": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/@rnef/tools/node_modules/arg": {
+      "version": "5.0.2",
+      "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
+      "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
+      "dev": true,
+      "license": "MIT"
+    },
+    "node_modules/@rnef/tools/node_modules/chalk": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "ansi-styles": "^4.1.0",
+        "supports-color": "^7.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/chalk?sponsor=1"
+      }
+    },
+    "node_modules/@rnef/tools/node_modules/color-convert": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "color-name": "~1.1.4"
+      },
+      "engines": {
+        "node": ">=7.0.0"
+      }
+    },
+    "node_modules/@rnef/tools/node_modules/color-name": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+      "dev": true,
+      "license": "MIT"
+    },
+    "node_modules/@rnef/tools/node_modules/has-flag": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+      "dev": true,
+      "license": "MIT",
+      "engines": {
+        "node": ">=8"
+      }
+    },
     "node_modules/@rnef/tools/node_modules/is-unicode-supported": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz",
@@ -11546,6 +12105,32 @@
         "url": "https://github.com/sponsors/sindresorhus"
       }
     },
+    "node_modules/@rnef/tools/node_modules/semver": {
+      "version": "7.7.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+      "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
+      "dev": true,
+      "license": "ISC",
+      "bin": {
+        "semver": "bin/semver.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/@rnef/tools/node_modules/supports-color": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "has-flag": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
     "node_modules/@rnmapbox/maps": {
       "version": "10.1.33",
       "resolved": "https://registry.npmjs.org/@rnmapbox/maps/-/maps-10.1.33.tgz",
@@ -11579,22 +12164,14 @@
         }
       }
     },
-    "node_modules/@segment/loosely-validate-event": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/@segment/loosely-validate-event/-/loosely-validate-event-2.0.0.tgz",
-      "integrity": "sha512-ZMCSfztDBqwotkl848ODgVcAmN4OItEWDCkshcKz0/W6gGSQayuuCtWV/MlodFivAZD793d6UgANd6wCXUfrIw==",
-      "dependencies": {
-        "component-type": "^1.2.1",
-        "join-component": "^1.1.0"
-      }
-    },
     "node_modules/@shopify/flash-list": {
-      "version": "1.7.1",
-      "resolved": "https://registry.npmjs.org/@shopify/flash-list/-/flash-list-1.7.1.tgz",
-      "integrity": "sha512-sUYl7h8ydJutufA26E42Hj7cLvaBTpkMIyNJiFrxUspkcANb6jnFiLt9rEwAuDjvGk/C0lHau+WyT6ZOxqVPwg==",
+      "version": "1.7.6",
+      "resolved": "https://registry.npmjs.org/@shopify/flash-list/-/flash-list-1.7.6.tgz",
+      "integrity": "sha512-0kuuAbWgy4YSlN05mt0ScvxK8uiDixMsICWvDed+LTxvZ5+5iRyt3M8cRLUroB8sfiZlJJZWlxHrx0frBpsYOQ==",
+      "license": "MIT",
       "dependencies": {
-        "recyclerlistview": "4.2.1",
-        "tslib": "2.6.3"
+        "recyclerlistview": "4.2.3",
+        "tslib": "2.8.1"
       },
       "peerDependencies": {
         "@babel/runtime": "*",
@@ -11606,7 +12183,7 @@
       "version": "4.1.5",
       "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz",
       "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause",
       "dependencies": {
         "@hapi/hoek": "^9.0.0"
@@ -11616,14 +12193,14 @@
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz",
       "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause"
     },
     "node_modules/@sideway/pinpoint": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz",
       "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause"
     },
     "node_modules/@sinclair/typebox": {
@@ -13828,7 +14405,6 @@
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
       "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
-      "dev": true,
       "license": "MIT"
     },
     "node_modules/@types/express": {
@@ -14093,6 +14669,7 @@
     },
     "node_modules/@types/node-forge": {
       "version": "1.3.11",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@types/node": "*"
@@ -14120,7 +14697,9 @@
       }
     },
     "node_modules/@types/prop-types": {
-      "version": "15.7.5",
+      "version": "15.7.14",
+      "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz",
+      "integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==",
       "license": "MIT"
     },
     "node_modules/@types/pusher-js": {
@@ -14149,11 +14728,11 @@
       "license": "MIT"
     },
     "node_modules/@types/react": {
-      "version": "18.2.45",
+      "version": "19.0.10",
+      "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.10.tgz",
+      "integrity": "sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g==",
       "license": "MIT",
       "dependencies": {
-        "@types/prop-types": "*",
-        "@types/scheduler": "*",
         "csstype": "^3.0.2"
       }
     },
@@ -14174,10 +14753,12 @@
       }
     },
     "node_modules/@types/react-dom": {
-      "version": "18.2.4",
+      "version": "19.0.4",
+      "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.0.4.tgz",
+      "integrity": "sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==",
       "license": "MIT",
-      "dependencies": {
-        "@types/react": "*"
+      "peerDependencies": {
+        "@types/react": "^19.0.0"
       }
     },
     "node_modules/@types/react-is": {
@@ -14189,12 +14770,14 @@
       }
     },
     "node_modules/@types/react-native": {
-      "version": "0.73.0",
-      "deprecated": "This is a stub types definition. react-native provides its own type definitions, so you do not need this installed.",
+      "version": "0.72.8",
+      "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.72.8.tgz",
+      "integrity": "sha512-St6xA7+EoHN5mEYfdWnfYt0e8u6k2FR0P9s2arYgakQGFgU1f9FlPrIEcj0X24pLCF5c5i3WVuLCUdiCYHmOoA==",
       "license": "MIT",
       "peer": true,
       "dependencies": {
-        "react-native": "*"
+        "@react-native/virtualized-lists": "^0.72.4",
+        "@types/react": "*"
       }
     },
     "node_modules/@types/react-native-web": {
@@ -14207,6 +14790,20 @@
         "react-native": "*"
       }
     },
+    "node_modules/@types/react-native/node_modules/@react-native/virtualized-lists": {
+      "version": "0.72.8",
+      "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.72.8.tgz",
+      "integrity": "sha512-J3Q4Bkuo99k7mu+jPS9gSUSgq+lLRSI/+ahXNwV92XgJ/8UgOTxu2LPwhJnBk/sQKxq7E8WkZBnBiozukQMqrw==",
+      "license": "MIT",
+      "peer": true,
+      "dependencies": {
+        "invariant": "^2.2.4",
+        "nullthrows": "^1.1.1"
+      },
+      "peerDependencies": {
+        "react-native": "*"
+      }
+    },
     "node_modules/@types/react-redux": {
       "version": "7.1.27",
       "license": "MIT",
@@ -14218,7 +14815,9 @@
       }
     },
     "node_modules/@types/react-test-renderer": {
-      "version": "18.0.0",
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-19.0.0.tgz",
+      "integrity": "sha512-qDVnNybqFm2eZKJ4jD34EvRd6VHD67KjgnWaEMM0Id9L22EpWe3nOSVKHWL1XWRCxUWe3lhXwlEeCKD1BlJCQA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -14245,10 +14844,6 @@
       "dev": true,
       "license": "MIT"
     },
-    "node_modules/@types/scheduler": {
-      "version": "0.16.2",
-      "license": "MIT"
-    },
     "node_modules/@types/semver": {
       "version": "7.5.4",
       "dev": true,
@@ -14916,9 +15511,9 @@
       }
     },
     "node_modules/@ua/react-native-airship": {
-      "version": "21.4.1",
-      "resolved": "https://registry.npmjs.org/@ua/react-native-airship/-/react-native-airship-21.4.1.tgz",
-      "integrity": "sha512-bzZqFwUVpH4fZHyShOfwCu+HjyOXP49TR0eHtoLzNDzBDd1NJqek5S7FtU+MF1a5z8vZ+O0llaEY9j1qgloZWQ==",
+      "version": "22.0.0",
+      "resolved": "https://registry.npmjs.org/@ua/react-native-airship/-/react-native-airship-22.0.0.tgz",
+      "integrity": "sha512-CVTgiCwsKJNRK3AOg3Pa7UJ0oLYDZbNPLbCnBoI0WTtNNbAFWvKqhV/mzRu70bSx/iOWBpZAHhX5/eeepHM1yQ==",
       "license": "Apache-2.0",
       "engines": {
         "node": ">= 16.0.0"
@@ -15050,6 +15645,13 @@
         "url": "https://opencollective.com/vitest"
       }
     },
+    "node_modules/@vscode/sudo-prompt": {
+      "version": "9.3.1",
+      "resolved": "https://registry.npmjs.org/@vscode/sudo-prompt/-/sudo-prompt-9.3.1.tgz",
+      "integrity": "sha512-9ORTwwS74VaTn38tNbQhsA5U44zkJfcb0BdTSyyG6frP4e8KMtHuTXYmwefe5dpL8XB1aGSIVTaLjD3BbWb5iA==",
+      "devOptional": true,
+      "license": "MIT"
+    },
     "node_modules/@vue/preload-webpack-plugin": {
       "version": "2.0.0",
       "dev": true,
@@ -15235,14 +15837,16 @@
       }
     },
     "node_modules/@welldone-software/why-did-you-render": {
-      "version": "7.0.1",
+      "version": "10.0.1",
+      "resolved": "https://registry.npmjs.org/@welldone-software/why-did-you-render/-/why-did-you-render-10.0.1.tgz",
+      "integrity": "sha512-tMgGkt30iVYeLMUKExNmtm019QgyjLtA7lwB0QAizYNEuihlCG2eoAWBBaz/bDeI7LeqAJ9msC6hY3vX+JB97g==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
         "lodash": "^4"
       },
       "peerDependencies": {
-        "react": "^16 || ^17 || ^18"
+        "react": "^19"
       }
     },
     "node_modules/@xmldom/xmldom": {
@@ -15389,6 +15993,7 @@
     },
     "node_modules/aggregate-error": {
       "version": "3.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "clean-stack": "^2.0.0",
@@ -15469,6 +16074,8 @@
     },
     "node_modules/anser": {
       "version": "1.4.10",
+      "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz",
+      "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==",
       "license": "MIT"
     },
     "node_modules/ansi-escapes": {
@@ -15498,7 +16105,7 @@
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/ansi-fragments/-/ansi-fragments-0.2.1.tgz",
       "integrity": "sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "colorette": "^1.0.7",
@@ -15510,7 +16117,7 @@
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
       "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=4"
@@ -15520,7 +16127,7 @@
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
       "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=4"
@@ -15530,7 +16137,7 @@
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
       "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-styles": "^3.2.0",
@@ -15545,7 +16152,7 @@
       "version": "5.2.0",
       "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
       "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-regex": "^4.1.0"
@@ -15730,12 +16337,6 @@
       "devOptional": true,
       "license": "MIT"
     },
-    "node_modules/application-config-path": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz",
-      "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==",
-      "license": "MIT"
-    },
     "node_modules/aproba": {
       "version": "1.2.0",
       "dev": true,
@@ -15898,6 +16499,7 @@
     },
     "node_modules/array-union": {
       "version": "2.1.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -16032,6 +16634,7 @@
     },
     "node_modules/ast-types": {
       "version": "0.16.1",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.0.1"
@@ -16077,10 +16680,12 @@
     },
     "node_modules/asynckit": {
       "version": "0.4.0",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/at-least-node": {
       "version": "1.0.0",
+      "dev": true,
       "license": "ISC",
       "engines": {
         "node": ">= 4.0.0"
@@ -16122,6 +16727,7 @@
     },
     "node_modules/babel-core": {
       "version": "7.0.0-bridge.0",
+      "dev": true,
       "license": "MIT",
       "peerDependencies": {
         "@babel/core": "^7.0.0-0"
@@ -16481,163 +17087,13 @@
       }
     },
     "node_modules/babel-plugin-react-compiler": {
-      "version": "19.0.0-beta-9ee70a1-20241017",
-      "resolved": "https://registry.npmjs.org/babel-plugin-react-compiler/-/babel-plugin-react-compiler-19.0.0-beta-9ee70a1-20241017.tgz",
-      "integrity": "sha512-AkSce5YYHcreFtuvzI9xnP2kwoYkub8Go3yrz7cPbbCE6oIhFxESbPWJVgye7yZckXuzEZYO4JSE8tq/U0oVfA==",
+      "version": "19.0.0-beta-ebf51a3-20250411",
+      "resolved": "https://registry.npmjs.org/babel-plugin-react-compiler/-/babel-plugin-react-compiler-19.0.0-beta-ebf51a3-20250411.tgz",
+      "integrity": "sha512-q84bNR9JG1crykAlJUt5Ud0/5BUyMFuQww/mrwIQDFBaxsikqBDj3f/FNDsVd2iR26A1HvXKWPEIfgJDv8/V2g==",
       "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "@babel/generator": "7.2.0",
-        "@babel/types": "^7.19.0",
-        "chalk": "4",
-        "invariant": "^2.2.4",
-        "pretty-format": "^24",
-        "zod": "^3.22.4",
-        "zod-validation-error": "^2.1.0"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/@babel/generator": {
-      "version": "7.2.0",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "@babel/types": "^7.2.0",
-        "jsesc": "^2.5.1",
-        "lodash": "^4.17.10",
-        "source-map": "^0.5.0",
-        "trim-right": "^1.0.1"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/@jest/types": {
-      "version": "24.9.0",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "@types/istanbul-lib-coverage": "^2.0.0",
-        "@types/istanbul-reports": "^1.1.1",
-        "@types/yargs": "^13.0.0"
-      },
-      "engines": {
-        "node": ">= 6"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/@types/istanbul-reports": {
-      "version": "1.1.2",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "@types/istanbul-lib-coverage": "*",
-        "@types/istanbul-lib-report": "*"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/@types/yargs": {
-      "version": "13.0.12",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "@types/yargs-parser": "*"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/chalk": {
-      "version": "4.1.2",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "ansi-styles": "^4.1.0",
-        "supports-color": "^7.1.0"
-      },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/chalk/node_modules/ansi-styles": {
-      "version": "4.3.0",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "color-convert": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/color-convert": {
-      "version": "2.0.1",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "color-name": "~1.1.4"
-      },
-      "engines": {
-        "node": ">=7.0.0"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/color-name": {
-      "version": "1.1.4",
-      "devOptional": true,
-      "license": "MIT"
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/has-flag": {
-      "version": "4.0.0",
-      "devOptional": true,
-      "license": "MIT",
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/pretty-format": {
-      "version": "24.9.0",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "@jest/types": "^24.9.0",
-        "ansi-regex": "^4.0.0",
-        "ansi-styles": "^3.2.0",
-        "react-is": "^16.8.4"
-      },
-      "engines": {
-        "node": ">= 6"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/react-is": {
-      "version": "16.13.1",
-      "devOptional": true,
-      "license": "MIT"
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/source-map": {
-      "version": "0.5.7",
-      "devOptional": true,
-      "license": "BSD-3-Clause",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/supports-color": {
-      "version": "7.2.0",
-      "devOptional": true,
-      "license": "MIT",
-      "dependencies": {
-        "has-flag": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/babel-plugin-react-compiler/node_modules/zod-validation-error": {
-      "version": "2.1.0",
-      "devOptional": true,
-      "license": "MIT",
-      "engines": {
-        "node": ">=18.0.0"
-      },
-      "peerDependencies": {
-        "zod": "^3.18.0"
+        "@babel/types": "^7.26.0"
       }
     },
     "node_modules/babel-plugin-react-native-web": {
@@ -16706,152 +17162,40 @@
       }
     },
     "node_modules/babel-preset-expo": {
-      "version": "12.0.10",
-      "resolved": "https://registry.npmjs.org/babel-preset-expo/-/babel-preset-expo-12.0.10.tgz",
-      "integrity": "sha512-6QE52Bxsp5XRE8t0taKRFTFsmTG0ThQE+PTgCgLY9s8v2Aeh8R+E+riXhSHX6hP+diDmBFBdvLCUTq7kroJb1Q==",
+      "version": "13.1.4",
+      "resolved": "https://registry.npmjs.org/babel-preset-expo/-/babel-preset-expo-13.1.4.tgz",
+      "integrity": "sha512-7MdepR2vDbDNcwDBd7zjs/MfrUiuz8Z4YAcqzc7p7O9+5I5Dc0s213OIq8HcuqkIG+OJx3XCXfvUHgeaJEIZBA==",
       "license": "MIT",
       "dependencies": {
+        "@babel/helper-module-imports": "^7.25.9",
         "@babel/plugin-proposal-decorators": "^7.12.9",
-        "@babel/plugin-transform-export-namespace-from": "^7.22.11",
-        "@babel/plugin-transform-object-rest-spread": "^7.12.13",
-        "@babel/plugin-transform-parameters": "^7.22.15",
-        "@babel/preset-react": "^7.22.15",
-        "@babel/preset-typescript": "^7.23.0",
-        "@react-native/babel-preset": "0.76.8",
-        "babel-plugin-react-native-web": "~0.19.13",
-        "react-refresh": "^0.14.2"
-      },
-      "peerDependencies": {
-        "babel-plugin-react-compiler": "^19.0.0-beta-9ee70a1-20241017",
-        "react-compiler-runtime": "^19.0.0-beta-8a03594-20241020"
-      },
-      "peerDependenciesMeta": {
-        "babel-plugin-react-compiler": {
-          "optional": true
-        },
-        "react-compiler-runtime": {
-          "optional": true
-        }
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/@react-native/babel-plugin-codegen": {
-      "version": "0.76.8",
-      "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.76.8.tgz",
-      "integrity": "sha512-84RUEhDZS+q7vPtxKi0iMZLd5/W0VN7NOyqX5f+burV3xMYpUhpF5TDJ2Ysol7dJrvEZHm6ISAriO85++V8YDw==",
-      "license": "MIT",
-      "dependencies": {
-        "@react-native/codegen": "0.76.8"
-      },
-      "engines": {
-        "node": ">=18"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/@react-native/babel-preset": {
-      "version": "0.76.8",
-      "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.76.8.tgz",
-      "integrity": "sha512-xrP+r3orRzzxtC2TrfGIP6IYi1f4AiWlnSiWf4zxEdMFzKrYdmxhD0FPtAZb77B0DqFIW5AcBFlm4grfL/VgfA==",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/core": "^7.25.2",
         "@babel/plugin-proposal-export-default-from": "^7.24.7",
-        "@babel/plugin-syntax-dynamic-import": "^7.8.3",
         "@babel/plugin-syntax-export-default-from": "^7.24.7",
-        "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
-        "@babel/plugin-syntax-optional-chaining": "^7.8.3",
-        "@babel/plugin-transform-arrow-functions": "^7.24.7",
-        "@babel/plugin-transform-async-generator-functions": "^7.25.4",
-        "@babel/plugin-transform-async-to-generator": "^7.24.7",
-        "@babel/plugin-transform-block-scoping": "^7.25.0",
-        "@babel/plugin-transform-class-properties": "^7.25.4",
-        "@babel/plugin-transform-classes": "^7.25.4",
-        "@babel/plugin-transform-computed-properties": "^7.24.7",
-        "@babel/plugin-transform-destructuring": "^7.24.8",
+        "@babel/plugin-transform-export-namespace-from": "^7.25.9",
         "@babel/plugin-transform-flow-strip-types": "^7.25.2",
-        "@babel/plugin-transform-for-of": "^7.24.7",
-        "@babel/plugin-transform-function-name": "^7.25.1",
-        "@babel/plugin-transform-literals": "^7.25.2",
-        "@babel/plugin-transform-logical-assignment-operators": "^7.24.7",
         "@babel/plugin-transform-modules-commonjs": "^7.24.8",
-        "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7",
-        "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7",
-        "@babel/plugin-transform-numeric-separator": "^7.24.7",
         "@babel/plugin-transform-object-rest-spread": "^7.24.7",
-        "@babel/plugin-transform-optional-catch-binding": "^7.24.7",
-        "@babel/plugin-transform-optional-chaining": "^7.24.8",
         "@babel/plugin-transform-parameters": "^7.24.7",
         "@babel/plugin-transform-private-methods": "^7.24.7",
         "@babel/plugin-transform-private-property-in-object": "^7.24.7",
-        "@babel/plugin-transform-react-display-name": "^7.24.7",
-        "@babel/plugin-transform-react-jsx": "^7.25.2",
-        "@babel/plugin-transform-react-jsx-self": "^7.24.7",
-        "@babel/plugin-transform-react-jsx-source": "^7.24.7",
-        "@babel/plugin-transform-regenerator": "^7.24.7",
         "@babel/plugin-transform-runtime": "^7.24.7",
-        "@babel/plugin-transform-shorthand-properties": "^7.24.7",
-        "@babel/plugin-transform-spread": "^7.24.7",
-        "@babel/plugin-transform-sticky-regex": "^7.24.7",
-        "@babel/plugin-transform-typescript": "^7.25.2",
-        "@babel/plugin-transform-unicode-regex": "^7.24.7",
-        "@babel/template": "^7.25.0",
-        "@react-native/babel-plugin-codegen": "0.76.8",
+        "@babel/preset-react": "^7.22.15",
+        "@babel/preset-typescript": "^7.23.0",
+        "@react-native/babel-preset": "0.79.0",
+        "babel-plugin-react-native-web": "~0.19.13",
         "babel-plugin-syntax-hermes-parser": "^0.25.1",
         "babel-plugin-transform-flow-enums": "^0.0.2",
-        "react-refresh": "^0.14.0"
-      },
-      "engines": {
-        "node": ">=18"
-      },
-      "peerDependencies": {
-        "@babel/core": "*"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/@react-native/codegen": {
-      "version": "0.76.8",
-      "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.76.8.tgz",
-      "integrity": "sha512-qvKhcYBkRHJFkeWrYm66kEomQOTVXWiHBkZ8VF9oC/71OJkLszpTpVOuPIyyib6fqhjy9l7mHYGYenSpfYI5Ww==",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/parser": "^7.25.3",
-        "glob": "^7.1.1",
-        "hermes-parser": "0.23.1",
-        "invariant": "^2.2.4",
-        "jscodeshift": "^0.14.0",
-        "mkdirp": "^0.5.1",
-        "nullthrows": "^1.1.1",
-        "yargs": "^17.6.2"
-      },
-      "engines": {
-        "node": ">=18"
+        "debug": "^4.3.4",
+        "react-refresh": "^0.14.2",
+        "resolve-from": "^5.0.0"
       },
       "peerDependencies": {
-        "@babel/preset-env": "^7.1.6"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/ansi-styles": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "license": "MIT",
-      "dependencies": {
-        "color-convert": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/ast-types": {
-      "version": "0.15.2",
-      "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz",
-      "integrity": "sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==",
-      "license": "MIT",
-      "dependencies": {
-        "tslib": "^2.0.1"
+        "babel-plugin-react-compiler": "^19.0.0-beta-e993439-20250405"
       },
-      "engines": {
-        "node": ">=4"
+      "peerDependenciesMeta": {
+        "babel-plugin-react-compiler": {
+          "optional": true
+        }
       }
     },
     "node_modules/babel-preset-expo/node_modules/babel-plugin-react-native-web": {
@@ -16860,145 +17204,6 @@
       "integrity": "sha512-4hHoto6xaN23LCyZgL9LJZc3olmAxd7b6jDzlZnKXAh4rRAbZRKNBJoOOdp46OBqgy+K0t0guTj5/mhA8inymQ==",
       "license": "MIT"
     },
-    "node_modules/babel-preset-expo/node_modules/chalk": {
-      "version": "4.1.2",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
-      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "license": "MIT",
-      "dependencies": {
-        "ansi-styles": "^4.1.0",
-        "supports-color": "^7.1.0"
-      },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/color-convert": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "license": "MIT",
-      "dependencies": {
-        "color-name": "~1.1.4"
-      },
-      "engines": {
-        "node": ">=7.0.0"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/color-name": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "license": "MIT"
-    },
-    "node_modules/babel-preset-expo/node_modules/has-flag": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/hermes-estree": {
-      "version": "0.23.1",
-      "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.23.1.tgz",
-      "integrity": "sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg==",
-      "license": "MIT"
-    },
-    "node_modules/babel-preset-expo/node_modules/hermes-parser": {
-      "version": "0.23.1",
-      "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.23.1.tgz",
-      "integrity": "sha512-oxl5h2DkFW83hT4DAUJorpah8ou4yvmweUzLJmmr6YV2cezduCdlil1AvU/a/xSsAFo4WUcNA4GoV5Bvq6JffA==",
-      "license": "MIT",
-      "dependencies": {
-        "hermes-estree": "0.23.1"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/jscodeshift": {
-      "version": "0.14.0",
-      "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.14.0.tgz",
-      "integrity": "sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/core": "^7.13.16",
-        "@babel/parser": "^7.13.16",
-        "@babel/plugin-proposal-class-properties": "^7.13.0",
-        "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8",
-        "@babel/plugin-proposal-optional-chaining": "^7.13.12",
-        "@babel/plugin-transform-modules-commonjs": "^7.13.8",
-        "@babel/preset-flow": "^7.13.13",
-        "@babel/preset-typescript": "^7.13.0",
-        "@babel/register": "^7.13.16",
-        "babel-core": "^7.0.0-bridge.0",
-        "chalk": "^4.1.2",
-        "flow-parser": "0.*",
-        "graceful-fs": "^4.2.4",
-        "micromatch": "^4.0.4",
-        "neo-async": "^2.5.0",
-        "node-dir": "^0.1.17",
-        "recast": "^0.21.0",
-        "temp": "^0.8.4",
-        "write-file-atomic": "^2.3.0"
-      },
-      "bin": {
-        "jscodeshift": "bin/jscodeshift.js"
-      },
-      "peerDependencies": {
-        "@babel/preset-env": "^7.1.6"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/mkdirp": {
-      "version": "0.5.6",
-      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
-      "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
-      "license": "MIT",
-      "dependencies": {
-        "minimist": "^1.2.6"
-      },
-      "bin": {
-        "mkdirp": "bin/cmd.js"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/recast": {
-      "version": "0.21.5",
-      "resolved": "https://registry.npmjs.org/recast/-/recast-0.21.5.tgz",
-      "integrity": "sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==",
-      "license": "MIT",
-      "dependencies": {
-        "ast-types": "0.15.2",
-        "esprima": "~4.0.0",
-        "source-map": "~0.6.1",
-        "tslib": "^2.0.1"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/source-map": {
-      "version": "0.6.1",
-      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
-      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
-      "license": "BSD-3-Clause",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/babel-preset-expo/node_modules/supports-color": {
-      "version": "7.2.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "license": "MIT",
-      "dependencies": {
-        "has-flag": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
     "node_modules/babel-preset-jest": {
       "version": "29.6.3",
       "license": "MIT",
@@ -17227,7 +17432,7 @@
       "version": "1.20.3",
       "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
       "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "bytes": "3.1.2",
@@ -17252,7 +17457,7 @@
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
       "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.8"
@@ -17262,7 +17467,7 @@
       "version": "2.6.9",
       "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
       "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ms": "2.0.0"
@@ -17272,7 +17477,7 @@
       "version": "0.4.24",
       "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
       "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "safer-buffer": ">= 2.1.2 < 3"
@@ -17285,7 +17490,7 @@
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
       "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/bonjour-service": {
@@ -17312,12 +17517,12 @@
       "license": "MIT"
     },
     "node_modules/bplist-creator": {
-      "version": "0.0.7",
-      "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.7.tgz",
-      "integrity": "sha512-xp/tcaV3T5PCiaY04mXga7o/TE+t95gqeLmADeBI1CvZtdWTbgBt3uLpvh4UWtenKeBhCV6oVxGk38yZr2uYEA==",
+      "version": "0.1.0",
+      "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.1.0.tgz",
+      "integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==",
       "license": "MIT",
       "dependencies": {
-        "stream-buffers": "~2.2.0"
+        "stream-buffers": "2.2.x"
       }
     },
     "node_modules/bplist-parser": {
@@ -17439,22 +17644,6 @@
         "ieee754": "^1.1.13"
       }
     },
-    "node_modules/buffer-alloc": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
-      "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
-      "license": "MIT",
-      "dependencies": {
-        "buffer-alloc-unsafe": "^1.1.0",
-        "buffer-fill": "^1.0.0"
-      }
-    },
-    "node_modules/buffer-alloc-unsafe": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
-      "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
-      "license": "MIT"
-    },
     "node_modules/buffer-crc32": {
       "version": "0.2.13",
       "dev": true,
@@ -17470,12 +17659,6 @@
       "dev": true,
       "license": "BSD-3-Clause"
     },
-    "node_modules/buffer-fill": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
-      "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==",
-      "license": "MIT"
-    },
     "node_modules/buffer-from": {
       "version": "1.1.2",
       "license": "MIT"
@@ -17655,100 +17838,6 @@
         "typewise-core": "^1.2"
       }
     },
-    "node_modules/cacache": {
-      "version": "18.0.4",
-      "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz",
-      "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==",
-      "license": "ISC",
-      "dependencies": {
-        "@npmcli/fs": "^3.1.0",
-        "fs-minipass": "^3.0.0",
-        "glob": "^10.2.2",
-        "lru-cache": "^10.0.1",
-        "minipass": "^7.0.3",
-        "minipass-collect": "^2.0.1",
-        "minipass-flush": "^1.0.5",
-        "minipass-pipeline": "^1.2.4",
-        "p-map": "^4.0.0",
-        "ssri": "^10.0.0",
-        "tar": "^6.1.11",
-        "unique-filename": "^3.0.0"
-      },
-      "engines": {
-        "node": "^16.14.0 || >=18.0.0"
-      }
-    },
-    "node_modules/cacache/node_modules/brace-expansion": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
-      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
-      "license": "MIT",
-      "dependencies": {
-        "balanced-match": "^1.0.0"
-      }
-    },
-    "node_modules/cacache/node_modules/fs-minipass": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz",
-      "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==",
-      "license": "ISC",
-      "dependencies": {
-        "minipass": "^7.0.3"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
-    "node_modules/cacache/node_modules/glob": {
-      "version": "10.4.5",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
-      "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
-      "license": "ISC",
-      "dependencies": {
-        "foreground-child": "^3.1.0",
-        "jackspeak": "^3.1.2",
-        "minimatch": "^9.0.4",
-        "minipass": "^7.1.2",
-        "package-json-from-dist": "^1.0.0",
-        "path-scurry": "^1.11.1"
-      },
-      "bin": {
-        "glob": "dist/esm/bin.mjs"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
-    "node_modules/cacache/node_modules/lru-cache": {
-      "version": "10.4.3",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
-      "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
-      "license": "ISC"
-    },
-    "node_modules/cacache/node_modules/minimatch": {
-      "version": "9.0.5",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
-      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
-      "license": "ISC",
-      "dependencies": {
-        "brace-expansion": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
-    "node_modules/cacache/node_modules/minipass": {
-      "version": "7.1.2",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
-      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
-      "license": "ISC",
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      }
-    },
     "node_modules/cacheable-lookup": {
       "version": "5.0.4",
       "dev": true,
@@ -17790,7 +17879,7 @@
     },
     "node_modules/call-bind": {
       "version": "1.0.7",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "es-define-property": "^1.0.0",
@@ -17806,19 +17895,6 @@
         "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/call-bind-apply-helpers": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
-      "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
-      "license": "MIT",
-      "dependencies": {
-        "es-errors": "^1.3.0",
-        "function-bind": "^1.1.2"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      }
-    },
     "node_modules/caller-callsite": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
@@ -17854,7 +17930,7 @@
     },
     "node_modules/callsites": {
       "version": "3.1.0",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -17881,6 +17957,8 @@
     },
     "node_modules/camelize": {
       "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz",
+      "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==",
       "license": "MIT",
       "funding": {
         "url": "https://github.com/sponsors/ljharb"
@@ -17995,15 +18073,6 @@
         "url": "https://github.com/sponsors/wooorm"
       }
     },
-    "node_modules/charenc": {
-      "version": "0.0.2",
-      "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz",
-      "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==",
-      "license": "BSD-3-Clause",
-      "engines": {
-        "node": "*"
-      }
-    },
     "node_modules/check-error": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
@@ -18039,6 +18108,7 @@
     },
     "node_modules/chownr": {
       "version": "2.0.0",
+      "dev": true,
       "license": "ISC",
       "engines": {
         "node": ">=10"
@@ -18144,6 +18214,7 @@
     },
     "node_modules/clean-stack": {
       "version": "2.2.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -18232,6 +18303,7 @@
     },
     "node_modules/clone-deep": {
       "version": "4.0.1",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "is-plain-object": "^2.0.4",
@@ -18244,6 +18316,7 @@
     },
     "node_modules/clone-deep/node_modules/is-plain-object": {
       "version": "2.0.4",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "isobject": "^3.0.1"
@@ -18351,11 +18424,12 @@
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz",
       "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/combined-stream": {
       "version": "1.0.8",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "delayed-stream": "~1.0.0"
@@ -18366,6 +18440,7 @@
     },
     "node_modules/command-exists": {
       "version": "1.2.9",
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/commander": {
@@ -18392,6 +18467,7 @@
     },
     "node_modules/commondir": {
       "version": "1.0.1",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/compare-version": {
@@ -18414,15 +18490,6 @@
         "url": "https://www.patreon.com/infusion"
       }
     },
-    "node_modules/component-type": {
-      "version": "1.2.2",
-      "resolved": "https://registry.npmjs.org/component-type/-/component-type-1.2.2.tgz",
-      "integrity": "sha512-99VUHREHiN5cLeHm3YLq312p6v+HUEcwtLCAtelvUDI6+SH5g5Cr85oNR2S1o6ywzL0ykMbuwLzM2ANocjEOIA==",
-      "license": "MIT",
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
     "node_modules/compress-commons": {
       "version": "4.1.2",
       "dev": true,
@@ -18804,7 +18871,7 @@
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
       "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.6"
@@ -18956,6 +19023,7 @@
     },
     "node_modules/core-util-is": {
       "version": "1.0.2",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/corser": {
@@ -19094,15 +19162,6 @@
         "node": ">= 8"
       }
     },
-    "node_modules/crypt": {
-      "version": "0.0.2",
-      "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz",
-      "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==",
-      "license": "BSD-3-Clause",
-      "engines": {
-        "node": "*"
-      }
-    },
     "node_modules/crypto-js": {
       "version": "4.2.0",
       "license": "MIT"
@@ -19125,17 +19184,20 @@
     },
     "node_modules/css-color-keywords": {
       "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz",
+      "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==",
       "license": "ISC",
       "engines": {
         "node": ">=4"
       }
     },
     "node_modules/css-in-js-utils": {
-      "version": "2.0.1",
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz",
+      "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==",
       "license": "MIT",
       "dependencies": {
-        "hyphenate-style-name": "^1.0.2",
-        "isobject": "^3.0.1"
+        "hyphenate-style-name": "^1.0.3"
       }
     },
     "node_modules/css-line-break": {
@@ -19298,7 +19360,9 @@
       }
     },
     "node_modules/css-to-react-native": {
-      "version": "3.0.0",
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz",
+      "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==",
       "license": "MIT",
       "dependencies": {
         "camelize": "^1.0.0",
@@ -19462,7 +19526,7 @@
       "version": "1.11.13",
       "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
       "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/debounce": {
@@ -19470,9 +19534,10 @@
       "license": "MIT"
     },
     "node_modules/debug": {
-      "version": "4.3.7",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
-      "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+      "version": "4.4.0",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
+      "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
+      "license": "MIT",
       "dependencies": {
         "ms": "^2.1.3"
       },
@@ -19609,134 +19674,15 @@
       }
     },
     "node_modules/default-gateway": {
-      "version": "4.2.0",
-      "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz",
-      "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==",
+      "version": "6.0.3",
+      "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz",
+      "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==",
       "license": "BSD-2-Clause",
       "dependencies": {
-        "execa": "^1.0.0",
-        "ip-regex": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/default-gateway/node_modules/cross-spawn": {
-      "version": "6.0.6",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz",
-      "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==",
-      "license": "MIT",
-      "dependencies": {
-        "nice-try": "^1.0.4",
-        "path-key": "^2.0.1",
-        "semver": "^5.5.0",
-        "shebang-command": "^1.2.0",
-        "which": "^1.2.9"
-      },
-      "engines": {
-        "node": ">=4.8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/execa": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
-      "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
-      "license": "MIT",
-      "dependencies": {
-        "cross-spawn": "^6.0.0",
-        "get-stream": "^4.0.0",
-        "is-stream": "^1.1.0",
-        "npm-run-path": "^2.0.0",
-        "p-finally": "^1.0.0",
-        "signal-exit": "^3.0.0",
-        "strip-eof": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/default-gateway/node_modules/get-stream": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
-      "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
-      "license": "MIT",
-      "dependencies": {
-        "pump": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/default-gateway/node_modules/is-stream": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
-      "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/default-gateway/node_modules/npm-run-path": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
-      "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==",
-      "license": "MIT",
-      "dependencies": {
-        "path-key": "^2.0.0"
+        "execa": "^5.0.0"
       },
       "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/default-gateway/node_modules/path-key": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
-      "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/default-gateway/node_modules/semver": {
-      "version": "5.7.2",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
-      "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
-      "license": "ISC",
-      "bin": {
-        "semver": "bin/semver"
-      }
-    },
-    "node_modules/default-gateway/node_modules/shebang-command": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
-      "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
-      "license": "MIT",
-      "dependencies": {
-        "shebang-regex": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/default-gateway/node_modules/shebang-regex": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
-      "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/default-gateway/node_modules/which": {
-      "version": "1.3.1",
-      "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
-      "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
-      "license": "ISC",
-      "dependencies": {
-        "isexe": "^2.0.0"
-      },
-      "bin": {
-        "which": "bin/which"
+        "node": ">= 10"
       }
     },
     "node_modules/defaults": {
@@ -19759,7 +19705,7 @@
     },
     "node_modules/define-data-property": {
       "version": "1.1.4",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "es-define-property": "^1.0.0",
@@ -19888,6 +19834,7 @@
     },
     "node_modules/delayed-stream": {
       "version": "1.0.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=0.4.0"
@@ -19904,10 +19851,6 @@
       "dev": true,
       "license": "MIT"
     },
-    "node_modules/denodeify": {
-      "version": "1.2.1",
-      "license": "MIT"
-    },
     "node_modules/depd": {
       "version": "2.0.0",
       "license": "MIT",
@@ -20007,6 +19950,7 @@
     },
     "node_modules/dir-glob": {
       "version": "3.0.1",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "path-type": "^4.0.0"
@@ -20242,20 +20186,6 @@
         "url": "https://dotenvx.com"
       }
     },
-    "node_modules/dunder-proto": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
-      "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
-      "license": "MIT",
-      "dependencies": {
-        "call-bind-apply-helpers": "^1.0.1",
-        "es-errors": "^1.3.0",
-        "gopd": "^1.2.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      }
-    },
     "node_modules/duplexer": {
       "version": "0.1.2",
       "dev": true,
@@ -20580,6 +20510,7 @@
     },
     "node_modules/end-of-stream": {
       "version": "1.4.4",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "once": "^1.4.0"
@@ -20627,7 +20558,7 @@
     },
     "node_modules/env-paths": {
       "version": "2.2.1",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -20635,7 +20566,7 @@
     },
     "node_modules/envinfo": {
       "version": "7.13.0",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "bin": {
         "envinfo": "dist/cli.js"
@@ -20644,12 +20575,6 @@
         "node": ">=4"
       }
     },
-    "node_modules/eol": {
-      "version": "0.9.1",
-      "resolved": "https://registry.npmjs.org/eol/-/eol-0.9.1.tgz",
-      "integrity": "sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==",
-      "license": "MIT"
-    },
     "node_modules/err-code": {
       "version": "2.0.3",
       "dev": true,
@@ -20760,16 +20685,19 @@
       }
     },
     "node_modules/es-define-property": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
-      "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
+      "version": "1.0.0",
+      "devOptional": true,
       "license": "MIT",
+      "dependencies": {
+        "get-intrinsic": "^1.2.4"
+      },
       "engines": {
         "node": ">= 0.4"
       }
     },
     "node_modules/es-errors": {
       "version": "1.3.0",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.4"
@@ -20819,9 +20747,8 @@
       "license": "MIT"
     },
     "node_modules/es-object-atoms": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
-      "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
+      "version": "1.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "es-errors": "^1.3.0"
@@ -20831,15 +20758,13 @@
       }
     },
     "node_modules/es-set-tostringtag": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
-      "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
+      "version": "2.0.3",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
-        "es-errors": "^1.3.0",
-        "get-intrinsic": "^1.2.6",
+        "get-intrinsic": "^1.2.4",
         "has-tostringtag": "^1.0.2",
-        "hasown": "^2.0.2"
+        "hasown": "^2.0.1"
       },
       "engines": {
         "node": ">= 0.4"
@@ -22420,6 +22345,7 @@
     },
     "node_modules/esutils": {
       "version": "2.0.3",
+      "dev": true,
       "license": "BSD-2-Clause",
       "engines": {
         "node": ">=0.10.0"
@@ -22459,7 +22385,6 @@
     },
     "node_modules/execa": {
       "version": "5.1.1",
-      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "cross-spawn": "^7.0.3",
@@ -22532,45 +22457,6 @@
         "ua-parser-js": "^1.0.38"
       }
     },
-    "node_modules/expensify-common/node_modules/react": {
-      "version": "16.12.0",
-      "resolved": "https://registry.npmjs.org/react/-/react-16.12.0.tgz",
-      "integrity": "sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA==",
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0",
-        "object-assign": "^4.1.1",
-        "prop-types": "^15.6.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/expensify-common/node_modules/react-dom": {
-      "version": "16.12.0",
-      "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.12.0.tgz",
-      "integrity": "sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw==",
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0",
-        "object-assign": "^4.1.1",
-        "prop-types": "^15.6.2",
-        "scheduler": "^0.18.0"
-      },
-      "peerDependencies": {
-        "react": "^16.0.0"
-      }
-    },
-    "node_modules/expensify-common/node_modules/scheduler": {
-      "version": "0.18.0",
-      "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.18.0.tgz",
-      "integrity": "sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ==",
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0",
-        "object-assign": "^4.1.1"
-      }
-    },
     "node_modules/expensify-common/node_modules/semver": {
       "version": "7.6.3",
       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
@@ -22610,27 +22496,27 @@
       }
     },
     "node_modules/expo": {
-      "version": "52.0.41",
-      "resolved": "https://registry.npmjs.org/expo/-/expo-52.0.41.tgz",
-      "integrity": "sha512-qFdt1l2ltj5XWf1tnQ5UidWkaNQWf3CbhldjVb/ui/iGp1x038W7QUhT6BwaCOY6N9yuCZKnFS4Uk9Cxwfsc+w==",
+      "version": "53.0.0-preview.7",
+      "resolved": "https://registry.npmjs.org/expo/-/expo-53.0.0-preview.7.tgz",
+      "integrity": "sha512-jeaKeV+RhmlkjZmtlCNYhzld8Po9kRkwIAknUeMOFUyLMVT3ZWzjGxgU+A5YfO2FovKvWEtMrDGJ1MJyzHroQA==",
       "license": "MIT",
       "dependencies": {
         "@babel/runtime": "^7.20.0",
-        "@expo/cli": "0.22.22",
-        "@expo/config": "~10.0.11",
-        "@expo/config-plugins": "~9.0.17",
-        "@expo/fingerprint": "0.11.11",
-        "@expo/metro-config": "0.19.12",
+        "@expo/cli": "0.24.2",
+        "@expo/config": "~11.0.3",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/fingerprint": "0.12.2",
+        "@expo/metro-config": "0.20.4",
         "@expo/vector-icons": "^14.0.0",
-        "babel-preset-expo": "~12.0.9",
-        "expo-asset": "~11.0.5",
-        "expo-constants": "~17.0.8",
-        "expo-file-system": "~18.0.12",
-        "expo-font": "~13.0.4",
-        "expo-keep-awake": "~14.0.3",
-        "expo-modules-autolinking": "2.0.8",
-        "expo-modules-core": "2.2.3",
-        "fbemitter": "^3.0.0",
+        "babel-preset-expo": "~13.1.4",
+        "expo-asset": "~11.1.2",
+        "expo-constants": "~17.1.2",
+        "expo-file-system": "~18.1.4",
+        "expo-font": "~13.1.2",
+        "expo-keep-awake": "~14.1.2",
+        "expo-modules-autolinking": "2.1.4",
+        "expo-modules-core": "2.3.5",
+        "react-native-edge-to-edge": "1.6.0",
         "web-streams-polyfill": "^3.3.2",
         "whatwg-url-without-unicode": "8.0.0-3"
       },
@@ -22659,29 +22545,27 @@
       }
     },
     "node_modules/expo-asset": {
-      "version": "11.0.5",
-      "resolved": "https://registry.npmjs.org/expo-asset/-/expo-asset-11.0.5.tgz",
-      "integrity": "sha512-TL60LmMBGVzs3NQcO8ylWqBumMh4sx0lmeJsn7+9C88fylGDhyyVnKZ1PyTXo9CVDBkndutZx2JUEQWM9BaiXw==",
+      "version": "11.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-asset/-/expo-asset-11.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-YUkskawIIDyGVcbPZIPYg8rdlGVuSAn6Nxo57dwFHV3rdijDZyPYqT0h6xm8Qlv4jW+nmV5fFp7ynXEh+iZi/A==",
       "license": "MIT",
       "dependencies": {
-        "@expo/image-utils": "^0.6.5",
-        "expo-constants": "~17.0.8",
-        "invariant": "^2.2.4",
-        "md5-file": "^3.2.3"
+        "@expo/image-utils": "0.7.1-canary-20250408-7f0ab53",
+        "expo-constants": "17.1.1-canary-20250408-7f0ab53"
       },
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react": "*",
         "react-native": "*"
       }
     },
     "node_modules/expo-av": {
-      "version": "15.0.2",
-      "resolved": "https://registry.npmjs.org/expo-av/-/expo-av-15.0.2.tgz",
-      "integrity": "sha512-AHIHXdqLgK1dfHZF0JzX3YSVySGMrWn9QtPzaVjw54FAzvXfMt4sIoq4qRL/9XWCP9+ICcCs/u3EcvmxQjrfcA==",
+      "version": "15.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-av/-/expo-av-15.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-zkwHrL+mbZ+Wnkc9eTF5IfUcVcRhuTr0G1myUFEBwChbS0CaDPcRAoSUZLeycWZerM4odLAiOpb6OXJWpAB6oA==",
       "license": "MIT",
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react": "*",
         "react-native": "*",
         "react-native-web": "*"
@@ -22693,23 +22577,23 @@
       }
     },
     "node_modules/expo-constants": {
-      "version": "17.0.8",
-      "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-17.0.8.tgz",
-      "integrity": "sha512-XfWRyQAf1yUNgWZ1TnE8pFBMqGmFP5Gb+SFSgszxDdOoheB/NI5D4p7q86kI2fvGyfTrxAe+D+74nZkfsGvUlg==",
+      "version": "17.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-17.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-drJt853OdspezrKfaGkm9oomqvddZdXYdy01Ct4IVU19ToNmNquIfBpB6eBt+DF9JErWipAdFkZQnV4lc7PjMg==",
       "license": "MIT",
       "dependencies": {
-        "@expo/config": "~10.0.11",
-        "@expo/env": "~0.4.2"
+        "@expo/config": "11.0.1-canary-20250408-7f0ab53",
+        "@expo/env": "1.0.1-canary-20250408-7f0ab53"
       },
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react-native": "*"
       }
     },
     "node_modules/expo-file-system": {
-      "version": "18.0.12",
-      "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-18.0.12.tgz",
-      "integrity": "sha512-HAkrd/mb8r+G3lJ9MzmGeuW2B+BxQR1joKfeCyY4deLl1zoZ48FrAWjgZjHK9aHUVhJ0ehzInu/NQtikKytaeg==",
+      "version": "18.1.4",
+      "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-18.1.4.tgz",
+      "integrity": "sha512-kT4t/hRlfFFOMZxc4Zn0lEbhuFy9MDK0NbRAyTxGo7kZjWYlhXBmg2oYiaFyJnsvOgm1RVJ/QPJLO7O52qG7Nw==",
       "license": "MIT",
       "dependencies": {
         "web-streams-polyfill": "^3.3.2"
@@ -22720,25 +22604,25 @@
       }
     },
     "node_modules/expo-font": {
-      "version": "13.0.4",
-      "resolved": "https://registry.npmjs.org/expo-font/-/expo-font-13.0.4.tgz",
-      "integrity": "sha512-eAP5hyBgC8gafFtprsz0HMaB795qZfgJWqTmU0NfbSin1wUuVySFMEPMOrTkTgmazU73v4Cb4x7p86jY1XXYUw==",
+      "version": "13.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-font/-/expo-font-13.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-BbADWDGsLyUlWI3caeRoMgQo4mGw+69yJsPWXeMY+H5CIcrDqLF7pFvn/zy3rtFBM5cytyAOuY5S3mqVAKhFlA==",
       "license": "MIT",
       "dependencies": {
         "fontfaceobserver": "^2.1.0"
       },
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react": "*"
       }
     },
     "node_modules/expo-image": {
-      "version": "2.0.4",
-      "resolved": "https://registry.npmjs.org/expo-image/-/expo-image-2.0.4.tgz",
-      "integrity": "sha512-oIVSlV/BpBJbI9Anf8RjraGJXDWSJxNKxdXkYBJ31XrQaUstOM7OmsVKjOK40ZFZHIz3rx5SBJWK5w52Uz+/bg==",
+      "version": "2.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-image/-/expo-image-2.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-EJ1CusT34jnq+qPCaNKXMoAi8n7M9GYwcluLBXzccrsuCqQa0TBJWA+h7sugaKZnsFGLHeU/szUwNL2nVYPDcQ==",
       "license": "MIT",
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react": "*",
         "react-native": "*",
         "react-native-web": "*"
@@ -22750,29 +22634,30 @@
       }
     },
     "node_modules/expo-image-loader": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-5.0.0.tgz",
-      "integrity": "sha512-Eg+5FHtyzv3Jjw9dHwu2pWy4xjf8fu3V0Asyy42kO+t/FbvW/vjUixpTjPtgKQLQh+2/9Nk4JjFDV6FwCnF2ZA==",
+      "version": "5.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-5.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-v7+yy5DvKh6TlsQNo3TPtS9R71eGzm5NnoOg36/ch9UcsL+b78oEVQeQRtLg3cYW5L59+RlTW+izTb8QuXHYeQ==",
+      "license": "MIT",
       "peerDependencies": {
-        "expo": "*"
+        "expo": "53.0.0-canary-20250408-7f0ab53"
       }
     },
     "node_modules/expo-image-manipulator": {
-      "version": "13.0.6",
-      "resolved": "https://registry.npmjs.org/expo-image-manipulator/-/expo-image-manipulator-13.0.6.tgz",
-      "integrity": "sha512-Rz8Kcfx1xYm0AsIDi6zfKYUDnwCP8edgYXWb00KAkzOF8bDxwzTrnvESWhCiveM4IB3fojjLpNeENME34p3bzA==",
+      "version": "13.1.1-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/expo-image-manipulator/-/expo-image-manipulator-13.1.1-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-69k3vV5nRZ34QBDq16UDVPNWe9n7+a1FbdyWNubgwV5n0nF/cTH75KBv265bh7BnktzzOxgTO2GCL27SWQ96LA==",
       "license": "MIT",
       "dependencies": {
-        "expo-image-loader": "~5.0.0"
+        "expo-image-loader": "5.1.1-canary-20250408-7f0ab53"
       },
       "peerDependencies": {
-        "expo": "*"
+        "expo": "53.0.0-canary-20250408-7f0ab53"
       }
     },
     "node_modules/expo-keep-awake": {
-      "version": "14.0.3",
-      "resolved": "https://registry.npmjs.org/expo-keep-awake/-/expo-keep-awake-14.0.3.tgz",
-      "integrity": "sha512-6Jh94G6NvTZfuLnm2vwIpKe3GdOiVBuISl7FI8GqN0/9UOg9E0WXXp5cDcfAG8bn80RfgLJS8P7EPUGTZyOvhg==",
+      "version": "14.1.2",
+      "resolved": "https://registry.npmjs.org/expo-keep-awake/-/expo-keep-awake-14.1.2.tgz",
+      "integrity": "sha512-Du82WEFmwnBdodn7NDo87RpzpAHcmlgRDhoUrEirbA0CGDWlQMeVAfZPjtLt+jaRGvXSMynG3tszP1VdO9QdDw==",
       "license": "MIT",
       "peerDependencies": {
         "expo": "*",
@@ -22780,17 +22665,16 @@
       }
     },
     "node_modules/expo-modules-autolinking": {
-      "version": "2.0.8",
-      "resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-2.0.8.tgz",
-      "integrity": "sha512-DezgnEYFQYic8hKGhkbztBA3QUmSftjaNDIKNAtS2iGJmzCcNIkatjN2slFDSWjSTNo8gOvPQyMKfyHWFvLpOQ==",
+      "version": "2.1.4",
+      "resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-2.1.4.tgz",
+      "integrity": "sha512-SakSztBZIHLpTMeTO3FzpiDmcTy4ytgAZ0sBEPm3fLhQHRg070XEa+b4zXZcnJ8zUOJeQ7zTdyecABaG3gtBRg==",
       "license": "MIT",
       "dependencies": {
         "@expo/spawn-async": "^1.7.2",
         "chalk": "^4.1.0",
         "commander": "^7.2.0",
-        "fast-glob": "^3.2.5",
         "find-up": "^5.0.0",
-        "fs-extra": "^9.1.0",
+        "glob": "^10.4.2",
         "require-from-string": "^2.0.2",
         "resolve-from": "^5.0.0"
       },
@@ -22813,6 +22697,15 @@
         "url": "https://github.com/chalk/ansi-styles?sponsor=1"
       }
     },
+    "node_modules/expo-modules-autolinking/node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "license": "MIT",
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
     "node_modules/expo-modules-autolinking/node_modules/chalk": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
@@ -22856,6 +22749,26 @@
         "node": ">= 10"
       }
     },
+    "node_modules/expo-modules-autolinking/node_modules/glob": {
+      "version": "10.4.5",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+      "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+      "license": "ISC",
+      "dependencies": {
+        "foreground-child": "^3.1.0",
+        "jackspeak": "^3.1.2",
+        "minimatch": "^9.0.4",
+        "minipass": "^7.1.2",
+        "package-json-from-dist": "^1.0.0",
+        "path-scurry": "^1.11.1"
+      },
+      "bin": {
+        "glob": "dist/esm/bin.mjs"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
     "node_modules/expo-modules-autolinking/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -22865,6 +22778,30 @@
         "node": ">=8"
       }
     },
+    "node_modules/expo-modules-autolinking/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "license": "ISC",
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/expo-modules-autolinking/node_modules/minipass": {
+      "version": "7.1.2",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
+      "license": "ISC",
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      }
+    },
     "node_modules/expo-modules-autolinking/node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -22878,14 +22815,318 @@
       }
     },
     "node_modules/expo-modules-core": {
-      "version": "2.2.3",
-      "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-2.2.3.tgz",
-      "integrity": "sha512-01QqZzpP/wWlxnNly4G06MsOBUTbMDj02DQigZoXfDh80vd/rk3/uVXqnZgOdLSggTs6DnvOgAUy0H2q30XdUg==",
+      "version": "2.3.5",
+      "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-2.3.5.tgz",
+      "integrity": "sha512-fnLzwaMqYzjCnufWMaukWa+xQhxfp2pacmg2ZmJHpEr5JIC6WZvOZ7Y+FPyIUwcnU1h3t5rtG6bNCG3pYtuymw==",
       "license": "MIT",
       "dependencies": {
         "invariant": "^2.2.4"
       }
     },
+    "node_modules/expo/node_modules/@babel/code-frame": {
+      "version": "7.10.4",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+      "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/highlight": "^7.10.4"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/config": {
+      "version": "11.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/config/-/config-11.0.3.tgz",
+      "integrity": "sha512-VOb7II8xTqewN7axNKusZDidjkS8R2/wa7yep3fFfBzdyXvy1mTzpeAWDsMY1g77MOB/Byswy0MoP/Mi1cWkww==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "@expo/config-plugins": "~9.1.4",
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "^9.1.2",
+        "deepmerge": "^4.3.1",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "require-from-string": "^2.0.2",
+        "resolve-from": "^5.0.0",
+        "resolve-workspace-root": "^2.0.0",
+        "semver": "^7.6.0",
+        "slugify": "^1.3.4",
+        "sucrase": "3.35.0"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/config-plugins": {
+      "version": "9.1.4",
+      "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-9.1.4.tgz",
+      "integrity": "sha512-1KNE6HvPotIlD4AzlrwVlzi4DmuVJWPYAwC6jM6wYpqo2HDCS5fng02Om7JfZgGmXJC1LM0anKDZu2u5gQx3Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/config-types": "^53.0.0-preview.3",
+        "@expo/json-file": "~9.1.2",
+        "@expo/plist": "^0.3.2",
+        "@expo/sdk-runtime-versions": "^1.0.0",
+        "chalk": "^4.1.2",
+        "debug": "^4.3.5",
+        "getenv": "^1.0.0",
+        "glob": "^10.4.2",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.5.4",
+        "slash": "^3.0.0",
+        "slugify": "^1.6.6",
+        "xcode": "^3.0.1",
+        "xml2js": "0.6.0"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/config-types": {
+      "version": "53.0.0-preview.3",
+      "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-53.0.0-preview.3.tgz",
+      "integrity": "sha512-0/7J4UtaJzf0Lwj++y63K7JEv091RcUk5Q6WWbIzsAOG4yJ7hF8ncJaaGVWYzcTIWHvv7wScLKUTj7jSmy9Kvg==",
+      "license": "MIT"
+    },
+    "node_modules/expo/node_modules/@expo/env": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/@expo/env/-/env-1.0.3.tgz",
+      "integrity": "sha512-94l5HV9FSCMt4dnFykFmcfh94NmajyaoYXY2Z36pTdR5UbgCtR1brAhlvJ/5Ma8eHbzdqvmta+LXA9LHNKpyww==",
+      "license": "MIT",
+      "dependencies": {
+        "chalk": "^4.0.0",
+        "debug": "^4.3.4",
+        "dotenv": "~16.4.5",
+        "dotenv-expand": "~11.0.6",
+        "getenv": "^1.0.0"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/image-utils": {
+      "version": "0.7.2",
+      "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.7.2.tgz",
+      "integrity": "sha512-j5/+1Gfg03WPnzWrbOZ6tl0zuUE33IVRfs8Sl7gZhjtgczbYC8IUXHSA2MsLXTrPlRXzZXBKm3toPjwbZulqlA==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/spawn-async": "^1.7.2",
+        "chalk": "^4.0.0",
+        "getenv": "^1.0.0",
+        "jimp-compact": "0.16.1",
+        "parse-png": "^2.1.0",
+        "resolve-from": "^5.0.0",
+        "semver": "^7.6.0",
+        "temp-dir": "~2.0.0",
+        "unique-string": "~2.0.0"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/json-file": {
+      "version": "9.1.2",
+      "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-9.1.2.tgz",
+      "integrity": "sha512-J/ncQd3dTXaHddfHCXw5A95yVLD6myp0tfI3BWPYJQdwrhIlL5fm2NVOqCcJIBM/NC0l6J+Lfw/ZCeZZmT70Gg==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "~7.10.4",
+        "json5": "^2.2.3"
+      }
+    },
+    "node_modules/expo/node_modules/@expo/plist": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.3.2.tgz",
+      "integrity": "sha512-wJ4ifg8AIQN3xEDrAJ7mrd0vSsFP7bFuuJtcXBoE4ORrt3AE+0mSQAAXEjb7eKMsGaxiSZwHqrkqYAzv5Ypidw==",
+      "license": "MIT",
+      "dependencies": {
+        "@xmldom/xmldom": "^0.8.8",
+        "base64-js": "^1.2.3",
+        "xmlbuilder": "^15.1.1"
+      }
+    },
+    "node_modules/expo/node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/expo/node_modules/ansi-styles": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+      "license": "MIT",
+      "dependencies": {
+        "color-convert": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/expo/node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "license": "MIT",
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
+    "node_modules/expo/node_modules/chalk": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+      "license": "MIT",
+      "dependencies": {
+        "ansi-styles": "^4.1.0",
+        "supports-color": "^7.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/chalk?sponsor=1"
+      }
+    },
+    "node_modules/expo/node_modules/color-convert": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+      "license": "MIT",
+      "dependencies": {
+        "color-name": "~1.1.4"
+      },
+      "engines": {
+        "node": ">=7.0.0"
+      }
+    },
+    "node_modules/expo/node_modules/color-name": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+      "license": "MIT"
+    },
+    "node_modules/expo/node_modules/expo-asset": {
+      "version": "11.1.2",
+      "resolved": "https://registry.npmjs.org/expo-asset/-/expo-asset-11.1.2.tgz",
+      "integrity": "sha512-9eozXyFtpKltzcr7P21uVz0FvGXD3omOzAN/u6NCAw0b0RqkwKMQbwF706Qzx52Bj0ogE7xNfXlLvdIKq/Caig==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/image-utils": "^0.7.2",
+        "expo-constants": "~17.1.2"
+      },
+      "peerDependencies": {
+        "expo": "*",
+        "react": "*",
+        "react-native": "*"
+      }
+    },
+    "node_modules/expo/node_modules/expo-constants": {
+      "version": "17.1.2",
+      "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-17.1.2.tgz",
+      "integrity": "sha512-zKKjQlRJ6td2+wuf+OeTd/vJmzq512oJDIAMhpcQx3PhvmHu65RnWt7tpRhDTAgqNcr8hXbDUTiXF31BWuxzWw==",
+      "license": "MIT",
+      "dependencies": {
+        "@expo/config": "~11.0.3",
+        "@expo/env": "~1.0.3"
+      },
+      "peerDependencies": {
+        "expo": "*",
+        "react-native": "*"
+      }
+    },
+    "node_modules/expo/node_modules/expo-font": {
+      "version": "13.1.2",
+      "resolved": "https://registry.npmjs.org/expo-font/-/expo-font-13.1.2.tgz",
+      "integrity": "sha512-8I8nZsPsaFzSu9LmJDokKnN8wFjvzhrc26YPKcXRyTPjBv+WZA2JdlbeUfSaFE4TFBAMWIr2jpPxdxhGaGdoQw==",
+      "license": "MIT",
+      "dependencies": {
+        "fontfaceobserver": "^2.1.0"
+      },
+      "peerDependencies": {
+        "expo": "*",
+        "react": "*"
+      }
+    },
+    "node_modules/expo/node_modules/glob": {
+      "version": "10.4.5",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+      "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+      "license": "ISC",
+      "dependencies": {
+        "foreground-child": "^3.1.0",
+        "jackspeak": "^3.1.2",
+        "minimatch": "^9.0.4",
+        "minipass": "^7.1.2",
+        "package-json-from-dist": "^1.0.0",
+        "path-scurry": "^1.11.1"
+      },
+      "bin": {
+        "glob": "dist/esm/bin.mjs"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/expo/node_modules/has-flag": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/expo/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "license": "ISC",
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/expo/node_modules/minipass": {
+      "version": "7.1.2",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
+      "license": "ISC",
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      }
+    },
+    "node_modules/expo/node_modules/semver": {
+      "version": "7.7.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+      "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
+      "license": "ISC",
+      "bin": {
+        "semver": "bin/semver.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/expo/node_modules/supports-color": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+      "license": "MIT",
+      "dependencies": {
+        "has-flag": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/expo/node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=8.0"
+      }
+    },
     "node_modules/exponential-backoff": {
       "version": "3.1.1",
       "license": "Apache-2.0"
@@ -23068,6 +23309,7 @@
       "version": "3.3.3",
       "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
       "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "@nodelib/fs.stat": "^2.0.2",
@@ -23104,7 +23346,7 @@
       "version": "4.4.1",
       "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
       "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
-      "dev": true,
+      "devOptional": true,
       "funding": [
         {
           "type": "github",
@@ -23132,6 +23374,7 @@
     },
     "node_modules/fastq": {
       "version": "1.13.0",
+      "devOptional": true,
       "license": "ISC",
       "dependencies": {
         "reusify": "^1.0.4"
@@ -23155,13 +23398,6 @@
         "bser": "2.1.1"
       }
     },
-    "node_modules/fbemitter": {
-      "version": "3.0.0",
-      "license": "BSD-3-Clause",
-      "dependencies": {
-        "fbjs": "^3.0.0"
-      }
-    },
     "node_modules/fbjs": {
       "version": "3.0.4",
       "license": "MIT",
@@ -23197,12 +23433,6 @@
         "pend": "~1.2.0"
       }
     },
-    "node_modules/fetch-retry": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/fetch-retry/-/fetch-retry-4.1.1.tgz",
-      "integrity": "sha512-e6eB7zN6UBSwGVwrbWVH+gdLnkW9WwHhmq2YDK1Sh30pzx1onRVGBvogTlUeWxwTa+L86NYdo4hFkh7O8ZjSnA==",
-      "license": "MIT"
-    },
     "node_modules/fflate": {
       "version": "0.8.2",
       "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz",
@@ -23317,6 +23547,7 @@
     },
     "node_modules/find-cache-dir": {
       "version": "2.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "commondir": "^1.0.1",
@@ -23329,6 +23560,7 @@
     },
     "node_modules/find-cache-dir/node_modules/find-up": {
       "version": "3.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "locate-path": "^3.0.0"
@@ -23339,6 +23571,7 @@
     },
     "node_modules/find-cache-dir/node_modules/locate-path": {
       "version": "3.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "p-locate": "^3.0.0",
@@ -23350,6 +23583,7 @@
     },
     "node_modules/find-cache-dir/node_modules/p-limit": {
       "version": "2.3.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "p-try": "^2.0.0"
@@ -23363,6 +23597,7 @@
     },
     "node_modules/find-cache-dir/node_modules/p-locate": {
       "version": "3.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "p-limit": "^2.0.0"
@@ -23373,6 +23608,7 @@
     },
     "node_modules/find-cache-dir/node_modules/pkg-dir": {
       "version": "3.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "find-up": "^3.0.0"
@@ -23433,6 +23669,7 @@
     },
     "node_modules/flow-parser": {
       "version": "0.230.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=0.4.0"
@@ -23661,21 +23898,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/form-data": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.3.tgz",
-      "integrity": "sha512-q5YBMeWy6E2Un0nMGWMgI65MAKtaylxfNJGJxpGh45YDciZB4epbWpaAfImil6CPAPTYB4sh0URQNDRIZG5F2w==",
-      "license": "MIT",
-      "dependencies": {
-        "asynckit": "^0.4.0",
-        "combined-stream": "^1.0.8",
-        "es-set-tostringtag": "^2.1.0",
-        "mime-types": "^2.1.35"
-      },
-      "engines": {
-        "node": ">= 6"
-      }
-    },
     "node_modules/form-data-encoder": {
       "version": "1.7.2",
       "dev": true,
@@ -23744,6 +23966,7 @@
     },
     "node_modules/fs-extra": {
       "version": "9.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "at-least-node": "^1.0.0",
@@ -23757,6 +23980,7 @@
     },
     "node_modules/fs-minipass": {
       "version": "2.1.0",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "minipass": "^3.0.0"
@@ -23963,21 +24187,15 @@
       }
     },
     "node_modules/get-intrinsic": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
-      "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
+      "version": "1.2.4",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
-        "call-bind-apply-helpers": "^1.0.2",
-        "es-define-property": "^1.0.1",
         "es-errors": "^1.3.0",
-        "es-object-atoms": "^1.1.1",
         "function-bind": "^1.1.2",
-        "get-proto": "^1.0.1",
-        "gopd": "^1.2.0",
-        "has-symbols": "^1.1.0",
-        "hasown": "^2.0.2",
-        "math-intrinsics": "^1.1.0"
+        "has-proto": "^1.0.1",
+        "has-symbols": "^1.0.3",
+        "hasown": "^2.0.0"
       },
       "engines": {
         "node": ">= 0.4"
@@ -23993,28 +24211,6 @@
         "node": ">=8.0.0"
       }
     },
-    "node_modules/get-port": {
-      "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz",
-      "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/get-proto": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
-      "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
-      "license": "MIT",
-      "dependencies": {
-        "dunder-proto": "^1.0.1",
-        "es-object-atoms": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      }
-    },
     "node_modules/get-stream": {
       "version": "6.0.1",
       "license": "MIT",
@@ -24105,6 +24301,7 @@
     },
     "node_modules/glob-parent": {
       "version": "5.1.2",
+      "devOptional": true,
       "license": "ISC",
       "dependencies": {
         "is-glob": "^4.0.1"
@@ -24157,6 +24354,7 @@
     },
     "node_modules/globby": {
       "version": "11.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "array-union": "^2.1.0",
@@ -24247,12 +24445,11 @@
       }
     },
     "node_modules/gopd": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
-      "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
+      "version": "1.0.1",
+      "devOptional": true,
       "license": "MIT",
-      "engines": {
-        "node": ">= 0.4"
+      "dependencies": {
+        "get-intrinsic": "^1.1.3"
       },
       "funding": {
         "url": "https://github.com/sponsors/ljharb"
@@ -24358,7 +24555,7 @@
     },
     "node_modules/has-property-descriptors": {
       "version": "1.0.2",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "es-define-property": "^1.0.0"
@@ -24369,7 +24566,7 @@
     },
     "node_modules/has-proto": {
       "version": "1.0.3",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.4"
@@ -24379,9 +24576,8 @@
       }
     },
     "node_modules/has-symbols": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
-      "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
+      "version": "1.0.3",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.4"
@@ -24392,6 +24588,7 @@
     },
     "node_modules/has-tostringtag": {
       "version": "1.0.2",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "has-symbols": "^1.0.3"
@@ -24822,7 +25019,6 @@
     },
     "node_modules/human-signals": {
       "version": "2.1.0",
-      "devOptional": true,
       "license": "Apache-2.0",
       "engines": {
         "node": ">=10.17.0"
@@ -24845,7 +25041,9 @@
       }
     },
     "node_modules/hyphenate-style-name": {
-      "version": "1.0.4",
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.1.0.tgz",
+      "integrity": "sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==",
       "license": "BSD-3-Clause"
     },
     "node_modules/iconv-corefoundation": {
@@ -24904,6 +25102,7 @@
     },
     "node_modules/ignore": {
       "version": "5.3.1",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">= 4"
@@ -24930,7 +25129,7 @@
     },
     "node_modules/import-fresh": {
       "version": "3.3.0",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "parent-module": "^1.0.0",
@@ -24945,7 +25144,7 @@
     },
     "node_modules/import-fresh/node_modules/resolve-from": {
       "version": "4.0.0",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=4"
@@ -24978,6 +25177,7 @@
     },
     "node_modules/indent-string": {
       "version": "4.0.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -25007,23 +25207,28 @@
       "license": "ISC"
     },
     "node_modules/inline-style-prefixer": {
-      "version": "6.0.1",
+      "version": "7.0.1",
+      "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-7.0.1.tgz",
+      "integrity": "sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==",
       "license": "MIT",
       "dependencies": {
-        "css-in-js-utils": "^2.0.0"
+        "css-in-js-utils": "^3.1.0"
       }
     },
     "node_modules/internal-ip": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
-      "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==",
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-6.1.0.tgz",
+      "integrity": "sha512-Cs1iaqrl3z3KJ2ejWyfKkMcuv9NTEJWXtUBSGVc+Eg9BjBLS0k11CsOkf/p5quOkVhhRuq9zwZ/PuJpPUuDP9Q==",
       "license": "MIT",
       "dependencies": {
-        "default-gateway": "^4.2.0",
-        "ipaddr.js": "^1.9.0"
+        "default-gateway": "^6.0.0",
+        "ipaddr.js": "^1.9.1"
       },
       "engines": {
-        "node": ">=6"
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sindresorhus/internal-ip?sponsor=1"
       }
     },
     "node_modules/internal-slot": {
@@ -25071,15 +25276,6 @@
       "dev": true,
       "license": "BSD-3-Clause"
     },
-    "node_modules/ip-regex": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
-      "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=4"
-      }
-    },
     "node_modules/ipaddr.js": {
       "version": "1.9.1",
       "license": "MIT",
@@ -25172,12 +25368,6 @@
         "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "license": "MIT"
-    },
     "node_modules/is-builtin-module": {
       "version": "3.2.1",
       "dev": true,
@@ -25296,6 +25486,7 @@
     },
     "node_modules/is-extglob": {
       "version": "2.1.1",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=0.10.0"
@@ -25343,6 +25534,7 @@
     },
     "node_modules/is-glob": {
       "version": "4.0.3",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "is-extglob": "^2.1.1"
@@ -25449,6 +25641,7 @@
     },
     "node_modules/is-path-cwd": {
       "version": "2.2.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -26656,18 +26849,17 @@
       }
     },
     "node_modules/jest-expo": {
-      "version": "52.0.3",
-      "resolved": "https://registry.npmjs.org/jest-expo/-/jest-expo-52.0.3.tgz",
-      "integrity": "sha512-z2gptekrQ0FIichvRhrES31X9twtCCTzu00sWnPyFaQuWQdoyZiCj2WFPqVrpgIgNYLFIEGhc0VP9rUT9johJw==",
+      "version": "53.0.0-canary-20250408-7f0ab53",
+      "resolved": "https://registry.npmjs.org/jest-expo/-/jest-expo-53.0.0-canary-20250408-7f0ab53.tgz",
+      "integrity": "sha512-UsLLZaDXjPGMXw5X/VgO6Oz9hL6U7EdZLnlRNFB6x+pCdWmhvoSi/YvJgHEGLYEU3qkj81P46+ktnd6LD/zogw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@expo/config": "~10.0.8",
-        "@expo/json-file": "^9.0.1",
+        "@expo/config": "11.0.1-canary-20250408-7f0ab53",
+        "@expo/json-file": "9.1.1-canary-20250408-7f0ab53",
         "@jest/create-cache-key-function": "^29.2.1",
         "@jest/globals": "^29.2.1",
         "babel-jest": "^29.2.1",
-        "fbemitter": "^3.0.0",
         "find-up": "^5.0.0",
         "jest-environment-jsdom": "^29.2.1",
         "jest-snapshot": "^29.2.1",
@@ -26675,8 +26867,8 @@
         "jest-watch-typeahead": "2.2.1",
         "json5": "^2.2.3",
         "lodash": "^4.17.19",
-        "react-server-dom-webpack": "19.0.0-rc-6230622a1a-20240610",
-        "react-test-renderer": "18.3.1",
+        "react-server-dom-webpack": "~19.0.0",
+        "react-test-renderer": "19.0.0",
         "server-only": "^0.0.1",
         "stacktrace-js": "^2.0.2"
       },
@@ -26684,7 +26876,7 @@
         "jest": "bin/jest.js"
       },
       "peerDependencies": {
-        "expo": "*",
+        "expo": "53.0.0-canary-20250408-7f0ab53",
         "react-native": "*"
       }
     },
@@ -27923,7 +28115,7 @@
       "version": "17.13.3",
       "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.3.tgz",
       "integrity": "sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause",
       "dependencies": {
         "@hapi/hoek": "^9.3.0",
@@ -27933,12 +28125,6 @@
         "@sideway/pinpoint": "^2.0.0"
       }
     },
-    "node_modules/join-component": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/join-component/-/join-component-1.1.0.tgz",
-      "integrity": "sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==",
-      "license": "MIT"
-    },
     "node_modules/jquery": {
       "version": "3.6.0",
       "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz",
@@ -27969,79 +28155,10 @@
       "dev": true,
       "license": "MIT"
     },
-    "node_modules/jsc-android": {
-      "version": "250231.0.0",
-      "license": "BSD-2-Clause"
-    },
     "node_modules/jsc-safe-url": {
       "version": "0.2.4",
       "license": "0BSD"
     },
-    "node_modules/jscodeshift": {
-      "version": "17.1.2",
-      "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-17.1.2.tgz",
-      "integrity": "sha512-uime4vFOiZ1o3ICT4Sm/AbItHEVw2oCxQ3a0egYVy3JMMOctxe07H3SKL1v175YqjMt27jn1N+3+Bj9SKDNgdQ==",
-      "license": "MIT",
-      "dependencies": {
-        "@babel/core": "^7.24.7",
-        "@babel/parser": "^7.24.7",
-        "@babel/plugin-transform-class-properties": "^7.24.7",
-        "@babel/plugin-transform-modules-commonjs": "^7.24.7",
-        "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7",
-        "@babel/plugin-transform-optional-chaining": "^7.24.7",
-        "@babel/plugin-transform-private-methods": "^7.24.7",
-        "@babel/preset-flow": "^7.24.7",
-        "@babel/preset-typescript": "^7.24.7",
-        "@babel/register": "^7.24.6",
-        "flow-parser": "0.*",
-        "graceful-fs": "^4.2.4",
-        "micromatch": "^4.0.7",
-        "neo-async": "^2.5.0",
-        "picocolors": "^1.0.1",
-        "recast": "^0.23.9",
-        "tmp": "^0.2.3",
-        "write-file-atomic": "^5.0.1"
-      },
-      "bin": {
-        "jscodeshift": "bin/jscodeshift.js"
-      },
-      "engines": {
-        "node": ">=16"
-      },
-      "peerDependencies": {
-        "@babel/preset-env": "^7.1.6"
-      },
-      "peerDependenciesMeta": {
-        "@babel/preset-env": {
-          "optional": true
-        }
-      }
-    },
-    "node_modules/jscodeshift/node_modules/signal-exit": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
-      "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
-      "license": "ISC",
-      "engines": {
-        "node": ">=14"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
-    "node_modules/jscodeshift/node_modules/write-file-atomic": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
-      "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
-      "license": "ISC",
-      "dependencies": {
-        "imurmurhash": "^0.1.4",
-        "signal-exit": "^4.0.1"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
     "node_modules/jsdoc-type-pratt-parser": {
       "version": "4.0.0",
       "dev": true,
@@ -28052,7 +28169,7 @@
     },
     "node_modules/jsesc": {
       "version": "2.5.2",
-      "devOptional": true,
+      "dev": true,
       "license": "MIT",
       "bin": {
         "jsesc": "bin/jsesc"
@@ -28137,6 +28254,7 @@
     },
     "node_modules/jsonfile": {
       "version": "6.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "universalify": "^2.0.0"
@@ -28244,8 +28362,10 @@
       }
     },
     "node_modules/launch-editor": {
-      "version": "2.6.1",
-      "dev": true,
+      "version": "2.10.0",
+      "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.10.0.tgz",
+      "integrity": "sha512-D7dBRJo/qcGX9xlvt/6wUYzQxjh5G1RvZPgPv8vi4KRU99DVQL/oW7tnVOCCTm2HGeo3C5HvGE5Yrh6UBoZ0vA==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "picocolors": "^1.0.0",
@@ -28684,6 +28804,8 @@
     },
     "node_modules/lodash.throttle": {
       "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz",
+      "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==",
       "license": "MIT"
     },
     "node_modules/lodash.transform": {
@@ -28781,7 +28903,7 @@
       "version": "0.7.1",
       "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz",
       "integrity": "sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "ansi-fragments": "^0.2.1",
@@ -28904,6 +29026,7 @@
     },
     "node_modules/make-dir": {
       "version": "2.1.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "pify": "^4.0.1",
@@ -28915,6 +29038,7 @@
     },
     "node_modules/make-dir/node_modules/semver": {
       "version": "5.7.2",
+      "dev": true,
       "license": "ISC",
       "bin": {
         "semver": "bin/semver"
@@ -29158,15 +29282,6 @@
         "node": ">=10"
       }
     },
-    "node_modules/math-intrinsics": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
-      "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
-      "license": "MIT",
-      "engines": {
-        "node": ">= 0.4"
-      }
-    },
     "node_modules/mathjs": {
       "version": "12.4.3",
       "dev": true,
@@ -29189,32 +29304,6 @@
         "node": ">= 18"
       }
     },
-    "node_modules/md5": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz",
-      "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==",
-      "license": "BSD-3-Clause",
-      "dependencies": {
-        "charenc": "0.0.2",
-        "crypt": "0.0.2",
-        "is-buffer": "~1.1.6"
-      }
-    },
-    "node_modules/md5-file": {
-      "version": "3.2.3",
-      "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-3.2.3.tgz",
-      "integrity": "sha512-3Tkp1piAHaworfcCgH0jKbTvj1jWWFgbvh2cXaNCgHwyTCBxxvD1Y04rmfpvdPm1P4oXMOpm6+2H7sr7v9v8Fw==",
-      "license": "MIT",
-      "dependencies": {
-        "buffer-alloc": "^1.1.0"
-      },
-      "bin": {
-        "md5-file": "cli.js"
-      },
-      "engines": {
-        "node": ">=0.10"
-      }
-    },
     "node_modules/mdn-data": {
       "version": "2.0.14",
       "license": "CC0-1.0"
@@ -29223,7 +29312,7 @@
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
       "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.6"
@@ -29330,6 +29419,7 @@
     },
     "node_modules/merge2": {
       "version": "1.4.1",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 8"
@@ -29344,9 +29434,9 @@
       }
     },
     "node_modules/metro": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro/-/metro-0.81.0.tgz",
-      "integrity": "sha512-kzdzmpL0gKhEthZ9aOV7sTqvg6NuTxDV8SIm9pf9sO8VVEbKrQk5DNcwupOUjgPPFAuKUc2NkT0suyT62hm2xg==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro/-/metro-0.82.1.tgz",
+      "integrity": "sha512-/avNIHMlZhkDRl5ZMKNGuZSFZU56M3ABtt/JFQBJWEnitHtSD3Qidnfgjglq61yDbsWBv7aVrOFhdPRPTHN92A==",
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "^7.24.7",
@@ -29360,34 +29450,32 @@
         "chalk": "^4.0.0",
         "ci-info": "^2.0.0",
         "connect": "^3.6.5",
-        "debug": "^2.2.0",
-        "denodeify": "^1.2.1",
+        "debug": "^4.4.0",
         "error-stack-parser": "^2.0.6",
         "flow-enums-runtime": "^0.0.6",
         "graceful-fs": "^4.2.4",
-        "hermes-parser": "0.24.0",
+        "hermes-parser": "0.25.1",
         "image-size": "^1.0.2",
         "invariant": "^2.2.4",
-        "jest-worker": "^29.6.3",
+        "jest-worker": "^29.7.0",
         "jsc-safe-url": "^0.2.2",
         "lodash.throttle": "^4.1.1",
-        "metro-babel-transformer": "0.81.0",
-        "metro-cache": "0.81.0",
-        "metro-cache-key": "0.81.0",
-        "metro-config": "0.81.0",
-        "metro-core": "0.81.0",
-        "metro-file-map": "0.81.0",
-        "metro-resolver": "0.81.0",
-        "metro-runtime": "0.81.0",
-        "metro-source-map": "0.81.0",
-        "metro-symbolicate": "0.81.0",
-        "metro-transform-plugins": "0.81.0",
-        "metro-transform-worker": "0.81.0",
+        "metro-babel-transformer": "0.82.1",
+        "metro-cache": "0.82.1",
+        "metro-cache-key": "0.82.1",
+        "metro-config": "0.82.1",
+        "metro-core": "0.82.1",
+        "metro-file-map": "0.82.1",
+        "metro-resolver": "0.82.1",
+        "metro-runtime": "0.82.1",
+        "metro-source-map": "0.82.1",
+        "metro-symbolicate": "0.82.1",
+        "metro-transform-plugins": "0.82.1",
+        "metro-transform-worker": "0.82.1",
         "mime-types": "^2.1.27",
         "nullthrows": "^1.1.1",
         "serialize-error": "^2.1.0",
         "source-map": "^0.5.6",
-        "strip-ansi": "^6.0.0",
         "throat": "^5.0.0",
         "ws": "^7.5.10",
         "yargs": "^17.6.2"
@@ -29400,53 +29488,38 @@
       }
     },
     "node_modules/metro-babel-transformer": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.81.0.tgz",
-      "integrity": "sha512-Dc0QWK4wZIeHnyZ3sevWGTnnSkIDDn/SWyfrn99zbKbDOCoCYy71PAn9uCRrP/hduKLJQOy+tebd63Rr9D8tXg==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.82.1.tgz",
+      "integrity": "sha512-SuDMRdJKafSj9mzIijCNRxVXWrlJZdTnVE9iTGHO85UFTp/mWOLftqCjEtEjc78/0Wq3Y8IoYayx/VkYmKUf/g==",
       "license": "MIT",
       "dependencies": {
         "@babel/core": "^7.25.2",
         "flow-enums-runtime": "^0.0.6",
-        "hermes-parser": "0.24.0",
+        "hermes-parser": "0.25.1",
         "nullthrows": "^1.1.1"
       },
       "engines": {
         "node": ">=18.18"
       }
     },
-    "node_modules/metro-babel-transformer/node_modules/hermes-estree": {
-      "version": "0.24.0",
-      "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.24.0.tgz",
-      "integrity": "sha512-LyoXLB7IFzeZW0EvAbGZacbxBN7t6KKSDqFJPo3Ydow7wDlrDjXwsdiAHV6XOdvEN9MEuWXsSIFN4tzpyrXIHw==",
-      "license": "MIT"
-    },
-    "node_modules/metro-babel-transformer/node_modules/hermes-parser": {
-      "version": "0.24.0",
-      "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.24.0.tgz",
-      "integrity": "sha512-IJooSvvu2qNRe7oo9Rb04sUT4omtZqZqf9uq9WM25Tb6v3usmvA93UqfnnoWs5V0uYjEl9Al6MNU10MCGKLwpg==",
-      "license": "MIT",
-      "dependencies": {
-        "hermes-estree": "0.24.0"
-      }
-    },
     "node_modules/metro-cache": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.81.0.tgz",
-      "integrity": "sha512-DyuqySicHXkHUDZFVJmh0ygxBSx6pCKUrTcSgb884oiscV/ROt1Vhye+x+OIHcsodyA10gzZtrVtxIFV4l9I4g==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.82.1.tgz",
+      "integrity": "sha512-4ZK5EdgM8bTLLjpPCYOImirXUXVZpUU/I81BeAkScF8FFJfEHhV8yFyVp4/689bLbUBMwqz3rvYyxnrMi242lA==",
       "license": "MIT",
       "dependencies": {
         "exponential-backoff": "^3.1.1",
         "flow-enums-runtime": "^0.0.6",
-        "metro-core": "0.81.0"
+        "metro-core": "0.82.1"
       },
       "engines": {
         "node": ">=18.18"
       }
     },
     "node_modules/metro-cache-key": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.81.0.tgz",
-      "integrity": "sha512-qX/IwtknP9bQZL78OK9xeSvLM/xlGfrs6SlUGgHvrxtmGTRSsxcyqxR+c+7ch1xr05n62Gin/O44QKg5V70rNQ==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.82.1.tgz",
+      "integrity": "sha512-RoByg/cxJUewdO4yDx3udpxc6S59570Ub34Jm2gjvOcYQOkGxNepNgyhWFlZLM7P7aBF2UwdCqDB1hoTRtQqNw==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6"
@@ -29456,19 +29529,19 @@
       }
     },
     "node_modules/metro-config": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.81.0.tgz",
-      "integrity": "sha512-6CinEaBe3WLpRlKlYXXu8r1UblJhbwD6Gtnoib5U8j6Pjp7XxMG9h/DGMeNp9aGLDu1OieUqiXpFo7O0/rR5Kg==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.82.1.tgz",
+      "integrity": "sha512-+w3280sUdZmEDpmEhk66vfeWs8xKhogiPim+JT6AIhrTUS4exki+yFgXDdnBXrjvAvhxUtCZcoIueFKCC/mbZw==",
       "license": "MIT",
       "dependencies": {
         "connect": "^3.6.5",
         "cosmiconfig": "^5.0.5",
         "flow-enums-runtime": "^0.0.6",
-        "jest-validate": "^29.6.3",
-        "metro": "0.81.0",
-        "metro-cache": "0.81.0",
-        "metro-core": "0.81.0",
-        "metro-runtime": "0.81.0"
+        "jest-validate": "^29.7.0",
+        "metro": "0.82.1",
+        "metro-cache": "0.82.1",
+        "metro-core": "0.82.1",
+        "metro-runtime": "0.82.1"
       },
       "engines": {
         "node": ">=18.18"
@@ -29525,51 +29598,37 @@
       }
     },
     "node_modules/metro-core": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.81.0.tgz",
-      "integrity": "sha512-CVkM5YCOAFkNMvJai6KzA0RpztzfEKRX62/PFMOJ9J7K0uq/UkOFLxcgpcncMIrfy0PbfEj811b69tjULUQe1Q==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.82.1.tgz",
+      "integrity": "sha512-C1a8lPGJPs6axj9q+qLSdzK98TYjjXV6nsGnTvYuSwwXAm5sS03ewZCDimRfzu1s58oR0O28QddBgxNtYpDnJg==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6",
         "lodash.throttle": "^4.1.1",
-        "metro-resolver": "0.81.0"
+        "metro-resolver": "0.82.1"
       },
       "engines": {
         "node": ">=18.18"
       }
     },
     "node_modules/metro-file-map": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.81.0.tgz",
-      "integrity": "sha512-zMDI5uYhQCyxbye/AuFx/pAbsz9K+vKL7h1ShUXdN2fz4VUPiyQYRsRqOoVG1DsiCgzd5B6LW0YW77NFpjDQeg==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.82.1.tgz",
+      "integrity": "sha512-6RgYYrkswBCH4GwbLiK6QGzTjNnlCdU7BwwZlf+14ApjUlbr1oBkwmAa6lMfmqfZuh2H/ET8X950kJ8uZavJNA==",
       "license": "MIT",
       "dependencies": {
-        "anymatch": "^3.0.3",
-        "debug": "^2.2.0",
+        "debug": "^4.4.0",
         "fb-watchman": "^2.0.0",
         "flow-enums-runtime": "^0.0.6",
         "graceful-fs": "^4.2.4",
         "invariant": "^2.2.4",
-        "jest-worker": "^29.6.3",
+        "jest-worker": "^29.7.0",
         "micromatch": "^4.0.4",
-        "node-abort-controller": "^3.1.1",
         "nullthrows": "^1.1.1",
         "walker": "^1.0.7"
       },
       "engines": {
         "node": ">=18.18"
-      },
-      "optionalDependencies": {
-        "fsevents": "^2.3.2"
-      }
-    },
-    "node_modules/metro-file-map/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "license": "MIT",
-      "dependencies": {
-        "ms": "2.0.0"
       }
     },
     "node_modules/metro-file-map/node_modules/has-flag": {
@@ -29596,12 +29655,6 @@
         "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
       }
     },
-    "node_modules/metro-file-map/node_modules/ms": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-      "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
-      "license": "MIT"
-    },
     "node_modules/metro-file-map/node_modules/supports-color": {
       "version": "8.1.1",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
@@ -29618,9 +29671,9 @@
       }
     },
     "node_modules/metro-minify-terser": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.81.0.tgz",
-      "integrity": "sha512-U2ramh3W822ZR1nfXgIk+emxsf5eZSg10GbQrT0ZizImK8IZ5BmJY+BHRIkQgHzWFpExOVxC7kWbGL1bZALswA==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.82.1.tgz",
+      "integrity": "sha512-3P2PY+9L9sKrlxWWAOb1Bi6HXFCdnevym1R/6stkev/kl1+khkrDs1Z40139fLXFZbn8FrvXe89sTFRC3vB+Nw==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6",
@@ -29631,9 +29684,9 @@
       }
     },
     "node_modules/metro-resolver": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.81.0.tgz",
-      "integrity": "sha512-Uu2Q+buHhm571cEwpPek8egMbdSTqmwT/5U7ZVNpK6Z2ElQBBCxd7HmFAslKXa7wgpTO2FAn6MqGeERbAtVDUA==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.82.1.tgz",
+      "integrity": "sha512-TnHK2FRTq/KMRZTqUKRXGJ4NGwJEHrPuo60UPGMUHzAS9diI22oCQ8y9888saGiXE+gi0Iplv/6AUTISxDgXqA==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6"
@@ -29643,9 +29696,9 @@
       }
     },
     "node_modules/metro-runtime": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.81.0.tgz",
-      "integrity": "sha512-6oYB5HOt37RuGz2eV4A6yhcl+PUTwJYLDlY9vhT+aVjbUWI6MdBCf69vc4f5K5Vpt+yOkjy+2LDwLS0ykWFwYw==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.82.1.tgz",
+      "integrity": "sha512-Xg7FccIHlNtI63RX0vKmIzXlM5eSq4mjMo0ALbxXpds/P4JVT0JeJW/BqwpncKabrpbZyvPmPguhd32TiMWHXg==",
       "license": "MIT",
       "dependencies": {
         "@babel/runtime": "^7.25.0",
@@ -29656,9 +29709,9 @@
       }
     },
     "node_modules/metro-source-map": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.81.0.tgz",
-      "integrity": "sha512-TzsVxhH83dyxg4A4+L1nzNO12I7ps5IHLjKGZH3Hrf549eiZivkdjYiq/S5lOB+p2HiQ+Ykcwtmcja95LIC62g==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.82.1.tgz",
+      "integrity": "sha512-uCf60ybpmPvkkqQpVWtPZFCIMBS1D9uQ4r2isbqWvDQ1FFTi3xrhT1Z35Dyg30RQV6638XJ4wZY+Dwh8bU9W8A==",
       "license": "MIT",
       "dependencies": {
         "@babel/traverse": "^7.25.3",
@@ -29666,9 +29719,9 @@
         "@babel/types": "^7.25.2",
         "flow-enums-runtime": "^0.0.6",
         "invariant": "^2.2.4",
-        "metro-symbolicate": "0.81.0",
+        "metro-symbolicate": "0.82.1",
         "nullthrows": "^1.1.1",
-        "ob1": "0.81.0",
+        "ob1": "0.82.1",
         "source-map": "^0.5.6",
         "vlq": "^1.0.0"
       },
@@ -29677,16 +29730,16 @@
       }
     },
     "node_modules/metro-source-map/node_modules/@babel/traverse": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
-      "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "version": "7.27.0",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
+      "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/code-frame": "^7.25.9",
-        "@babel/generator": "^7.25.9",
-        "@babel/parser": "^7.25.9",
-        "@babel/template": "^7.25.9",
-        "@babel/types": "^7.25.9",
+        "@babel/code-frame": "^7.26.2",
+        "@babel/generator": "^7.27.0",
+        "@babel/parser": "^7.27.0",
+        "@babel/template": "^7.27.0",
+        "@babel/types": "^7.27.0",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
       },
@@ -29704,17 +29757,16 @@
       }
     },
     "node_modules/metro-symbolicate": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.81.0.tgz",
-      "integrity": "sha512-C/1rWbNTPYp6yzID8IPuQPpVGzJ2rbWYBATxlvQ9dfK5lVNoxcwz77hjcY8ISLsRRR15hyd/zbjCNKPKeNgE1Q==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.82.1.tgz",
+      "integrity": "sha512-UFofSe+y0tz+nQ5XOkgXOYu5xlbX/8jEvd2eSrd8SjAX7eAjbGwN0Kjji+87jSaMJIvRHkArVMWqwF6fZVq55g==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6",
         "invariant": "^2.2.4",
-        "metro-source-map": "0.81.0",
+        "metro-source-map": "0.82.1",
         "nullthrows": "^1.1.1",
         "source-map": "^0.5.6",
-        "through2": "^2.0.1",
         "vlq": "^1.0.0"
       },
       "bin": {
@@ -29734,9 +29786,9 @@
       }
     },
     "node_modules/metro-transform-plugins": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.81.0.tgz",
-      "integrity": "sha512-uErLAPBvttGCrmGSCa0dNHlOTk3uJFVEVWa5WDg6tQ79PRmuYRwzUgLhVzn/9/kyr75eUX3QWXN79Jvu4txt6Q==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.82.1.tgz",
+      "integrity": "sha512-AHFattUD9tUjG2MFV4RgZRgZZNfdRVQ7X6+ORK3cqwiItMcY2mK7psC6G2zI3WOtbydBcu/xWTilmjl7krC7FQ==",
       "license": "MIT",
       "dependencies": {
         "@babel/core": "^7.25.2",
@@ -29751,16 +29803,16 @@
       }
     },
     "node_modules/metro-transform-plugins/node_modules/@babel/traverse": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
-      "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "version": "7.27.0",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
+      "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/code-frame": "^7.25.9",
-        "@babel/generator": "^7.25.9",
-        "@babel/parser": "^7.25.9",
-        "@babel/template": "^7.25.9",
-        "@babel/types": "^7.25.9",
+        "@babel/code-frame": "^7.26.2",
+        "@babel/generator": "^7.27.0",
+        "@babel/parser": "^7.27.0",
+        "@babel/template": "^7.27.0",
+        "@babel/types": "^7.27.0",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
       },
@@ -29769,9 +29821,9 @@
       }
     },
     "node_modules/metro-transform-worker": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.81.0.tgz",
-      "integrity": "sha512-HrQ0twiruhKy0yA+9nK5bIe3WQXZcC66PXTvRIos61/EASLAP2DzEmW7IxN/MGsfZegN2UzqL2CG38+mOB45vg==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.82.1.tgz",
+      "integrity": "sha512-2vaadziCaYPfPMnl3tuYimjR7Gmj5CVOcQh/bJniOiXWZ0b1v4JGcw6jOAWzQKgNJdrOq8lMfzdT3xJ/cn/m7g==",
       "license": "MIT",
       "dependencies": {
         "@babel/core": "^7.25.2",
@@ -29779,13 +29831,13 @@
         "@babel/parser": "^7.25.3",
         "@babel/types": "^7.25.2",
         "flow-enums-runtime": "^0.0.6",
-        "metro": "0.81.0",
-        "metro-babel-transformer": "0.81.0",
-        "metro-cache": "0.81.0",
-        "metro-cache-key": "0.81.0",
-        "metro-minify-terser": "0.81.0",
-        "metro-source-map": "0.81.0",
-        "metro-transform-plugins": "0.81.0",
+        "metro": "0.82.1",
+        "metro-babel-transformer": "0.82.1",
+        "metro-cache": "0.82.1",
+        "metro-cache-key": "0.82.1",
+        "metro-minify-terser": "0.82.1",
+        "metro-source-map": "0.82.1",
+        "metro-transform-plugins": "0.82.1",
         "nullthrows": "^1.1.1"
       },
       "engines": {
@@ -29793,16 +29845,16 @@
       }
     },
     "node_modules/metro/node_modules/@babel/traverse": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
-      "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
+      "version": "7.27.0",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
+      "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/code-frame": "^7.25.9",
-        "@babel/generator": "^7.25.9",
-        "@babel/parser": "^7.25.9",
-        "@babel/template": "^7.25.9",
-        "@babel/types": "^7.25.9",
+        "@babel/code-frame": "^7.26.2",
+        "@babel/generator": "^7.27.0",
+        "@babel/parser": "^7.27.0",
+        "@babel/template": "^7.27.0",
+        "@babel/types": "^7.27.0",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
       },
@@ -29811,9 +29863,9 @@
       }
     },
     "node_modules/metro/node_modules/@babel/traverse/node_modules/debug": {
-      "version": "4.3.7",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
-      "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+      "version": "4.4.0",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
+      "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
       "license": "MIT",
       "dependencies": {
         "ms": "^2.1.3"
@@ -29882,21 +29934,6 @@
       "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
       "license": "MIT"
     },
-    "node_modules/metro/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "license": "MIT",
-      "dependencies": {
-        "ms": "2.0.0"
-      }
-    },
-    "node_modules/metro/node_modules/debug/node_modules/ms": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-      "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
-      "license": "MIT"
-    },
     "node_modules/metro/node_modules/has-flag": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -29906,21 +29943,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/metro/node_modules/hermes-estree": {
-      "version": "0.24.0",
-      "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.24.0.tgz",
-      "integrity": "sha512-LyoXLB7IFzeZW0EvAbGZacbxBN7t6KKSDqFJPo3Ydow7wDlrDjXwsdiAHV6XOdvEN9MEuWXsSIFN4tzpyrXIHw==",
-      "license": "MIT"
-    },
-    "node_modules/metro/node_modules/hermes-parser": {
-      "version": "0.24.0",
-      "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.24.0.tgz",
-      "integrity": "sha512-IJooSvvu2qNRe7oo9Rb04sUT4omtZqZqf9uq9WM25Tb6v3usmvA93UqfnnoWs5V0uYjEl9Al6MNU10MCGKLwpg==",
-      "license": "MIT",
-      "dependencies": {
-        "hermes-estree": "0.24.0"
-      }
-    },
     "node_modules/metro/node_modules/jest-worker": {
       "version": "29.7.0",
       "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz",
@@ -30023,7 +30045,6 @@
     },
     "node_modules/mimic-fn": {
       "version": "2.1.0",
-      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -30069,6 +30090,7 @@
     },
     "node_modules/minipass": {
       "version": "3.3.6",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "yallist": "^4.0.0"
@@ -30077,27 +30099,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/minipass-collect": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz",
-      "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==",
-      "license": "ISC",
-      "dependencies": {
-        "minipass": "^7.0.3"
-      },
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      }
-    },
-    "node_modules/minipass-collect/node_modules/minipass": {
-      "version": "7.1.2",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
-      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
-      "license": "ISC",
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      }
-    },
     "node_modules/minipass-fetch": {
       "version": "2.1.2",
       "dev": true,
@@ -30116,6 +30117,7 @@
     },
     "node_modules/minipass-flush": {
       "version": "1.0.5",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "minipass": "^3.0.0"
@@ -30126,6 +30128,7 @@
     },
     "node_modules/minipass-pipeline": {
       "version": "1.2.4",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "minipass": "^3.0.0"
@@ -30147,6 +30150,7 @@
     },
     "node_modules/minizlib": {
       "version": "2.1.2",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "minipass": "^3.0.0",
@@ -30324,12 +30328,6 @@
       "integrity": "sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==",
       "license": "MIT"
     },
-    "node_modules/nice-try": {
-      "version": "1.0.5",
-      "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
-      "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
-      "license": "MIT"
-    },
     "node_modules/no-case": {
       "version": "3.0.4",
       "dev": true,
@@ -30376,6 +30374,7 @@
     },
     "node_modules/node-abort-controller": {
       "version": "3.1.1",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/node-addon-api": {
@@ -30394,6 +30393,7 @@
     },
     "node_modules/node-dir": {
       "version": "0.1.17",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "minimatch": "^3.0.2"
@@ -30546,7 +30546,7 @@
       "version": "1.15.0",
       "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz",
       "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=0.12.0"
@@ -30632,7 +30632,6 @@
     },
     "node_modules/npm-run-path": {
       "version": "4.0.1",
-      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "path-key": "^3.0.0"
@@ -30695,9 +30694,9 @@
       }
     },
     "node_modules/ob1": {
-      "version": "0.81.0",
-      "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.81.0.tgz",
-      "integrity": "sha512-6Cvrkxt1tqaRdWqTAMcVYEiO5i1xcF9y7t06nFdjFqkfPsEloCf8WwhXdwBpNUkVYSQlSGS7cDgVQR86miBfBQ==",
+      "version": "0.82.1",
+      "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.82.1.tgz",
+      "integrity": "sha512-J4m1GAoMC0673H8LmVolj7ZERYEwJWRR4/A/M8ZB5iK9BiFLeAkjvny/VGk3XOYiMtnvq7TV6oc3MfDJ8uKpFw==",
       "license": "MIT",
       "dependencies": {
         "flow-enums-runtime": "^0.0.6"
@@ -30715,7 +30714,7 @@
     },
     "node_modules/object-inspect": {
       "version": "1.13.1",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "funding": {
         "url": "https://github.com/sponsors/ljharb"
@@ -30882,7 +30881,6 @@
     },
     "node_modules/onetime": {
       "version": "5.1.2",
-      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "mimic-fn": "^2.1.0"
@@ -31061,6 +31059,7 @@
     },
     "node_modules/os-tmpdir": {
       "version": "1.0.2",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=0.10.0"
@@ -31074,15 +31073,6 @@
         "node": ">=8"
       }
     },
-    "node_modules/p-finally": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
-      "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=4"
-      }
-    },
     "node_modules/p-limit": {
       "version": "3.1.0",
       "license": "MIT",
@@ -31111,6 +31101,7 @@
     },
     "node_modules/p-map": {
       "version": "4.0.0",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "aggregate-error": "^3.0.0"
@@ -31166,7 +31157,7 @@
     },
     "node_modules/parent-module": {
       "version": "1.0.1",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "callsites": "^3.0.0"
@@ -31177,7 +31168,7 @@
     },
     "node_modules/parse-json": {
       "version": "5.2.0",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "^7.0.0",
@@ -31229,16 +31220,6 @@
         "tslib": "^2.0.3"
       }
     },
-    "node_modules/password-prompt": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/password-prompt/-/password-prompt-1.1.3.tgz",
-      "integrity": "sha512-HkrjG2aJlvF0t2BMH0e2LB/EHf3Lcq3fNMzy4GYHcQblAvOl+QQji1Lx7WRBMqpVK8p+KR7bCg7oqAMXtdgqyw==",
-      "license": "0BSD",
-      "dependencies": {
-        "ansi-escapes": "^4.3.2",
-        "cross-spawn": "^7.0.3"
-      }
-    },
     "node_modules/patch-package": {
       "version": "8.0.0",
       "dev": true,
@@ -31383,6 +31364,7 @@
     },
     "node_modules/path-exists": {
       "version": "3.0.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=4"
@@ -31448,6 +31430,7 @@
     },
     "node_modules/path-type": {
       "version": "4.0.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=8"
@@ -31573,6 +31556,7 @@
     },
     "node_modules/pify": {
       "version": "4.0.1",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -32043,6 +32027,7 @@
     },
     "node_modules/process-nextick-args": {
       "version": "2.0.1",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/progress": {
@@ -32140,6 +32125,7 @@
     },
     "node_modules/pump": {
       "version": "3.0.0",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "end-of-stream": "^1.1.0",
@@ -32204,7 +32190,7 @@
       "version": "6.13.0",
       "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
       "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
-      "dev": true,
+      "devOptional": true,
       "license": "BSD-3-Clause",
       "dependencies": {
         "side-channel": "^1.0.6"
@@ -32246,6 +32232,7 @@
     },
     "node_modules/queue-microtask": {
       "version": "1.2.3",
+      "devOptional": true,
       "funding": [
         {
           "type": "github",
@@ -32313,7 +32300,7 @@
       "version": "2.5.2",
       "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
       "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "bytes": "3.1.2",
@@ -32329,7 +32316,7 @@
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
       "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.8"
@@ -32339,7 +32326,7 @@
       "version": "0.4.24",
       "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
       "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "safer-buffer": ">= 2.1.2 < 3"
@@ -32380,11 +32367,10 @@
       }
     },
     "node_modules/react": {
-      "version": "18.3.1",
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/react/-/react-19.0.0.tgz",
+      "integrity": "sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==",
       "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0"
-      },
       "engines": {
         "node": ">=0.10.0"
       }
@@ -32503,7 +32489,7 @@
       "version": "19.0.0-beta-8a03594-20241020",
       "resolved": "https://registry.npmjs.org/react-compiler-runtime/-/react-compiler-runtime-19.0.0-beta-8a03594-20241020.tgz",
       "integrity": "sha512-YWl8SjxsWGU1dpxHvWS0vxTkpeLXTZ/Y7IVzwZGj6yAfXOEie1MduuAR0TFiGeV0RxFLp5jKUIWl+ZglN4dMQw==",
-      "devOptional": true,
+      "dev": true,
       "peerDependencies": {
         "react": "^18.2.0 || ^19.0.0"
       }
@@ -32519,9 +32505,9 @@
       }
     },
     "node_modules/react-devtools-core": {
-      "version": "6.0.1",
-      "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-6.0.1.tgz",
-      "integrity": "sha512-II3iSJhnR5nAscYDa9FCgPLq8mO5aEx/EKKtdXYTDnvdFEa3K7gs3jn1SKRXwQf9maOmIilmjnnx7Qy+3annPA==",
+      "version": "6.1.1",
+      "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-6.1.1.tgz",
+      "integrity": "sha512-TFo1MEnkqE6hzAbaztnyR5uLTMoz6wnEWwWBsCUzNt+sVXJycuRJdDqvL078M4/h65BI/YO5XWTaxZDWVsW0fw==",
       "license": "MIT",
       "dependencies": {
         "shell-quote": "^1.6.1",
@@ -32577,21 +32563,15 @@
       }
     },
     "node_modules/react-dom": {
-      "version": "18.3.1",
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0.tgz",
+      "integrity": "sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==",
       "license": "MIT",
       "dependencies": {
-        "loose-envify": "^1.1.0",
-        "scheduler": "^0.23.2"
+        "scheduler": "^0.25.0"
       },
       "peerDependencies": {
-        "react": "^18.3.1"
-      }
-    },
-    "node_modules/react-dom/node_modules/scheduler": {
-      "version": "0.23.2",
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0"
+        "react": "^19.0.0"
       }
     },
     "node_modules/react-error-boundary": {
@@ -32661,19 +32641,19 @@
       }
     },
     "node_modules/react-native": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.77.1.tgz",
-      "integrity": "sha512-g2OMtsQqhgOuC4BqFyrcv0UsmbFcLOwfVRl/XAEHZK0p8paJubGIF3rAHN4Qh0GqGLWZGt7gJ7ha2yOmCFORoA==",
-      "license": "MIT",
-      "dependencies": {
-        "@jest/create-cache-key-function": "^29.6.3",
-        "@react-native/assets-registry": "0.77.1",
-        "@react-native/codegen": "0.77.1",
-        "@react-native/community-cli-plugin": "0.77.1",
-        "@react-native/gradle-plugin": "0.77.1",
-        "@react-native/js-polyfills": "0.77.1",
-        "@react-native/normalize-colors": "0.77.1",
-        "@react-native/virtualized-lists": "0.77.1",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.79.0.tgz",
+      "integrity": "sha512-fLG/zl/YF30TWTmp2bbo3flHSFGe4WTyVkb7/wJnMEC39jjXVSCxfDtvSUVavhCc03fA/RTkWWvlmg7NEJk7Vg==",
+      "license": "MIT",
+      "dependencies": {
+        "@jest/create-cache-key-function": "^29.7.0",
+        "@react-native/assets-registry": "0.79.0",
+        "@react-native/codegen": "0.79.0",
+        "@react-native/community-cli-plugin": "0.79.0",
+        "@react-native/gradle-plugin": "0.79.0",
+        "@react-native/js-polyfills": "0.79.0",
+        "@react-native/normalize-colors": "0.79.0",
+        "@react-native/virtualized-lists": "0.79.0",
         "abort-controller": "^3.0.0",
         "anser": "^1.4.9",
         "ansi-regex": "^5.0.0",
@@ -32686,18 +32666,17 @@
         "flow-enums-runtime": "^0.0.6",
         "glob": "^7.1.1",
         "invariant": "^2.2.4",
-        "jest-environment-node": "^29.6.3",
-        "jsc-android": "^250231.0.0",
+        "jest-environment-node": "^29.7.0",
         "memoize-one": "^5.0.0",
-        "metro-runtime": "^0.81.0",
-        "metro-source-map": "^0.81.0",
+        "metro-runtime": "^0.82.0",
+        "metro-source-map": "^0.82.0",
         "nullthrows": "^1.1.1",
         "pretty-format": "^29.7.0",
         "promise": "^8.3.0",
-        "react-devtools-core": "^6.0.1",
+        "react-devtools-core": "^6.1.1",
         "react-refresh": "^0.14.0",
         "regenerator-runtime": "^0.13.2",
-        "scheduler": "0.24.0-canary-efb381bbf-20230505",
+        "scheduler": "0.25.0",
         "semver": "^7.1.3",
         "stacktrace-parser": "^0.1.10",
         "whatwg-fetch": "^3.0.0",
@@ -32711,8 +32690,8 @@
         "node": ">=18"
       },
       "peerDependencies": {
-        "@types/react": "^18.2.6",
-        "react": "^18.2.0"
+        "@types/react": "^19.0.0",
+        "react": "^19.0.0"
       },
       "peerDependenciesMeta": {
         "@types/react": {
@@ -32830,24 +32809,6 @@
         "react-native": "*"
       }
     },
-    "node_modules/react-native-document-picker": {
-      "version": "9.3.1",
-      "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-9.3.1.tgz",
-      "integrity": "sha512-Vcofv9wfB0j67zawFjfq9WQPMMzXxOZL9kBmvWDpjVuEcVK73ndRmlXHlkeFl5ZHVsv4Zb6oZYhqm9u5omJOPA==",
-      "dependencies": {
-        "invariant": "^2.2.4"
-      },
-      "peerDependencies": {
-        "react": "*",
-        "react-native": "*",
-        "react-native-windows": "*"
-      },
-      "peerDependenciesMeta": {
-        "react-native-windows": {
-          "optional": true
-        }
-      }
-    },
     "node_modules/react-native-draggable-flatlist": {
       "version": "4.0.1",
       "license": "MIT",
@@ -32860,6 +32821,16 @@
         "react-native-reanimated": ">=2.8.0"
       }
     },
+    "node_modules/react-native-edge-to-edge": {
+      "version": "1.6.0",
+      "resolved": "https://registry.npmjs.org/react-native-edge-to-edge/-/react-native-edge-to-edge-1.6.0.tgz",
+      "integrity": "sha512-2WCNdE3Qd6Fwg9+4BpbATUxCLcouF6YRY7K+J36KJ4l3y+tWN6XCqAC4DuoGblAAbb2sLkhEDp4FOlbOIot2Og==",
+      "license": "MIT",
+      "peerDependencies": {
+        "react": "*",
+        "react-native": "*"
+      }
+    },
     "node_modules/react-native-fs": {
       "version": "2.20.0",
       "license": "MIT",
@@ -32878,9 +32849,9 @@
       }
     },
     "node_modules/react-native-gesture-handler": {
-      "version": "2.22.0",
-      "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.22.0.tgz",
-      "integrity": "sha512-m5Ps1cOSxSiMP4re+XsbeWcC9DNJuIEjMSmtUxBdyfYEJtdu5iAAiX7KlHHrf2mnK4I/56Ncy4PvPKWBwSpWpQ==",
+      "version": "2.24.0",
+      "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.24.0.tgz",
+      "integrity": "sha512-ZdWyOd1C8axKJHIfYxjJKCcxjWEpUtUWgTOVY2wynbiveSQDm8X/PDyAKXSer/GOtIpjudUbACOndZXCN3vHsw==",
       "license": "MIT",
       "dependencies": {
         "@egjs/hammerjs": "^2.0.17",
@@ -32941,13 +32912,13 @@
       "integrity": "sha512-kF/8fGsKoOnjPZceipRUaM9Xg9a/aKXU2Vm5eHYEKHrRt8FP39oCbaELPTb/vUKRTu1HmEGffDFzRT02BcdzYQ=="
     },
     "node_modules/react-native-is-edge-to-edge": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/react-native-is-edge-to-edge/-/react-native-is-edge-to-edge-1.1.6.tgz",
-      "integrity": "sha512-1pHnFTlBahins6UAajXUqeCOHew9l9C2C8tErnpGC3IyLJzvxD+TpYAixnCbrVS52f7+NvMttbiSI290XfwN0w==",
+      "version": "1.1.7",
+      "resolved": "https://registry.npmjs.org/react-native-is-edge-to-edge/-/react-native-is-edge-to-edge-1.1.7.tgz",
+      "integrity": "sha512-EH6i7E8epJGIcu7KpfXYXiV2JFIYITtq+rVS8uEb+92naMRBdxhTuS8Wn2Q7j9sqyO0B+Xbaaf9VdipIAmGW4w==",
       "license": "MIT",
       "peerDependencies": {
-        "react": ">=18.2.0",
-        "react-native": ">=0.73.0"
+        "react": "*",
+        "react-native": "*"
       }
     },
     "node_modules/react-native-key-command": {
@@ -33066,9 +33037,9 @@
       }
     },
     "node_modules/react-native-pager-view": {
-      "version": "6.5.2",
-      "resolved": "https://registry.npmjs.org/react-native-pager-view/-/react-native-pager-view-6.5.2.tgz",
-      "integrity": "sha512-7TstYJ9ERtlC8WNwHGI0ueJ2tgaT5VJwFk94qiYk7UZBXI0RPk5RtZCPyN7h7h1Mc/57wBw6HS6jWHlMYluhtQ==",
+      "version": "6.7.0",
+      "resolved": "https://registry.npmjs.org/react-native-pager-view/-/react-native-pager-view-6.7.0.tgz",
+      "integrity": "sha512-sutxKiMqBuQrEyt4mLaLNzy8taIC7IuYpxfcwQBXfSYBSSpAa0qE9G1FXlP/iXqTSlFgBXyK7BESsl9umOjECQ==",
       "license": "MIT",
       "peerDependencies": {
         "react": "*",
@@ -33155,9 +33126,9 @@
       }
     },
     "node_modules/react-native-reanimated": {
-      "version": "3.17.1",
-      "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-3.17.1.tgz",
-      "integrity": "sha512-ECzLhLxMKLifv34a8799/MHqIazQZV9fLMNSMdixXQlzX71RyL3/ah3cz/h3ERoyhJAYRC2ySLLZho6pXSqMFQ==",
+      "version": "3.17.3",
+      "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-3.17.3.tgz",
+      "integrity": "sha512-0dN+AB7Om9Fdq3Bvq4+ClGhv2sl1o6BhKum18CFNPh4dgMKybDSdRo2vhxTaZUJq6R3LC8gFI84IV0qCZmPbiw==",
       "license": "MIT",
       "dependencies": {
         "@babel/plugin-transform-arrow-functions": "^7.0.0-0",
@@ -33171,7 +33142,7 @@
         "@babel/preset-typescript": "^7.16.7",
         "convert-source-map": "^2.0.0",
         "invariant": "^2.2.4",
-        "react-native-is-edge-to-edge": "1.1.6"
+        "react-native-is-edge-to-edge": "1.1.7"
       },
       "peerDependencies": {
         "@babel/core": "^7.0.0-0",
@@ -33236,32 +33207,14 @@
         "react-native": "*"
       }
     },
-    "node_modules/react-native-render-html/node_modules/@native-html/transient-render-engine": {
-      "version": "11.2.2",
-      "license": "MIT",
-      "dependencies": {
-        "@native-html/css-processor": "1.11.0",
-        "@types/ramda": "^0.27.44",
-        "csstype": "^3.0.9",
-        "domelementtype": "^2.2.0",
-        "domhandler": "^4.2.2",
-        "domutils": "^2.8.0",
-        "htmlparser2": "^7.1.2",
-        "ramda": "^0.27.1"
-      },
-      "peerDependencies": {
-        "@types/react-native": "*",
-        "react-native": "^*"
-      }
-    },
     "node_modules/react-native-render-html/node_modules/ramda": {
       "version": "0.27.2",
       "license": "MIT"
     },
     "node_modules/react-native-safe-area-context": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.12.0.tgz",
-      "integrity": "sha512-ukk5PxcF4p3yu6qMZcmeiZgowhb5AsKRnil54YFUUAXVIS7PJcMHGGC+q44fCiBg44/1AJk5njGMez1m9H0BVQ==",
+      "version": "5.3.0",
+      "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-5.3.0.tgz",
+      "integrity": "sha512-glV9bwuozTjf/JDBIBm+ITnukHNaUT3nucgdeADwjtHsfEN3RL5UO6nq99vvdWv5j/O9yCZBvFncM1BBQ+UvpQ==",
       "license": "MIT",
       "peerDependencies": {
         "react": "*",
@@ -33298,9 +33251,9 @@
       }
     },
     "node_modules/react-native-svg": {
-      "version": "15.9.0",
-      "resolved": "https://registry.npmjs.org/react-native-svg/-/react-native-svg-15.9.0.tgz",
-      "integrity": "sha512-pwo7hteAM0P8jNpPGQtiSd0SnbBhE8tNd94LT8AcZcbnH5AJdXBIcXU4+tWYYeGUjiNAH2E5d0T5XIfnvaz1gA==",
+      "version": "15.11.2",
+      "resolved": "https://registry.npmjs.org/react-native-svg/-/react-native-svg-15.11.2.tgz",
+      "integrity": "sha512-+YfF72IbWQUKzCIydlijV1fLuBsQNGMT6Da2kFlo1sh+LE3BIm/2Q7AR1zAAR6L0BFLi1WaQPLfFUC9bNZpOmw==",
       "license": "MIT",
       "dependencies": {
         "css-select": "^5.1.0",
@@ -33335,9 +33288,9 @@
       }
     },
     "node_modules/react-native-view-shot": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/react-native-view-shot/-/react-native-view-shot-4.0.0.tgz",
-      "integrity": "sha512-e7wtfdm981DQVqkW+YE9mkemYarI0VZQ7PzRcHzQOmXlVrGKvNVD2MzRXOg+gK8msQIQ95QxATJKzG/QkQ9QHQ==",
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/react-native-view-shot/-/react-native-view-shot-4.0.3.tgz",
+      "integrity": "sha512-USNjYmED7C0me02c1DxKA0074Hw+y/nxo+xJKlffMvfUWWzL5ELh/TJA/pTnVqFurIrzthZDPtDM7aBFJuhrHQ==",
       "license": "MIT",
       "dependencies": {
         "html2canvas": "^1.4.1"
@@ -33372,22 +33325,23 @@
       }
     },
     "node_modules/react-native-web": {
-      "version": "0.19.13",
-      "resolved": "https://registry.npmjs.org/react-native-web/-/react-native-web-0.19.13.tgz",
-      "integrity": "sha512-etv3bN8rJglrRCp/uL4p7l8QvUNUC++QwDbdZ8CB7BvZiMvsxfFIRM1j04vxNldG3uo2puRd6OSWR3ibtmc29A==",
+      "version": "0.20.0",
+      "resolved": "https://registry.npmjs.org/react-native-web/-/react-native-web-0.20.0.tgz",
+      "integrity": "sha512-OOSgrw+aON6R3hRosCau/xVxdLzbjEcsLysYedka0ZON4ZZe6n9xgeN9ZkoejhARM36oTlUgHIQqxGutEJ9Wxg==",
+      "license": "MIT",
       "dependencies": {
         "@babel/runtime": "^7.18.6",
         "@react-native/normalize-colors": "^0.74.1",
         "fbjs": "^3.0.4",
-        "inline-style-prefixer": "^6.0.1",
+        "inline-style-prefixer": "^7.0.1",
         "memoize-one": "^6.0.0",
         "nullthrows": "^1.1.1",
         "postcss-value-parser": "^4.2.0",
         "styleq": "^0.1.3"
       },
       "peerDependencies": {
-        "react": "^18.0.0",
-        "react-dom": "^18.0.0"
+        "react": "^18.0.0 || ^19.0.0",
+        "react-dom": "^18.0.0 || ^19.0.0"
       }
     },
     "node_modules/react-native-web/node_modules/memoize-one": {
@@ -33444,9 +33398,9 @@
       "license": "MIT"
     },
     "node_modules/react-native-webview": {
-      "version": "13.13.1",
-      "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-13.13.1.tgz",
-      "integrity": "sha512-Qwrvdwl2U2bG8QlghfRzGR/PCwKzW/cXTCR/WfMWHeGoADp2CHuCaEpfYO/HhlLLGy3Jqizsy+sjFhnKa1AgrA==",
+      "version": "13.13.5",
+      "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-13.13.5.tgz",
+      "integrity": "sha512-MfC2B+woL4Hlj2WCzcb1USySKk+SteXnUKmKktOk/H/AQy5+LuVdkPKm8SknJ0/RxaxhZ48WBoTRGaqgR137hw==",
       "license": "MIT",
       "dependencies": {
         "escape-string-regexp": "^4.0.0",
@@ -33458,9 +33412,9 @@
       }
     },
     "node_modules/react-native/node_modules/@react-native/normalize-colors": {
-      "version": "0.77.1",
-      "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.77.1.tgz",
-      "integrity": "sha512-sCmEs/Vpi14CtFYhmKXpPFZntKYGezFGgT9cJANRS2aFseAL4MOomb5Ms+TOQw82aFcwPPjDX6Hrl87WjTf73A==",
+      "version": "0.79.0",
+      "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.79.0.tgz",
+      "integrity": "sha512-RmM7Dgb69a4qwdguKR+8MhT0u1IAKa/s0uy8/7JP9b/fm8zjUV9HctMgRgIpZTOELsowEyQodyTnhHQf4HPX0A==",
       "license": "MIT"
     },
     "node_modules/react-native/node_modules/ansi-regex": {
@@ -33657,55 +33611,45 @@
       }
     },
     "node_modules/react-server-dom-webpack": {
-      "version": "19.0.0-rc-6230622a1a-20240610",
-      "resolved": "https://registry.npmjs.org/react-server-dom-webpack/-/react-server-dom-webpack-19.0.0-rc-6230622a1a-20240610.tgz",
-      "integrity": "sha512-nr+IsOVD07QdeCr4BLvR5TALfLaZLi9AIaoa6vXymBc051iDPWedJujYYrjRJy5+9jp9oCx3G8Tt/Bs//TckJw==",
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/react-server-dom-webpack/-/react-server-dom-webpack-19.0.0.tgz",
+      "integrity": "sha512-hLug9KEXLc8vnU9lDNe2b2rKKDaqrp5gNiES4uyu2Up3FZfZJZmdwLFXlWzdA9gTB/6/cWduSB2K1Lfag2pSvw==",
       "dev": true,
+      "license": "MIT",
       "dependencies": {
         "acorn-loose": "^8.3.0",
-        "neo-async": "^2.6.1"
+        "neo-async": "^2.6.1",
+        "webpack-sources": "^3.2.0"
       },
       "engines": {
         "node": ">=0.10.0"
       },
       "peerDependencies": {
-        "react": "19.0.0-rc-6230622a1a-20240610",
-        "react-dom": "19.0.0-rc-6230622a1a-20240610",
+        "react": "^19.0.0",
+        "react-dom": "^19.0.0",
         "webpack": "^5.59.0"
       }
     },
-    "node_modules/react-shallow-renderer": {
-      "version": "16.15.0",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "object-assign": "^4.1.1",
-        "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0"
-      },
-      "peerDependencies": {
-        "react": "^16.0.0 || ^17.0.0 || ^18.0.0"
-      }
-    },
     "node_modules/react-test-renderer": {
-      "version": "18.3.1",
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-19.0.0.tgz",
+      "integrity": "sha512-oX5u9rOQlHzqrE/64CNr0HB0uWxkCQmZNSfozlYvwE71TLVgeZxVf0IjouGEr1v7r1kcDifdAJBeOhdhxsG/DA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "react-is": "^18.3.1",
-        "react-shallow-renderer": "^16.15.0",
-        "scheduler": "^0.23.2"
+        "react-is": "^19.0.0",
+        "scheduler": "^0.25.0"
       },
       "peerDependencies": {
-        "react": "^18.3.1"
+        "react": "^19.0.0"
       }
     },
-    "node_modules/react-test-renderer/node_modules/scheduler": {
-      "version": "0.23.2",
+    "node_modules/react-test-renderer/node_modules/react-is": {
+      "version": "19.0.0",
+      "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz",
+      "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==",
       "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0"
-      }
+      "license": "MIT"
     },
     "node_modules/react-web-config": {
       "version": "1.0.0",
@@ -33799,20 +33743,9 @@
         "js-yaml": "bin/js-yaml.js"
       }
     },
-    "node_modules/read-config-file/node_modules/json5": {
-      "version": "2.2.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz",
-      "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==",
-      "dev": true,
-      "bin": {
-        "json5": "lib/cli.js"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
     "node_modules/readable-stream": {
       "version": "2.3.8",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "core-util-is": "~1.0.0",
@@ -33826,6 +33759,7 @@
     },
     "node_modules/readable-stream/node_modules/isarray": {
       "version": "1.0.0",
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/readdir-glob": {
@@ -33869,12 +33803,6 @@
         "node": ">=8.10.0"
       }
     },
-    "node_modules/readline": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/readline/-/readline-1.3.0.tgz",
-      "integrity": "sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==",
-      "license": "BSD"
-    },
     "node_modules/reassure": {
       "version": "1.0.0-rc.4",
       "dev": true,
@@ -33891,9 +33819,10 @@
       }
     },
     "node_modules/recast": {
-      "version": "0.23.9",
-      "resolved": "https://registry.npmjs.org/recast/-/recast-0.23.9.tgz",
-      "integrity": "sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==",
+      "version": "0.23.11",
+      "resolved": "https://registry.npmjs.org/recast/-/recast-0.23.11.tgz",
+      "integrity": "sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "ast-types": "^0.16.1",
@@ -33910,6 +33839,7 @@
       "version": "0.6.1",
       "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+      "dev": true,
       "license": "BSD-3-Clause",
       "engines": {
         "node": ">=0.10.0"
@@ -33927,9 +33857,10 @@
       }
     },
     "node_modules/recyclerlistview": {
-      "version": "4.2.1",
-      "resolved": "https://registry.npmjs.org/recyclerlistview/-/recyclerlistview-4.2.1.tgz",
-      "integrity": "sha512-NtVYjofwgUCt1rEsTp6jHQg/47TWjnO92TU2kTVgJ9wsc/ely4HnizHHa+f/dI7qaw4+zcSogElrLjhMltN2/g==",
+      "version": "4.2.3",
+      "resolved": "https://registry.npmjs.org/recyclerlistview/-/recyclerlistview-4.2.3.tgz",
+      "integrity": "sha512-STR/wj/FyT8EMsBzzhZ1l2goYirMkIgfV3gYEPxI3Kf3lOnu6f7Dryhyw7/IkQrgX5xtTcDrZMqytvteH9rL3g==",
+      "license": "Apache-2.0",
       "dependencies": {
         "lodash.debounce": "4.0.8",
         "prop-types": "15.8.1",
@@ -33996,6 +33927,8 @@
     },
     "node_modules/regenerator-runtime": {
       "version": "0.13.11",
+      "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
+      "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
       "license": "MIT"
     },
     "node_modules/regenerator-transform": {
@@ -34041,12 +33974,6 @@
         "node": ">= 0.10"
       }
     },
-    "node_modules/remove-trailing-slash": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/remove-trailing-slash/-/remove-trailing-slash-0.1.1.tgz",
-      "integrity": "sha512-o4S4Qh6L2jpnCy83ysZDau+VORNvnFw07CKSAymkd6ICNVEPisMyzlc00KlvvicsxKck94SEwhDnMNdICzO+tA==",
-      "license": "MIT"
-    },
     "node_modules/renderkid": {
       "version": "3.0.0",
       "dev": true,
@@ -34251,6 +34178,7 @@
     },
     "node_modules/reusify": {
       "version": "1.0.4",
+      "devOptional": true,
       "license": "MIT",
       "engines": {
         "iojs": ">=1.0.0",
@@ -34304,6 +34232,7 @@
     },
     "node_modules/run-parallel": {
       "version": "1.2.0",
+      "devOptional": true,
       "funding": [
         {
           "type": "github",
@@ -34401,11 +34330,10 @@
       }
     },
     "node_modules/scheduler": {
-      "version": "0.24.0-canary-efb381bbf-20230505",
-      "license": "MIT",
-      "dependencies": {
-        "loose-envify": "^1.1.0"
-      }
+      "version": "0.25.0",
+      "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.25.0.tgz",
+      "integrity": "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==",
+      "license": "MIT"
     },
     "node_modules/schema-utils": {
       "version": "3.3.0",
@@ -34471,6 +34399,7 @@
     },
     "node_modules/selfsigned": {
       "version": "2.4.1",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "@types/node-forge": "^1.3.0",
@@ -34649,6 +34578,7 @@
       "version": "1.16.0",
       "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz",
       "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "encodeurl": "~1.0.2",
@@ -34673,7 +34603,7 @@
     },
     "node_modules/set-function-length": {
       "version": "1.2.2",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "define-data-property": "^1.1.4",
@@ -34751,6 +34681,7 @@
     },
     "node_modules/shallow-clone": {
       "version": "3.0.1",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "kind-of": "^6.0.2"
@@ -34864,7 +34795,7 @@
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
       "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "call-bind": "^1.0.7",
@@ -34965,15 +34896,6 @@
         "plist": "^3.0.5"
       }
     },
-    "node_modules/simple-plist/node_modules/bplist-creator": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.1.0.tgz",
-      "integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==",
-      "license": "MIT",
-      "dependencies": {
-        "stream-buffers": "2.2.x"
-      }
-    },
     "node_modules/simple-plist/node_modules/bplist-parser": {
       "version": "0.3.1",
       "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.1.tgz",
@@ -35289,18 +35211,6 @@
         "node": ">= 6"
       }
     },
-    "node_modules/split": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
-      "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
-      "license": "MIT",
-      "dependencies": {
-        "through": "2"
-      },
-      "engines": {
-        "node": "*"
-      }
-    },
     "node_modules/split-on-first": {
       "version": "1.1.0",
       "license": "MIT",
@@ -35322,27 +35232,6 @@
       "version": "1.0.3",
       "license": "BSD-3-Clause"
     },
-    "node_modules/ssri": {
-      "version": "10.0.6",
-      "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz",
-      "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==",
-      "license": "ISC",
-      "dependencies": {
-        "minipass": "^7.0.3"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
-    "node_modules/ssri/node_modules/minipass": {
-      "version": "7.1.2",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
-      "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
-      "license": "ISC",
-      "engines": {
-        "node": ">=16 || 14 >=14.17"
-      }
-    },
     "node_modules/stable": {
       "version": "0.1.8",
       "dev": true,
@@ -35477,6 +35366,7 @@
     },
     "node_modules/string_decoder": {
       "version": "1.1.1",
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "safe-buffer": "~5.1.0"
@@ -35654,18 +35544,8 @@
         "node": ">=8"
       }
     },
-    "node_modules/strip-eof": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
-      "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
     "node_modules/strip-final-newline": {
       "version": "2.0.0",
-      "devOptional": true,
       "license": "MIT",
       "engines": {
         "node": ">=6"
@@ -35695,7 +35575,7 @@
     },
     "node_modules/strnum": {
       "version": "1.0.5",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/structured-headers": {
@@ -35829,7 +35709,7 @@
       "version": "9.2.1",
       "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz",
       "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==",
-      "devOptional": true,
+      "dev": true,
       "license": "MIT"
     },
     "node_modules/sumchecker": {
@@ -36039,6 +35919,7 @@
     },
     "node_modules/tar": {
       "version": "6.2.1",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "chownr": "^2.0.0",
@@ -36102,6 +35983,7 @@
     },
     "node_modules/tar/node_modules/minipass": {
       "version": "5.0.0",
+      "dev": true,
       "license": "ISC",
       "engines": {
         "node": ">=8"
@@ -36109,6 +35991,7 @@
     },
     "node_modules/temp": {
       "version": "0.8.4",
+      "dev": true,
       "license": "MIT",
       "dependencies": {
         "rimraf": "~2.6.2"
@@ -36150,6 +36033,7 @@
     },
     "node_modules/temp/node_modules/rimraf": {
       "version": "2.6.3",
+      "dev": true,
       "license": "ISC",
       "dependencies": {
         "glob": "^7.1.3"
@@ -36158,68 +36042,6 @@
         "rimraf": "bin.js"
       }
     },
-    "node_modules/tempy": {
-      "version": "0.7.1",
-      "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.7.1.tgz",
-      "integrity": "sha512-vXPxwOyaNVi9nyczO16mxmHGpl6ASC5/TVhRRHpqeYHvKQm58EaWNvZXxAhR0lYYnBOQFjXjhzeLsaXdjxLjRg==",
-      "license": "MIT",
-      "dependencies": {
-        "del": "^6.0.0",
-        "is-stream": "^2.0.0",
-        "temp-dir": "^2.0.0",
-        "type-fest": "^0.16.0",
-        "unique-string": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/tempy/node_modules/del": {
-      "version": "6.1.1",
-      "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz",
-      "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==",
-      "license": "MIT",
-      "dependencies": {
-        "globby": "^11.0.1",
-        "graceful-fs": "^4.2.4",
-        "is-glob": "^4.0.1",
-        "is-path-cwd": "^2.2.0",
-        "is-path-inside": "^3.0.2",
-        "p-map": "^4.0.0",
-        "rimraf": "^3.0.2",
-        "slash": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/tempy/node_modules/is-path-inside": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
-      "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
-      "license": "MIT",
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/tempy/node_modules/type-fest": {
-      "version": "0.16.0",
-      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz",
-      "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==",
-      "license": "(MIT OR CC0-1.0)",
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
     "node_modules/terminal-link": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
@@ -36354,22 +36176,6 @@
       "version": "5.0.0",
       "license": "MIT"
     },
-    "node_modules/through": {
-      "version": "2.3.8",
-      "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
-      "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
-      "license": "MIT"
-    },
-    "node_modules/through2": {
-      "version": "2.0.5",
-      "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
-      "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
-      "license": "MIT",
-      "dependencies": {
-        "readable-stream": "~2.3.6",
-        "xtend": "~4.0.1"
-      }
-    },
     "node_modules/thunky": {
       "version": "1.1.0",
       "dev": true,
@@ -36506,6 +36312,7 @@
     },
     "node_modules/tmp": {
       "version": "0.2.3",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">=14.14"
@@ -36594,14 +36401,6 @@
         "tree-kill": "cli.js"
       }
     },
-    "node_modules/trim-right": {
-      "version": "1.0.1",
-      "devOptional": true,
-      "license": "MIT",
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
     "node_modules/truncate-utf8-bytes": {
       "version": "1.0.2",
       "dev": true,
@@ -36750,7 +36549,8 @@
     "node_modules/ts-object-utils": {
       "version": "0.0.5",
       "resolved": "https://registry.npmjs.org/ts-object-utils/-/ts-object-utils-0.0.5.tgz",
-      "integrity": "sha512-iV0GvHqOmilbIKJsfyfJY9/dNHCs969z3so90dQWsO1eMMozvTpnB1MEaUbb3FYtZTGjv5sIy/xmslEz0Rg2TA=="
+      "integrity": "sha512-iV0GvHqOmilbIKJsfyfJY9/dNHCs969z3so90dQWsO1eMMozvTpnB1MEaUbb3FYtZTGjv5sIy/xmslEz0Rg2TA==",
+      "license": "ISC"
     },
     "node_modules/ts-regex-builder": {
       "version": "1.8.2",
@@ -36788,9 +36588,10 @@
       }
     },
     "node_modules/tslib": {
-      "version": "2.6.3",
-      "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz",
-      "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ=="
+      "version": "2.8.1",
+      "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+      "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+      "license": "0BSD"
     },
     "node_modules/tsutils": {
       "version": "3.21.0",
@@ -36871,7 +36672,7 @@
       "version": "1.6.18",
       "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
       "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
-      "dev": true,
+      "devOptional": true,
       "license": "MIT",
       "dependencies": {
         "media-typer": "0.3.0",
@@ -36960,7 +36761,7 @@
     },
     "node_modules/typescript": {
       "version": "5.4.5",
-      "dev": true,
+      "devOptional": true,
       "license": "Apache-2.0",
       "bin": {
         "tsc": "bin/tsc",
@@ -37115,30 +36916,6 @@
         "node": ">=0.10.0"
       }
     },
-    "node_modules/unique-filename": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz",
-      "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==",
-      "license": "ISC",
-      "dependencies": {
-        "unique-slug": "^4.0.0"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
-    "node_modules/unique-slug": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz",
-      "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==",
-      "license": "ISC",
-      "dependencies": {
-        "imurmurhash": "^0.1.4"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
     "node_modules/unique-string": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz",
@@ -37158,6 +36935,7 @@
     },
     "node_modules/universalify": {
       "version": "2.0.0",
+      "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">= 10.0.0"
@@ -37300,6 +37078,7 @@
     },
     "node_modules/util-deprecate": {
       "version": "1.0.2",
+      "devOptional": true,
       "license": "MIT"
     },
     "node_modules/utila": {
@@ -37323,6 +37102,7 @@
     },
     "node_modules/uuid": {
       "version": "8.3.2",
+      "dev": true,
       "license": "MIT",
       "bin": {
         "uuid": "dist/bin/uuid"
@@ -37908,6 +37688,15 @@
         "node": ">=10.0.0"
       }
     },
+    "node_modules/webpack-sources": {
+      "version": "3.2.3",
+      "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
+      "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
     "node_modules/webpack-virtual-modules": {
       "version": "0.6.2",
       "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz",
@@ -37915,11 +37704,6 @@
       "dev": true,
       "license": "MIT"
     },
-    "node_modules/webpack/node_modules/@types/estree": {
-      "version": "1.0.5",
-      "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
-      "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="
-    },
     "node_modules/webpack/node_modules/acorn": {
       "version": "8.12.1",
       "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
@@ -37946,13 +37730,6 @@
         "node": ">=6.11.5"
       }
     },
-    "node_modules/webpack/node_modules/webpack-sources": {
-      "version": "3.2.3",
-      "license": "MIT",
-      "engines": {
-        "node": ">=10.13.0"
-      }
-    },
     "node_modules/websocket-driver": {
       "version": "0.7.4",
       "dev": true,
@@ -37986,7 +37763,9 @@
       }
     },
     "node_modules/whatwg-fetch": {
-      "version": "3.6.2",
+      "version": "3.6.20",
+      "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz",
+      "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==",
       "license": "MIT"
     },
     "node_modules/whatwg-url": {
@@ -38346,7 +38125,7 @@
     },
     "node_modules/yaml": {
       "version": "2.3.2",
-      "dev": true,
+      "devOptional": true,
       "license": "ISC",
       "engines": {
         "node": ">= 14"
@@ -38480,7 +38259,7 @@
     },
     "node_modules/zod": {
       "version": "3.23.8",
-      "devOptional": true,
+      "dev": true,
       "license": "MIT",
       "funding": {
         "url": "https://github.com/sponsors/colinhacks"
diff --git a/package.json b/package.json
index 41d0aa708f5e..037901c11394 100644
--- a/package.json
+++ b/package.json
@@ -80,9 +80,9 @@
     "@dotlottie/react-player": "^1.6.3",
     "@expensify/react-native-background-task": "file:./modules/background-task",
     "@expensify/react-native-hybrid-app": "file:./modules/hybrid-app",
-    "@expensify/react-native-live-markdown": "0.1.244",
+    "@expensify/react-native-live-markdown": "0.1.256",
     "@expensify/react-native-wallet": "file:modules/expensify-react-native-wallet.tgz",
-    "@expo/metro-runtime": "^4.0.1",
+    "@expo/metro-runtime": "5.0.1-canary-20250408-7f0ab53",
     "@firebase/app": "^0.10.10",
     "@firebase/performance": "^0.6.8",
     "@formatjs/intl-datetimeformat": "^6.12.5",
@@ -100,6 +100,7 @@
     "@react-native-clipboard/clipboard": "^1.15.0",
     "@react-native-community/geolocation": "3.3.0",
     "@react-native-community/netinfo": "11.2.1",
+    "@react-native-documents/picker": "^10.1.1",
     "@react-native-firebase/analytics": "^12.3.0",
     "@react-native-firebase/app": "^12.3.0",
     "@react-native-firebase/crashlytics": "^12.3.0",
@@ -112,10 +113,10 @@
     "@react-navigation/stack": "6.3.29",
     "@react-ng/bounds-observer": "^0.2.1",
     "@rnmapbox/maps": "10.1.33",
-    "@shopify/flash-list": "1.7.1",
+    "@shopify/flash-list": "1.7.6",
     "@types/pako": "^2.0.3",
     "@types/webrtc": "^0.0.46",
-    "@ua/react-native-airship": "~21.4.1",
+    "@ua/react-native-airship": "22.0.0",
     "awesome-phonenumber": "^5.4.0",
     "babel-polyfill": "^6.26.0",
     "canvas-size": "^1.2.6",
@@ -125,12 +126,12 @@
     "dom-serializer": "^0.2.2",
     "domhandler": "^4.3.0",
     "expensify-common": "2.0.127",
-    "expo": "52.0.41",
-    "expo-asset": "^11.0.5",
-    "expo-av": "^15.0.2",
-    "expo-font": "^13.0.4",
-    "expo-image": "^2.0.4",
-    "expo-image-manipulator": "^13.0.6",
+    "expo": "53.0.0-preview.7",
+    "expo-asset": "11.1.1-canary-20250408-7f0ab53",
+    "expo-av": "15.1.1-canary-20250408-7f0ab53",
+    "expo-font": "13.1.1-canary-20250408-7f0ab53",
+    "expo-image": "2.1.1-canary-20250408-7f0ab53",
+    "expo-image-manipulator": "13.1.1-canary-20250408-7f0ab53",
     "fast-equals": "^4.0.3",
     "focus-trap-react": "^11.0.3",
     "howler": "^2.2.4",
@@ -143,15 +144,15 @@
     "pako": "^2.1.0",
     "process": "^0.11.10",
     "pusher-js": "8.3.0",
-    "react": "18.3.1",
+    "react": "19.0.0",
     "react-beautiful-dnd": "^13.1.1",
     "react-collapse": "^5.1.0",
     "react-content-loader": "^7.0.0",
-    "react-dom": "18.3.1",
+    "react-dom": "19.0.0",
     "react-error-boundary": "^4.0.11",
     "react-fast-pdf": "^1.0.27",
     "react-map-gl": "^7.1.3",
-    "react-native": "0.77.1",
+    "react-native": "0.79.0",
     "react-native-advanced-input-mask": "1.3.1",
     "react-native-android-location-enabler": "^2.0.1",
     "react-native-app-logs": "0.3.1",
@@ -159,10 +160,9 @@
     "react-native-collapsible": "^1.6.2",
     "react-native-config": "1.5.3",
     "react-native-device-info": "10.3.1",
-    "react-native-document-picker": "^9.3.1",
     "react-native-draggable-flatlist": "^4.0.1",
     "react-native-fs": "^2.20.0",
-    "react-native-gesture-handler": "2.22.0",
+    "react-native-gesture-handler": "2.24.0",
     "react-native-google-places-autocomplete": "2.5.6",
     "react-native-haptic-feedback": "^2.3.3",
     "react-native-image-picker": "^7.1.2",
@@ -173,7 +173,7 @@
     "react-native-localize": "^2.2.6",
     "react-native-modal": "^13.0.0",
     "react-native-onyx": "2.0.100",
-    "react-native-pager-view": "6.5.2",
+    "react-native-pager-view": "6.7.0",
     "react-native-pdf": "6.7.3",
     "react-native-performance": "^5.1.0",
     "react-native-permissions": "^3.10.0",
@@ -181,21 +181,21 @@
     "react-native-plaid-link-sdk": "11.11.0",
     "react-native-qrcode-svg": "6.3.14",
     "react-native-quick-sqlite": "git+https://github.com/margelo/react-native-nitro-sqlite#99f34ebefa91698945f3ed26622e002bd79489e0",
-    "react-native-reanimated": "3.17.1",
+    "react-native-reanimated": "3.17.3",
     "react-native-release-profiler": "^0.2.1",
     "react-native-render-html": "6.3.1",
-    "react-native-safe-area-context": "4.12.0",
+    "react-native-safe-area-context": "5.3.0",
     "react-native-screens": "3.37.0",
     "react-native-share": "11.0.2",
     "react-native-sound": "^0.11.2",
-    "react-native-svg": "15.9.0",
+    "react-native-svg": "15.11.2",
     "react-native-tab-view": "^3.5.2",
     "react-native-url-polyfill": "^2.0.0",
-    "react-native-view-shot": "4.0.0",
+    "react-native-view-shot": "4.0.3",
     "react-native-vision-camera": "^4.6.1",
-    "react-native-web": "0.19.13",
+    "react-native-web": "0.20.0",
     "react-native-webrtc": "^124.0.5",
-    "react-native-webview": "13.13.1",
+    "react-native-webview": "13.13.5",
     "react-plaid-link": "3.3.2",
     "react-web-config": "^1.0.0",
     "react-webcam": "^7.1.1",
@@ -235,12 +235,12 @@
     "@perf-profiler/reporter": "^0.9.0",
     "@perf-profiler/types": "^0.8.0",
     "@pmmmwh/react-refresh-webpack-plugin": "^0.5.15",
-    "@react-native-community/cli": "15.0.1",
-    "@react-native-community/cli-platform-android": "15.0.1",
-    "@react-native-community/cli-platform-ios": "15.0.1",
+    "@react-native-community/cli": "18.0.0",
+    "@react-native-community/cli-platform-android": "18.0.0",
+    "@react-native-community/cli-platform-ios": "18.0.0",
     "@react-native-community/eslint-config": "3.2.0",
-    "@react-native/babel-preset": "0.77.1",
-    "@react-native/metro-config": "0.77.1",
+    "@react-native/babel-preset": "0.79.0",
+    "@react-native/metro-config": "0.79.0",
     "@react-navigation/devtools": "^6.0.10",
     "@rnef/cli": "^0.5.3",
     "@rnef/platform-android": "^0.5.3",
@@ -269,13 +269,13 @@
     "@types/mime-db": "^1.43.5",
     "@types/node": "^20.11.5",
     "@types/pusher-js": "^5.1.0",
-    "@types/react": "^18.2.6",
+    "@types/react": "^19.0.0",
     "@types/react-beautiful-dnd": "^13.1.4",
     "@types/react-collapse": "^5.0.1",
-    "@types/react-dom": "^18.2.4",
+    "@types/react-dom": "^19.0.0",
     "@types/react-is": "^18.3.0",
     "@types/react-native-web": "^0.0.0",
-    "@types/react-test-renderer": "^18.0.0",
+    "@types/react-test-renderer": "19.0.0",
     "@types/semver": "^7.5.4",
     "@types/setimmediate": "^1.0.2",
     "@types/webpack": "^5.28.5",
@@ -284,7 +284,7 @@
     "@typescript-eslint/parser": "^7.13.1",
     "@vercel/ncc": "0.38.1",
     "@vue/preload-webpack-plugin": "^2.0.0",
-    "@welldone-software/why-did-you-render": "7.0.1",
+    "@welldone-software/why-did-you-render": "10.0.1",
     "ajv-cli": "^5.0.0",
     "babel-jest": "29.4.1",
     "babel-loader": "^9.1.3",
@@ -322,7 +322,7 @@
     "jest-circus": "29.4.1",
     "jest-cli": "29.4.1",
     "jest-environment-jsdom": "^29.4.1",
-    "jest-expo": "52.0.3",
+    "jest-expo": "53.0.0-canary-20250408-7f0ab53",
     "jest-transformer-svg": "^2.0.1",
     "jest-when": "^3.5.2",
     "link": "^2.1.1",
@@ -338,7 +338,7 @@
     "react-is": "^18.3.1",
     "react-native-clean-project": "^4.0.0-alpha4.0",
     "react-refresh": "^0.14.2",
-    "react-test-renderer": "18.3.1",
+    "react-test-renderer": "19.0.0",
     "reassure": "^1.0.0-rc.4",
     "semver": "7.5.2",
     "setimmediate": "^1.0.5",
@@ -378,7 +378,10 @@
     "body-parser": "1.20.3",
     "path-to-regexp": "0.1.10",
     "send": "0.19.0",
-    "regexpu-core": "5.3.2"
+    "regexpu-core": "5.3.2",
+    "react": "19.0.0",
+    "react-dom": "19.0.0",
+    "expo": "53.0.0-preview.7"
   },
   "expo": {
     "autolinking": {
@@ -402,5 +405,6 @@
   "engines": {
     "node": "20.18.1",
     "npm": "10.8.2"
-  }
+  },
+  "packageManager": "yarn@4.5.0+sha512.837566d24eec14ec0f5f1411adb544e892b3454255e61fdef8fd05f3429480102806bac7446bc9daff3896b01ae4b62d00096c7e989f1596f2af10b927532f39"
 }
diff --git a/patches/@expensify+react-native-live-markdown+0.1.256+001+support-RN-78.patch b/patches/@expensify+react-native-live-markdown+0.1.256+001+support-RN-78.patch
new file mode 100644
index 000000000000..123c10f5dc0c
--- /dev/null
+++ b/patches/@expensify+react-native-live-markdown+0.1.256+001+support-RN-78.patch
@@ -0,0 +1,48 @@
+diff --git a/node_modules/@expensify/react-native-live-markdown/android/src/main/new_arch/react/renderer/components/RNLiveMarkdownSpec/MarkdownTextInputDecoratorShadowNode.cpp b/node_modules/@expensify/react-native-live-markdown/android/src/main/new_arch/react/renderer/components/RNLiveMarkdownSpec/MarkdownTextInputDecoratorShadowNode.cpp
+index f608576..5671af7 100644
+--- a/node_modules/@expensify/react-native-live-markdown/android/src/main/new_arch/react/renderer/components/RNLiveMarkdownSpec/MarkdownTextInputDecoratorShadowNode.cpp
++++ b/node_modules/@expensify/react-native-live-markdown/android/src/main/new_arch/react/renderer/components/RNLiveMarkdownSpec/MarkdownTextInputDecoratorShadowNode.cpp
+@@ -3,7 +3,6 @@
+ #include <fbjni/fbjni.h>
+ #include <react/fabric/JFabricUIManager.h>
+ #include <react/jni/ReadableNativeMap.h>
+-#include <react/renderer/components/androidtextinput/AndroidTextInputState.h>
+ #include <react/renderer/components/view/conversions.h>
+ #include <react/renderer/core/ComponentDescriptor.h>
+ #include <yoga/Yoga.h>
+diff --git a/node_modules/@expensify/react-native-live-markdown/apple/MarkdownTextInputDecoratorShadowNode.mm b/node_modules/@expensify/react-native-live-markdown/apple/MarkdownTextInputDecoratorShadowNode.mm
+index 0249590..7e41d4b 100644
+--- a/node_modules/@expensify/react-native-live-markdown/apple/MarkdownTextInputDecoratorShadowNode.mm
++++ b/node_modules/@expensify/react-native-live-markdown/apple/MarkdownTextInputDecoratorShadowNode.mm
+@@ -1,6 +1,6 @@
+ #include "MarkdownTextInputDecoratorShadowNode.h"
+ 
+-#include <react/renderer/components/iostextinput/TextInputState.h>
++#include <react/renderer/components/textinput/TextInputState.h>
+ 
+ #include <React/RCTUtils.h>
+ #include <react/renderer/components/view/conversions.h>
+@@ -88,7 +88,9 @@ Size MarkdownTextInputDecoratorShadowNode::measureContent(
+       std::const_pointer_cast<TextInputShadowNode>(child);
+   applyMarkdownFormattingToTextInputState(mutableChild, layoutContext);
+ 
+-  return child->measureContent(layoutContext, layoutConstraints);
++  const auto childWithMeasureContentAccess =
++      std::static_pointer_cast<const YogaLayoutableShadowNode>(child);
++  return childWithMeasureContentAccess->measureContent(layoutContext, layoutConstraints);
+ }
+ 
+ void MarkdownTextInputDecoratorShadowNode::layout(LayoutContext layoutContext) {
+diff --git a/node_modules/@expensify/react-native-live-markdown/src/MarkdownTextInput.web.tsx b/node_modules/@expensify/react-native-live-markdown/src/MarkdownTextInput.web.tsx
+index 348b6d5..a93833a 100644
+--- a/node_modules/@expensify/react-native-live-markdown/src/MarkdownTextInput.web.tsx
++++ b/node_modules/@expensify/react-native-live-markdown/src/MarkdownTextInput.web.tsx
+@@ -133,7 +133,7 @@ const MarkdownTextInput = React.forwardRef<MarkdownTextInput, MarkdownTextInputP
+     const currentlyFocusedField = useRef<HTMLDivElement | null>(null);
+     const contentSelection = useRef<Selection | null>(null);
+     const className = `react-native-live-markdown-input-${multiline ? 'multiline' : 'singleline'}`;
+-    const history = useRef<InputHistory>();
++    const history = useRef<InputHistory | null>(null);
+     const dimensions = useRef<Dimensions | null>(null);
+     const pasteContent = useRef<string | null>(null);
+     const hasJustBeenFocused = useRef<boolean>(false);
diff --git a/patches/@react-native+gradle-plugin+0.77.1.patch b/patches/@react-native+gradle-plugin+0.79.0.patch
similarity index 100%
rename from patches/@react-native+gradle-plugin+0.77.1.patch
rename to patches/@react-native+gradle-plugin+0.79.0.patch
diff --git a/patches/@react-native+virtualized-lists+0.77.1+001+onStartReched.patch b/patches/@react-native+virtualized-lists+0.77.1+001+onStartReched.patch
deleted file mode 100644
index b183124964f6..000000000000
--- a/patches/@react-native+virtualized-lists+0.77.1+001+onStartReched.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-diff --git a/node_modules/@react-native/virtualized-lists/Lists/VirtualizedList.js b/node_modules/@react-native/virtualized-lists/Lists/VirtualizedList.js
-index 0516679..e338d90 100644
---- a/node_modules/@react-native/virtualized-lists/Lists/VirtualizedList.js
-+++ b/node_modules/@react-native/virtualized-lists/Lists/VirtualizedList.js
-@@ -1546,7 +1546,7 @@ class VirtualizedList extends StateSafePureComponent<Props, State> {
-     // Next check if the user just scrolled within the start threshold
-     // and call onStartReached only once for a given content length,
-     // and only if onEndReached is not being executed
--    else if (
-+    if (
-       onStartReached != null &&
-       this.state.cellsAroundViewport.first === 0 &&
-       isWithinStartThreshold &&
-@@ -1558,13 +1558,11 @@ class VirtualizedList extends StateSafePureComponent<Props, State> {
- 
-     // If the user scrolls away from the start or end and back again,
-     // cause onStartReached or onEndReached to be triggered again
--    else {
--      this._sentStartForContentLength = isWithinStartThreshold
--        ? this._sentStartForContentLength
--        : 0;
--      this._sentEndForContentLength = isWithinEndThreshold
--        ? this._sentEndForContentLength
--        : 0;
-+    if (!isWithinStartThreshold) {
-+      this._sentStartForContentLength = 0;
-+    }
-+    if (!isWithinEndThreshold) {
-+      this._sentEndForContentLength = 0;
-     }
-   }
- 
diff --git a/patches/@react-native+virtualized-lists+0.77.1+002+osr-improvement.patch b/patches/@react-native+virtualized-lists+0.79.0+001+osr-improvement.patch
similarity index 95%
rename from patches/@react-native+virtualized-lists+0.77.1+002+osr-improvement.patch
rename to patches/@react-native+virtualized-lists+0.79.0+001+osr-improvement.patch
index 32367b75bba1..8c78dadc2212 100644
--- a/patches/@react-native+virtualized-lists+0.77.1+002+osr-improvement.patch
+++ b/patches/@react-native+virtualized-lists+0.79.0+001+osr-improvement.patch
@@ -63,8 +63,8 @@ index 37b70ad..7441734 100644
      }
    }
  
--  componentDidUpdate(prevProps: Props) {
-+  componentDidUpdate(prevProps: Props, prevState: State) {
+-  componentDidUpdate(prevProps: VirtualizedListProps) {
++  componentDidUpdate(prevProps: VirtualizedListProps, prevState: State) {
      const {data, extraData, getItemLayout} = this.props;
      if (data !== prevProps.data || extraData !== prevProps.extraData) {
        // clear the viewableIndices cache to also trigger
@@ -83,11 +83,11 @@ index 37b70ad..7441734 100644
 @@ -1225,7 +1232,7 @@ class VirtualizedList extends StateSafePureComponent<Props, State> {
      zoomScale: 1,
    };
-   _scrollRef: ?React.ElementRef<any> = null;
+   _scrollRef: ?React.ElementRef<typeof ScrollView> = null;
 -  _sentStartForContentLength = 0;
 +  _sentStartForFirstVisibleItemKey: ?string = null;
    _sentEndForContentLength = 0;
-   _updateCellsToRenderBatcher: Batchinator;
+   _updateCellsToRenderTimeoutID: ?TimeoutID = null;
    _viewabilityTuples: Array<ViewabilityHelperCallbackTuple> = [];
 @@ -1566,16 +1573,16 @@ class VirtualizedList extends StateSafePureComponent<Props, State> {
        onStartReached != null &&
diff --git a/patches/@react-ng+bounds-observer+0.2.1.patch b/patches/@react-ng+bounds-observer+0.2.1.patch
new file mode 100644
index 000000000000..f21229248cfb
--- /dev/null
+++ b/patches/@react-ng+bounds-observer+0.2.1.patch
@@ -0,0 +1,67 @@
+diff --git a/node_modules/@react-ng/bounds-observer/src/index.tsx b/node_modules/@react-ng/bounds-observer/src/index.tsx
+index c690fcc..b6841c7 100644
+--- a/node_modules/@react-ng/bounds-observer/src/index.tsx
++++ b/node_modules/@react-ng/bounds-observer/src/index.tsx
+@@ -1,6 +1,5 @@
+ import React, {ReactInstance, RefObject} from "react";
+ import {BoundingClientRectObserver} from "@html-ng/bounding-client-rect-observer";
+-import PropTypes from "prop-types";
+ import ReactDOM from 'react-dom';
+ 
+ interface BoundsObserverProps {
+@@ -12,10 +11,6 @@ interface BoundsObserverProps {
+ }
+ 
+ export class BoundsObserver extends React.Component<BoundsObserverProps, {}> {
+-    static propTypes = {
+-        children: PropTypes.element.isRequired,
+-    };
+-
+     private _childRef = React.createRef<ReactInstance>();
+ 
+     private _childNode: Element | null = null;
+@@ -27,14 +22,12 @@ export class BoundsObserver extends React.Component<BoundsObserverProps, {}> {
+     }
+ 
+     componentDidMount() {
+-        const childRef = this._childRef.current;
++        const childNode = this._childRef.current;
+ 
+-        if (!childRef) {
++        if (!childNode) {
+             throw new Error("Reference should have been set by the time the component is mounted");
+         }
+ 
+-        const childNode = ReactDOM.findDOMNode(childRef);
+-
+         if (!(childNode instanceof Element)) {
+             throw new Error("Child's corresponding DOM node should be an Element");
+         }
+diff --git a/node_modules/@react-ng/bounds-observer/dist/index.js b/node_modules/@react-ng/bounds-observer/dist/index.js
+index b3c9cb3..9ffd885 100644
+--- a/node_modules/@react-ng/bounds-observer/dist/index.js
++++ b/node_modules/@react-ng/bounds-observer/dist/index.js
+@@ -33,11 +33,10 @@ var BoundsObserver = exports.BoundsObserver = /** @class */ (function (_super) {
+         return _this;
+     }
+     BoundsObserver.prototype.componentDidMount = function () {
+-        var childRef = this._childRef.current;
+-        if (!childRef) {
++        var childNode = this._childRef.current;
++        if (!childNode) {
+             throw new Error("Reference should have been set by the time the component is mounted");
+         }
+-        var childNode = react_dom_1.default.findDOMNode(childRef);
+         if (!(childNode instanceof Element)) {
+             throw new Error("Child's corresponding DOM node should be an Element");
+         }
+@@ -126,9 +125,6 @@ var BoundsObserver = exports.BoundsObserver = /** @class */ (function (_super) {
+         var observer = args.observer;
+         observer.disconnect();
+     };
+-    BoundsObserver.propTypes = {
+-        children: prop_types_1.default.element.isRequired,
+-    };
+     return BoundsObserver;
+ }(react_1.default.Component));
+ //# sourceMappingURL=index.js.map
diff --git a/patches/@ua+react-native-airship+22.0.0+001+support-rn-79.patch b/patches/@ua+react-native-airship+22.0.0+001+support-rn-79.patch
new file mode 100644
index 000000000000..46e851f252bf
--- /dev/null
+++ b/patches/@ua+react-native-airship+22.0.0+001+support-rn-79.patch
@@ -0,0 +1,55 @@
+diff --git a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/AirshipHeadlessEventService.kt b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/AirshipHeadlessEventService.kt
+index eb5b02a..23f7e5a 100644
+--- a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/AirshipHeadlessEventService.kt
++++ b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/AirshipHeadlessEventService.kt
+@@ -11,7 +11,7 @@ import com.urbanairship.android.framework.proxy.ProxyLogger
+ 
+ class AirshipHeadlessEventService : HeadlessJsTaskService() {
+ 
+-    override fun getTaskConfig(intent: Intent): HeadlessJsTaskConfig? {
++    override fun getTaskConfig(intent: Intent?): HeadlessJsTaskConfig? {
+         return HeadlessJsTaskConfig(TASK_KEY, Arguments.createMap(), TASK_TIMEOUT, true)
+     }
+ 
+diff --git a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactEmbeddedViewManager.kt b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactEmbeddedViewManager.kt
+index a9ba070..dba2aed 100644
+--- a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactEmbeddedViewManager.kt
++++ b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactEmbeddedViewManager.kt
+@@ -13,14 +13,14 @@ class ReactEmbeddedViewManager : SimpleViewManager<ReactEmbeddedView>(),
+ 
+     private val manualDelegate = object : ViewManagerDelegate<ReactEmbeddedView> {
+ 
+-        override fun setProperty(view: ReactEmbeddedView, propName: String?, value: Any?) {
++        override fun setProperty(view: ReactEmbeddedView, propName: String, value: Any?) {
+             when (propName) {
+                 "embeddedId" -> setEmbeddedId(view, value as? String)
+                 else -> {}
+             }
+         }
+ 
+-        override fun receiveCommand(view: ReactEmbeddedView, commandName: String?, args: com.facebook.react.bridge.ReadableArray?) {
++        override fun receiveCommand(view: ReactEmbeddedView, commandName: String, args: com.facebook.react.bridge.ReadableArray?) {
+             // No commands supported — add if you need any
+         }
+     }
+diff --git a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactMessageViewManager.kt b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactMessageViewManager.kt
+index 8727e52..4aa80c8 100644
+--- a/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactMessageViewManager.kt
++++ b/node_modules/@ua/react-native-airship/android/src/main/java/com/urbanairship/reactnative/ReactMessageViewManager.kt
+@@ -15,14 +15,14 @@ class ReactMessageViewManager : SimpleViewManager<ReactMessageView>(),
+ 
+     private val delegate = object : ViewManagerDelegate<ReactMessageView> {
+ 
+-        override fun setProperty(view: ReactMessageView, propName: String?, value: Any?) {
++        override fun setProperty(view: ReactMessageView, propName: String, value: Any?) {
+             when (propName) {
+                 "messageId" -> setMessageId(view, value as? String)
+                 else -> {}
+             }
+         }
+ 
+-        override fun receiveCommand(view: ReactMessageView, commandName: String?, args: ReadableArray?) {
++        override fun receiveCommand(view: ReactMessageView, commandName: String, args: ReadableArray?) {
+             // No commands implemented, add if Airship adds some in future
+         }
+     }
diff --git a/patches/expo-asset+11.0.5+002+initial.patch b/patches/expo-asset+11.0.5+002+initial.patch
deleted file mode 100644
index c9505e69e230..000000000000
--- a/patches/expo-asset+11.0.5+002+initial.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/node_modules/expo-asset/build/PlatformUtils.web.js b/node_modules/expo-asset/build/PlatformUtils.web.js
-index c013cd0..03662e1 100644
---- a/node_modules/expo-asset/build/PlatformUtils.web.js
-+++ b/node_modules/expo-asset/build/PlatformUtils.web.js
-@@ -1,4 +1,19 @@
--export const IS_ENV_WITH_LOCAL_ASSETS = false;
-+import {requireOptionalNativeModule} from 'expo-modules-core';
-+import Constants, {AppOwnership} from 'expo-constants';
-+
-+const ExpoUpdates = requireOptionalNativeModule('ExpoUpdates');
-+const isRunningInExpoGo = Constants.appOwnership === AppOwnership.Expo;
-+// expo-updates (and Expo Go expo-updates override) manages assets from updates and exposes
-+// the ExpoUpdates.localAssets constant containing information about the assets.
-+const expoUpdatesIsInstalledAndEnabled = !!ExpoUpdates?.isEnabled;
-+const expoUpdatesIsUsingEmbeddedAssets = ExpoUpdates?.isUsingEmbeddedAssets;
-+// if expo-updates is installed but we're running directly from the embedded bundle, we don't want
-+// to override the AssetSourceResolver.
-+const shouldUseUpdatesAssetResolution = expoUpdatesIsInstalledAndEnabled && !expoUpdatesIsUsingEmbeddedAssets;
-+// Expo Go always uses the updates module for asset resolution (local assets) since it
-+// overrides the expo-updates module.
-+export const IS_ENV_WITH_LOCAL_ASSETS = isRunningInExpoGo || shouldUseUpdatesAssetResolution;
-+
- export function getLocalAssets() {
-     return {};
- }
diff --git a/patches/expo-av+15.0.2+001+fix-blank-screen-android.patch b/patches/expo-av+15.1.1-canary-20250408-7f0ab53+001+fix-blank-screen-android.patch
similarity index 100%
rename from patches/expo-av+15.0.2+001+fix-blank-screen-android.patch
rename to patches/expo-av+15.1.1-canary-20250408-7f0ab53+001+fix-blank-screen-android.patch
diff --git a/patches/expo-av+15.0.2+002+handle-unsupported-videos-ios.patch b/patches/expo-av+15.1.1-canary-20250408-7f0ab53+002+handle-unsupported-videos-ios.patch
similarity index 100%
rename from patches/expo-av+15.0.2+002+handle-unsupported-videos-ios.patch
rename to patches/expo-av+15.1.1-canary-20250408-7f0ab53+002+handle-unsupported-videos-ios.patch
diff --git a/patches/expo-image-manipulator+13.0.6+002+fix-type-exports.patch b/patches/expo-image-manipulator+13.0.6+002+fix-type-exports.patch
deleted file mode 100644
index e70777f20ac3..000000000000
--- a/patches/expo-image-manipulator+13.0.6+002+fix-type-exports.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/node_modules/expo-image-manipulator/src/index.ts b/node_modules/expo-image-manipulator/src/index.ts
-index 65e63fb..9b60a58 100644
---- a/node_modules/expo-image-manipulator/src/index.ts
-+++ b/node_modules/expo-image-manipulator/src/index.ts
-@@ -1,9 +1,10 @@
- export { ImageManipulator, manipulateAsync, useImageManipulator } from './ImageManipulator';
-+export { SaveFormat } from './ImageManipulator.types';
- 
--export { SaveOptions, SaveFormat, ImageResult } from './ImageManipulator.types';
-+export type { SaveOptions, ImageResult } from './ImageManipulator.types';
- 
- // Export types that are deprecated as of SDK 52
--export {
-+export type {
-   ActionResize,
-   ActionRotate,
-   FlipType,
diff --git a/patches/expo-image-manipulator+13.0.6+001+initial.patch b/patches/expo-image-manipulator+13.1.1-canary-20250408-7f0ab53+001+initial.patch
similarity index 100%
rename from patches/expo-image-manipulator+13.0.6+001+initial.patch
rename to patches/expo-image-manipulator+13.1.1-canary-20250408-7f0ab53+001+initial.patch
diff --git a/patches/expo-modules-core+2.2.3+001+disableViewRecycling.patch b/patches/expo-modules-core+2.2.3+001+disableViewRecycling.patch
deleted file mode 100644
index f638a14bb0e8..000000000000
--- a/patches/expo-modules-core+2.2.3+001+disableViewRecycling.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/node_modules/expo-modules-core/ios/Fabric/ExpoFabricViewObjC.mm b/node_modules/expo-modules-core/ios/Fabric/ExpoFabricViewObjC.mm
-index 2eacddf..346bbb9 100644
---- a/node_modules/expo-modules-core/ios/Fabric/ExpoFabricViewObjC.mm
-+++ b/node_modules/expo-modules-core/ios/Fabric/ExpoFabricViewObjC.mm
-@@ -138,6 +138,11 @@ - (void)finalizeUpdates:(RNComponentViewUpdateMask)updateMask
-   }
- }
- 
-++ (BOOL)shouldBeRecycled
-+{
-+    return NO;
-+}
-+
- #pragma mark - Events
- 
- - (void)dispatchEvent:(nonnull NSString *)eventName payload:(nullable id)payload
diff --git a/patches/expo-modules-core+2.2.3+002+change-global-type.patch b/patches/expo-modules-core+2.2.3+002+change-global-type.patch
deleted file mode 100644
index a73948326a38..000000000000
--- a/patches/expo-modules-core+2.2.3+002+change-global-type.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/node_modules/expo-modules-core/build/ts-declarations/global.d.ts b/node_modules/expo-modules-core/build/ts-declarations/global.d.ts
-index 6ec6769..5374ce4 100644
---- a/node_modules/expo-modules-core/build/ts-declarations/global.d.ts
-+++ b/node_modules/expo-modules-core/build/ts-declarations/global.d.ts
-@@ -58,7 +58,7 @@ export interface ExpoProcessEnv {
-     EXPO_BASE_URL?: string;
-     /** Build-time representation of the `Platform.OS` value that the current JavaScript was bundled for. Does not support platform shaking wrapped require statements. */
-     EXPO_OS?: string;
--    [key: string]: any;
-+    [key: string]: string;
- }
- export interface ExpoProcess {
-     env: ExpoProcessEnv;
diff --git a/patches/jest-expo+52.0.3.patch b/patches/jest-expo+52.0.3.patch
deleted file mode 100644
index 4ed3286ff518..000000000000
--- a/patches/jest-expo+52.0.3.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/node_modules/jest-expo/src/preset/setup.js b/node_modules/jest-expo/src/preset/setup.js
-index 7a77203..d905ebe 100644
---- a/node_modules/jest-expo/src/preset/setup.js
-+++ b/node_modules/jest-expo/src/preset/setup.js
-@@ -293,5 +293,8 @@ try {
- // Installs web implementations of global things that are normally installed through JSI.
- require('expo-modules-core/src/web/index.web');
- 
-+jest.doMock('expo/src/winter/FormData', () => ({
-+  installFormDataPatch: jest.fn(),
-+}));
- // Ensure the environment globals are installed before the first test runs.
- require('expo/src/winter');
diff --git a/patches/react-native+0.77.1+022+disable-suggestion-pop-up.patch b/patches/react-native+0.77.1+022+disable-suggestion-pop-up.patch
deleted file mode 100644
index c9a9238a9510..000000000000
--- a/patches/react-native+0.77.1+022+disable-suggestion-pop-up.patch
+++ /dev/null
@@ -1,322 +0,0 @@
-diff --git a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
-index 865ccb2..4bedac9 100644
---- a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
-+++ b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
-@@ -170,6 +170,7 @@ const RCTTextInputViewConfig = {
-       onChangeSync: true,
-       onKeyPressSync: true,
-     }),
-+    disableKeyboardShortcuts: true,
-   },
- };
- 
-diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-index 214ccc0..2112772 100644
---- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-+++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-@@ -136,6 +136,11 @@ export interface DocumentSelectionState extends EventEmitter {
-  * @see https://reactnative.dev/docs/textinput#props
-  */
- export interface TextInputIOSProps {
-+  /**
-+   * If true, the keyboard shortcuts (undo/redo and copy buttons) are disabled. The default value is false.
-+   */
-+  disableKeyboardShortcuts?: boolean | undefined;
-+
-   /**
-    * enum('never', 'while-editing', 'unless-editing', 'always')
-    * When the clear button should appear on the right side of the text view
-diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js b/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
-index 64a5b99..2a7660c 100644
---- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
-+++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
-@@ -228,6 +228,12 @@ export type enterKeyHintType =
- type PasswordRules = string;
- 
- type IOSProps = $ReadOnly<{|
-+    /**
-+   * If true, the keyboard shortcuts (undo/redo and copy buttons) are disabled. The default value is false.
-+   * @platform ios
-+   */
-+    disableKeyboardShortcuts?: ?boolean,
-+
-   /**
-    * When the clear button should appear on the right side of the text view.
-    * This property is supported only for single-line TextInput component.
-diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-index 0684516..a077ccc 100644
---- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-+++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-@@ -272,6 +272,12 @@ export type enterKeyHintType =
- type PasswordRules = string;
- 
- type IOSProps = $ReadOnly<{|
-+    /**
-+   * If true, the keyboard shortcuts (undo/redo and copy buttons) are disabled. The default value is false.
-+   * @platform ios
-+   */
-+    disableKeyboardShortcuts?: ?boolean,
-+
-   /**
-    * When the clear button should appear on the right side of the text view.
-    * This property is supported only for single-line TextInput component.
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.h b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.h
-index e176ff3..be946f8 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.h
-+++ b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.h
-@@ -39,6 +39,8 @@ NS_ASSUME_NONNULL_BEGIN
- @property (nonatomic, strong, nullable) NSString *inputAccessoryViewID;
- @property (nonatomic, strong, nullable) NSString *inputAccessoryViewButtonLabel;
- 
-+@property (nonatomic, assign) BOOL disableKeyboardShortcuts;
-+
- @end
- 
- NS_ASSUME_NONNULL_END
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
-index 065a819..b521dd9 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
-+++ b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
-@@ -22,6 +22,8 @@ @implementation RCTUITextView {
-   UITextView *_detachedTextView;
-   RCTBackedTextViewDelegateAdapter *_textInputDelegateAdapter;
-   NSDictionary<NSAttributedStringKey, id> *_defaultTextAttributes;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueLeadingBarButtonGroups;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueTrailingBarButtonGroups;
- }
- 
- static UIFont *defaultPlaceholderFont(void)
-@@ -56,6 +58,8 @@ - (instancetype)initWithFrame:(CGRect)frame
-     self.textContainer.lineFragmentPadding = 0;
-     self.scrollsToTop = NO;
-     self.scrollEnabled = YES;
-+    _initialValueLeadingBarButtonGroups = nil;
-+    _initialValueTrailingBarButtonGroups = nil;
-   }
- 
-   return self;
-@@ -136,6 +140,25 @@ - (void)textDidChange
-   [self _invalidatePlaceholderVisibility];
- }
- 
-+- (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts
-+{
-+  // Initialize the initial values only once
-+  if (_initialValueLeadingBarButtonGroups == nil) {
-+    // Capture initial values of leading and trailing button groups
-+    _initialValueLeadingBarButtonGroups = self.inputAssistantItem.leadingBarButtonGroups;
-+    _initialValueTrailingBarButtonGroups = self.inputAssistantItem.trailingBarButtonGroups;
-+  }
-+
-+  if (disableKeyboardShortcuts) {
-+    self.inputAssistantItem.leadingBarButtonGroups = @[];
-+    self.inputAssistantItem.trailingBarButtonGroups = @[];
-+  } else {
-+    // Restore the initial values
-+    self.inputAssistantItem.leadingBarButtonGroups = _initialValueLeadingBarButtonGroups;
-+    self.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups;
-+  }
-+}
-+
- #pragma mark - Overrides
- 
- - (void)setFont:(UIFont *)font
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h b/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h
-index e3df41a..1f1af7e 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h
-+++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h
-@@ -52,6 +52,8 @@ NS_ASSUME_NONNULL_BEGIN
- // Use `attributedText.string` instead.
- @property (nonatomic, copy, nullable) NSString *text NS_UNAVAILABLE;
- 
-+@property (nonatomic, assign) BOOL disableKeyboardShortcuts;
-+
- @end
- 
- NS_ASSUME_NONNULL_END
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
-index 4d82c72..0d6f8aa 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
-+++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
-@@ -30,6 +30,8 @@ @implementation RCTBaseTextInputView {
-   BOOL _hasInputAccessoryView;
-   NSString *_Nullable _predictedText;
-   BOOL _didMoveToWindow;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueLeadingBarButtonGroups;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueTrailingBarButtonGroups;
- }
- 
- - (void)reactUpdateResponderOffsetForScrollView:(RCTScrollView *)scrollView
-@@ -65,6 +67,8 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge
-     _bridge = bridge;
-     _eventDispatcher = bridge.eventDispatcher;
-     [self initializeReturnKeyType];
-+    _initialValueLeadingBarButtonGroups = nil;
-+    _initialValueTrailingBarButtonGroups = nil;
-   }
- 
-   return self;
-@@ -394,6 +398,25 @@ - (void)setInputAccessoryViewButtonLabel:(NSString *)inputAccessoryViewButtonLab
-   self.backedTextInputView.inputAccessoryViewButtonLabel = inputAccessoryViewButtonLabel;
- }
- 
-+- (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts
-+{
-+  // Initialize the initial values only once
-+  if (_initialValueLeadingBarButtonGroups == nil) {
-+    // Capture initial values of leading and trailing button groups
-+    _initialValueLeadingBarButtonGroups = self.backedTextInputView.inputAssistantItem.leadingBarButtonGroups;
-+    _initialValueTrailingBarButtonGroups = self.backedTextInputView.inputAssistantItem.trailingBarButtonGroups;
-+  }
-+
-+  if (disableKeyboardShortcuts) {
-+    self.backedTextInputView.inputAssistantItem.leadingBarButtonGroups = @[];
-+    self.backedTextInputView.inputAssistantItem.trailingBarButtonGroups = @[];
-+  } else {
-+    // Restore the initial values
-+    self.backedTextInputView.inputAssistantItem.leadingBarButtonGroups = _initialValueLeadingBarButtonGroups;
-+    self.backedTextInputView.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups;
-+  }
-+}
-+
- #pragma mark - RCTBackedTextInputDelegate
- 
- - (BOOL)textInputShouldBeginEditing
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-index ec05595..4b43542 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-+++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-@@ -71,6 +71,8 @@ @implementation RCTBaseTextInputViewManager {
- 
- RCT_EXPORT_VIEW_PROPERTY(mostRecentEventCount, NSInteger)
- 
-+RCT_EXPORT_VIEW_PROPERTY(disableKeyboardShortcuts, BOOL)
-+
- RCT_EXPORT_SHADOW_PROPERTY(text, NSString)
- RCT_EXPORT_SHADOW_PROPERTY(placeholder, NSString)
- RCT_EXPORT_SHADOW_PROPERTY(onContentSizeChange, RCTDirectEventBlock)
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.h b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.h
-index 13c0b22..fe6d957 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.h
-+++ b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.h
-@@ -34,6 +34,7 @@ NS_ASSUME_NONNULL_BEGIN
- @property (nonatomic, assign, readonly) CGFloat zoomScale;
- @property (nonatomic, assign, readonly) CGPoint contentOffset;
- @property (nonatomic, assign, readonly) UIEdgeInsets contentInset;
-+@property (nonatomic, assign) BOOL disableKeyboardShortcuts;
- 
- @end
- 
-diff --git a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
-index 667e646..617f05f 100644
---- a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
-+++ b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
-@@ -19,6 +19,8 @@
- @implementation RCTUITextField {
-   RCTBackedTextFieldDelegateAdapter *_textInputDelegateAdapter;
-   NSDictionary<NSAttributedStringKey, id> *_defaultTextAttributes;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueLeadingBarButtonGroups;
-+  NSArray<UIBarButtonItemGroup *> *_initialValueTrailingBarButtonGroups;
- }
- 
- - (instancetype)initWithFrame:(CGRect)frame
-@@ -31,6 +33,8 @@ - (instancetype)initWithFrame:(CGRect)frame
- 
-     _textInputDelegateAdapter = [[RCTBackedTextFieldDelegateAdapter alloc] initWithTextField:self];
-     _scrollEnabled = YES;
-+    _initialValueLeadingBarButtonGroups = nil;
-+    _initialValueTrailingBarButtonGroups = nil;
-   }
- 
-   return self;
-@@ -119,6 +123,25 @@ - (void)setSecureTextEntry:(BOOL)secureTextEntry
-   self.attributedText = originalText;
- }
- 
-+- (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts
-+{
-+  // Initialize the initial values only once
-+  if (_initialValueLeadingBarButtonGroups == nil) {
-+    // Capture initial values of leading and trailing button groups
-+    _initialValueLeadingBarButtonGroups = self.inputAssistantItem.leadingBarButtonGroups;
-+    _initialValueTrailingBarButtonGroups = self.inputAssistantItem.trailingBarButtonGroups;
-+  }
-+
-+  if (disableKeyboardShortcuts) {
-+    self.inputAssistantItem.leadingBarButtonGroups = @[];
-+    self.inputAssistantItem.trailingBarButtonGroups = @[];
-+  } else {
-+    // Restore the initial values
-+    self.inputAssistantItem.leadingBarButtonGroups = _initialValueLeadingBarButtonGroups;
-+    self.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups;
-+  }
-+}
-+
- #pragma mark - Placeholder
- 
- - (NSDictionary<NSAttributedStringKey, id> *)_placeholderTextAttributes
-diff --git a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-index 91aff1a..673043c 100644
---- a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-+++ b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-@@ -290,6 +290,11 @@ - (void)updateProps:(const Props::Shared &)props oldProps:(const Props::Shared &
-     _backedTextInputView.inputAccessoryViewButtonLabel =
-         RCTNSStringFromString(newTextInputProps.inputAccessoryViewButtonLabel);
-   }
-+
-+  if (newTextInputProps.disableKeyboardShortcuts != oldTextInputProps.disableKeyboardShortcuts) {
-+    _backedTextInputView.disableKeyboardShortcuts = newTextInputProps.disableKeyboardShortcuts;
-+  }
-+  
-   [super updateProps:props oldProps:oldProps];
- 
-   [self setDefaultInputAccessoryView];
-diff --git a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm
-index 2b0278d..6e562ad 100644
---- a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm
-+++ b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm
-@@ -45,6 +45,7 @@ void RCTCopyBackedTextInput(
-   toTextInput.textContentType = fromTextInput.textContentType;
-   toTextInput.smartInsertDeleteType = fromTextInput.smartInsertDeleteType;
-   toTextInput.passwordRules = fromTextInput.passwordRules;
-+  toTextInput.disableKeyboardShortcuts = fromTextInput.disableKeyboardShortcuts;
- 
-   [toTextInput setSelectedTextRange:fromTextInput.selectedTextRange notifyDelegate:NO];
- }
-diff --git a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp
-index 80cbdc5..5acaa45 100644
---- a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp
-+++ b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp
-@@ -103,6 +103,12 @@ BaseTextInputProps::BaseTextInputProps(
-           "autoCapitalize",
-           sourceProps.autoCapitalize,
-           {})),
-+      disableKeyboardShortcuts(convertRawProp(
-+          context,
-+          rawProps,
-+          "disableKeyboardShortcuts",
-+          sourceProps.disableKeyboardShortcuts,
-+          {false})),
-       editable(convertRawProp(
-           context,
-           rawProps,
-@@ -204,6 +210,7 @@ void BaseTextInputProps::setProp(
-     RAW_SET_PROP_SWITCH_CASE_BASIC(text);
-     RAW_SET_PROP_SWITCH_CASE_BASIC(mostRecentEventCount);
-     RAW_SET_PROP_SWITCH_CASE_BASIC(autoCapitalize);
-+    RAW_SET_PROP_SWITCH_CASE_BASIC(disableKeyboardShortcuts);
-     RAW_SET_PROP_SWITCH_CASE_BASIC(editable);
-     RAW_SET_PROP_SWITCH_CASE_BASIC(readOnly);
-     RAW_SET_PROP_SWITCH_CASE_BASIC(submitBehavior);
-diff --git a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h
-index 36c199b..3fb7fa5 100644
---- a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h
-+++ b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h
-@@ -65,6 +65,7 @@ class BaseTextInputProps : public ViewProps, public BaseTextProps {
- 
-   std::string autoCapitalize{};
- 
-+  bool disableKeyboardShortcuts{false};
-   bool editable{true};
-   bool readOnly{false};
- 
diff --git a/patches/react-native+0.77.1+023+dont-enable-height-centering.patch b/patches/react-native+0.77.1+023+dont-enable-height-centering.patch
deleted file mode 100644
index f66a8e9c1174..000000000000
--- a/patches/react-native+0.77.1+023+dont-enable-height-centering.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt
-index f90ad02..44a8e36 100644
---- a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt
-+++ b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt
-@@ -50,6 +50,8 @@ public object DefaultNewArchitectureEntryPoint {
-           override fun enableEventEmitterRetentionDuringGesturesOnAndroid(): Boolean =
-               bridgelessEnabled || fabricEnabled
- 
-+          override fun enableAndroidLineHeightCentering(): Boolean = false
-+
-           override fun useTurboModules(): Boolean = bridgelessEnabled || turboModulesEnabled
-         })
- 
diff --git a/patches/react-native+0.77.1+001+initial.patch b/patches/react-native+0.79.0+001+initial.patch
similarity index 100%
rename from patches/react-native+0.77.1+001+initial.patch
rename to patches/react-native+0.79.0+001+initial.patch
diff --git a/patches/react-native+0.77.1+002+fixMVCPAndroid.patch b/patches/react-native+0.79.0+002+fixMVCPAndroid.patch
similarity index 100%
rename from patches/react-native+0.77.1+002+fixMVCPAndroid.patch
rename to patches/react-native+0.79.0+002+fixMVCPAndroid.patch
diff --git a/patches/react-native+0.77.1+003+disableTextInputRecycling.patch b/patches/react-native+0.79.0+003+disableTextInputRecycling.patch
similarity index 100%
rename from patches/react-native+0.77.1+003+disableTextInputRecycling.patch
rename to patches/react-native+0.79.0+003+disableTextInputRecycling.patch
diff --git a/patches/react-native+0.77.1+004+iOSFontResolution.patch b/patches/react-native+0.79.0+004+iOSFontResolution.patch
similarity index 90%
rename from patches/react-native+0.77.1+004+iOSFontResolution.patch
rename to patches/react-native+0.79.0+004+iOSFontResolution.patch
index b91f31326456..20296b89b40b 100644
--- a/patches/react-native+0.77.1+004+iOSFontResolution.patch
+++ b/patches/react-native+0.79.0+004+iOSFontResolution.patch
@@ -1,5 +1,5 @@
 diff --git a/node_modules/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm b/node_modules/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm
-index b086734..7d7f770 100644
+index 39093ef..36cb558 100644
 --- a/node_modules/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm
 +++ b/node_modules/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm
 @@ -38,9 +38,6 @@ static RCTFontProperties RCTResolveFontProperties(
@@ -12,8 +12,8 @@ index b086734..7d7f770 100644
    fontProperties.variant =
        fontProperties.variant != RCTFontVariantUndefined ? fontProperties.variant : baseFontProperties.variant;
    return fontProperties;
-@@ -157,10 +154,14 @@ static RCTFontStyle RCTGetFontStyle(UIFont *font)
-   if ([fontProperties.family isEqualToString:defaultFontProperties.family]) {
+@@ -319,10 +316,14 @@ UIFont *RCTFontWithFontProperties(RCTFontProperties fontProperties)
+   } else if ([fontProperties.family isEqualToString:defaultFontProperties.family]) {
      // Handle system font as special case. This ensures that we preserve
      // the specific metrics of the standard system font as closely as possible.
 +    fontProperties.weight = !isnan(fontProperties.weight) ? fontProperties.weight : defaultFontProperties.weight;
@@ -27,7 +27,7 @@ index b086734..7d7f770 100644
  
      if (fontNames.count == 0) {
        // Gracefully handle being given a font name rather than font family, for
-@@ -173,15 +174,18 @@ static RCTFontStyle RCTGetFontStyle(UIFont *font)
+@@ -335,15 +336,18 @@ UIFont *RCTFontWithFontProperties(RCTFontProperties fontProperties)
          // Failback to system font.
          font = [UIFont systemFontOfSize:effectiveFontSize weight:fontProperties.weight];
        }
diff --git a/patches/react-native+0.77.1+005+resetAutoresizingOnView.patch b/patches/react-native+0.79.0+005+resetAutoresizingOnView.patch
similarity index 100%
rename from patches/react-native+0.77.1+005+resetAutoresizingOnView.patch
rename to patches/react-native+0.79.0+005+resetAutoresizingOnView.patch
diff --git a/patches/react-native+0.77.1+006+disableNonTranslucentStatusBar.patch b/patches/react-native+0.79.0+006+disableNonTranslucentStatusBar.patch
similarity index 100%
rename from patches/react-native+0.77.1+006+disableNonTranslucentStatusBar.patch
rename to patches/react-native+0.79.0+006+disableNonTranslucentStatusBar.patch
diff --git a/patches/react-native+0.77.1+007+TextInput.patch b/patches/react-native+0.79.0+007+TextInput.patch
similarity index 59%
rename from patches/react-native+0.77.1+007+TextInput.patch
rename to patches/react-native+0.79.0+007+TextInput.patch
index 3ec57e4bed90..4b26e70fe4de 100644
--- a/patches/react-native+0.77.1+007+TextInput.patch
+++ b/patches/react-native+0.79.0+007+TextInput.patch
@@ -1,20 +1,21 @@
- - (void)_setShowSoftInputOnFocus:(BOOL)showSoftInputOnFocus
 diff --git a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp
-index 694b789..f1c148e 100644
+index d0b2b5b..6dea7a0 100644
 --- a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp
 +++ b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp
-@@ -183,14 +183,6 @@ void AndroidTextInputShadowNode::updateStateIfNeeded() {
- Size AndroidTextInputShadowNode::measureContent(
-     const LayoutContext& layoutContext,
+@@ -31,16 +31,6 @@ Size AndroidTextInputShadowNode::measureContent(
      const LayoutConstraints& layoutConstraints) const {
+   auto textConstraints = getTextConstraints(layoutConstraints);
+ 
 -  if (getStateData().cachedAttributedStringId != 0) {
--    return textLayoutManager_
--        ->measureCachedSpannableById(
--            getStateData().cachedAttributedStringId,
--            getConcreteProps().paragraphAttributes,
--            layoutConstraints)
--        .size;
+-    auto textSize = textLayoutManager_
+-                        ->measureCachedSpannableById(
+-                            getStateData().cachedAttributedStringId,
+-                            getConcreteProps().paragraphAttributes,
+-                            textConstraints)
+-                        .size;
+-    return layoutConstraints.clamp(textSize);
 -  }
- 
+-
    // Layout is called right after measure.
-   // Measure is marked as `const`, and `layout` is not; so State can be updated
+   // Measure is marked as `const`, and `layout` is not; so State can be
+   // updated during layout, but not during `measure`. If State is out-of-date
diff --git a/patches/react-native+0.77.1+008+iOSCoreAnimationBorderRendering.patch b/patches/react-native+0.79.0+008+iOSCoreAnimationBorderRendering.patch
similarity index 100%
rename from patches/react-native+0.77.1+008+iOSCoreAnimationBorderRendering.patch
rename to patches/react-native+0.79.0+008+iOSCoreAnimationBorderRendering.patch
diff --git a/patches/react-native+0.77.1+009+copyStateOnClone.patch b/patches/react-native+0.79.0+009+copyStateOnClone.patch
similarity index 100%
rename from patches/react-native+0.77.1+009+copyStateOnClone.patch
rename to patches/react-native+0.79.0+009+copyStateOnClone.patch
diff --git a/patches/react-native+0.77.1+010+textinput-clear-command.patch b/patches/react-native+0.79.0+010+textinput-clear-command.patch
similarity index 91%
rename from patches/react-native+0.77.1+010+textinput-clear-command.patch
rename to patches/react-native+0.79.0+010+textinput-clear-command.patch
index 0b76dabc3c1c..181eb3d09446 100644
--- a/patches/react-native+0.77.1+010+textinput-clear-command.patch
+++ b/patches/react-native+0.79.0+010+textinput-clear-command.patch
@@ -1,22 +1,22 @@
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js b/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
-index a77e5b4..6c4bbb2 100644
+index 566ac15..08419c5 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
-@@ -412,6 +412,13 @@ export type NativeProps = $ReadOnly<{|
-     $ReadOnly<{|target: Int32, text: string|}>,
+@@ -410,6 +410,13 @@ export type NativeProps = $ReadOnly<{
+     $ReadOnly<{target: Int32, text: string}>,
    >,
  
 +  /**
 +   * Invoked when the user performs the clear action.
 +   */
 +  onClear?: ?BubblingEventHandler<
-+    $ReadOnly<{|target: Int32, eventCount: Int32, text: string|}>,
++    $ReadOnly<{target: Int32, eventCount: Int32, text: string}>,
 +  >,
 +
    /**
     * Callback that is called when a key is pressed.
     * This will be called with `{ nativeEvent: { key: keyValue } }`
-@@ -655,6 +662,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
+@@ -653,6 +660,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
      },
    },
    directEventTypes: {
@@ -26,7 +26,7 @@ index a77e5b4..6c4bbb2 100644
      topScroll: {
        registrationName: 'onScroll',
      },
-@@ -693,6 +703,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
+@@ -691,6 +701,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
      textTransform: true,
      returnKeyType: true,
      keyboardType: true,
@@ -35,7 +35,7 @@ index a77e5b4..6c4bbb2 100644
      color: {process: require('../../StyleSheet/processColor').default},
      autoComplete: true,
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
-index eb314f2..53d9349 100644
+index fe5c491..c9f4eb2 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
 @@ -85,6 +85,9 @@ const RCTTextInputViewConfig = {
@@ -48,7 +48,7 @@ index eb314f2..53d9349 100644
      topChangeSync: {
        registrationName: 'onChangeSync',
      },
-@@ -155,6 +158,7 @@ const RCTTextInputViewConfig = {
+@@ -158,6 +161,7 @@ const RCTTextInputViewConfig = {
      lineBreakModeIOS: true,
      smartInsertDelete: true,
      ...ConditionallyIgnoredEventHandlers({
@@ -57,10 +57,10 @@ index eb314f2..53d9349 100644
        onSelectionChange: true,
        onContentSizeChange: true,
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-index e9b4e76..f7074aa 100644
+index 897824e..13a73e7 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
 +++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-@@ -762,6 +762,13 @@ export interface TextInputProps
+@@ -767,6 +767,13 @@ export interface TextInputProps
      | ((e: NativeSyntheticEvent<TextInputFocusEventData>) => void)
      | undefined;
  
@@ -75,10 +75,10 @@ index e9b4e76..f7074aa 100644
     * Callback that is called when the text input's text changes.
     */
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-index dcf1123..0107e78 100644
+index a2f2081..6947909 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-@@ -1447,6 +1447,11 @@ function InternalTextInput(props: Props): React.Node {
+@@ -1456,6 +1456,11 @@ function InternalTextInput(props: TextInputProps): React.Node {
      });
    };
  
@@ -87,18 +87,18 @@ index dcf1123..0107e78 100644
 +    props.onClear && props.onClear(event);
 +  };
 +
-   const _onFocus = (event: FocusEvent) => {
+   const _onFocus = (event: TextInputFocusEvent) => {
      TextInputState.focusInput(inputRef.current);
      if (props.onFocus) {
-@@ -1612,6 +1617,7 @@ function InternalTextInput(props: Props): React.Node {
-         mostRecentEventCount={mostRecentEventCount}
+@@ -1622,6 +1627,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
          nativeID={id ?? props.nativeID}
+         numberOfLines={props.rows ?? props.numberOfLines}
          onBlur={_onBlur}
 +        onClear={_onClear}
          onChange={_onChange}
          onContentSizeChange={props.onContentSizeChange}
          onFocus={_onFocus}
-@@ -1678,6 +1684,7 @@ function InternalTextInput(props: Props): React.Node {
+@@ -1688,6 +1694,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
          nativeID={id ?? props.nativeID}
          numberOfLines={props.rows ?? props.numberOfLines}
          onBlur={_onBlur}
@@ -107,10 +107,10 @@ index dcf1123..0107e78 100644
          onFocus={_onFocus}
          /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match
 diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-index 9a010a3..db7c519 100644
+index dd39699..93f8129 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-@@ -63,6 +63,7 @@ @implementation RCTBaseTextInputViewManager {
+@@ -63,6 +63,7 @@ RCT_EXPORT_VIEW_PROPERTY(passwordRules, NSString)
  
  RCT_EXPORT_VIEW_PROPERTY(onChange, RCTBubblingEventBlock)
  RCT_EXPORT_VIEW_PROPERTY(onKeyPressSync, RCTDirectEventBlock)
@@ -119,10 +119,10 @@ index 9a010a3..db7c519 100644
  RCT_EXPORT_VIEW_PROPERTY(onSelectionChange, RCTDirectEventBlock)
  RCT_EXPORT_VIEW_PROPERTY(onScroll, RCTDirectEventBlock)
 diff --git a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-index 71433c3..f8358ed 100644
+index ca50289..f587ae2 100644
 --- a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
 +++ b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-@@ -521,6 +521,19 @@ - (void)blur
+@@ -528,6 +528,19 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
    [_backedTextInputView resignFirstResponder];
  }
  
@@ -282,10 +282,10 @@ index f18e569..2733e3c 100644
    }
  
 diff --git a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
-index 1d130fe..d7dd83d 100644
+index d5a7bea..b37e00b 100644
 --- a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
 +++ b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
-@@ -136,6 +136,10 @@ void TextInputEventEmitter::onBlur(const Metrics& textInputMetrics) const {
+@@ -138,6 +138,10 @@ void TextInputEventEmitter::onBlur(const Metrics& textInputMetrics) const {
    dispatchTextInputEvent("blur", textInputMetrics);
  }
  
diff --git a/patches/react-native+0.77.1+011+Add-onPaste-to-TextInput.patch b/patches/react-native+0.79.0+011+Add-onPaste-to-TextInput.patch
similarity index 91%
rename from patches/react-native+0.77.1+011+Add-onPaste-to-TextInput.patch
rename to patches/react-native+0.79.0+011+Add-onPaste-to-TextInput.patch
index 0c95505a606f..9b77e5df484e 100644
--- a/patches/react-native+0.77.1+011+Add-onPaste-to-TextInput.patch
+++ b/patches/react-native+0.79.0+011+Add-onPaste-to-TextInput.patch
@@ -1,30 +1,30 @@
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js b/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
-index 6c4bbb2..770dfee 100644
+index 08419c5..3678f86 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js
-@@ -462,6 +462,21 @@ export type NativeProps = $ReadOnly<{|
-     |}>,
+@@ -460,6 +460,21 @@ export type NativeProps = $ReadOnly<{
+     }>,
    >,
  
 +  /**
 +   * Invoked when the user performs the paste action.
 +   */
 +  onPaste?: ?DirectEventHandler<
-+    $ReadOnly<{|
++    $ReadOnly<{
 +      target: Int32,
 +      items: $ReadOnlyArray<
-+        $ReadOnly<{|
++        $ReadOnly<{
 +          type: string,
 +          data: string,
-+        |}>,
++        }>,
 +      >,
-+    |}>,
++    }>,
 +  >,
 +
    /**
     * The string that will be rendered before text input has been entered.
     */
-@@ -668,6 +683,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
+@@ -666,6 +681,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
      topScroll: {
        registrationName: 'onScroll',
      },
@@ -34,7 +34,7 @@ index 6c4bbb2..770dfee 100644
    },
    validAttributes: {
      maxFontSizeMultiplier: true,
-@@ -722,6 +740,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
+@@ -720,6 +738,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
      secureTextEntry: true,
      textBreakStrategy: true,
      onScroll: true,
@@ -43,7 +43,7 @@ index 6c4bbb2..770dfee 100644
      disableFullscreenUI: true,
      includeFontPadding: true,
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
-index 53d9349..865ccb2 100644
+index c9f4eb2..94b7d31 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/RCTTextInputViewConfig.js
 @@ -88,6 +88,9 @@ const RCTTextInputViewConfig = {
@@ -56,7 +56,7 @@ index 53d9349..865ccb2 100644
      topChangeSync: {
        registrationName: 'onChangeSync',
      },
-@@ -163,6 +166,7 @@ const RCTTextInputViewConfig = {
+@@ -166,6 +169,7 @@ const RCTTextInputViewConfig = {
        onSelectionChange: true,
        onContentSizeChange: true,
        onScroll: true,
@@ -65,10 +65,10 @@ index 53d9349..865ccb2 100644
        onKeyPressSync: true,
      }),
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-index f7074aa..214ccc0 100644
+index 13a73e7..2112772 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
 +++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.d.ts
-@@ -510,6 +510,16 @@ export interface TextInputSubmitEditingEventData {
+@@ -515,6 +515,16 @@ export interface TextInputSubmitEditingEventData {
    text: string;
  }
  
@@ -85,7 +85,7 @@ index f7074aa..214ccc0 100644
  /**
   * @see https://reactnative.dev/docs/textinput#props
   */
-@@ -861,6 +871,13 @@ export interface TextInputProps
+@@ -866,6 +876,13 @@ export interface TextInputProps
      | ((e: NativeSyntheticEvent<TextInputKeyPressEventData>) => void)
      | undefined;
  
@@ -100,29 +100,29 @@ index f7074aa..214ccc0 100644
     * The string that will be rendered before text input has been entered
     */
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js b/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
-index b61fe39..64a5b99 100644
+index 53d6337..50f7794 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.flow.js
-@@ -93,6 +93,18 @@ export type EditingEvent = SyntheticEvent<
-   |}>,
- >;
+@@ -97,6 +97,18 @@ export type TextInputEndEditingEventData = $ReadOnly<{
+ export type TextInputEditingEvent =
+   NativeSyntheticEvent<TextInputEndEditingEventData>;
  
 +export type PasteEvent = SyntheticEvent<
-+  $ReadOnly<{|
++  $ReadOnly<{
 +    target: number,
 +    items: $ReadOnlyArray<
-+      $ReadOnly<{|
++      $ReadOnly<{
 +        type: string,
 +        data: string,
-+      |}>,
++      }>,
 +    >,
-+  |}>,
++  }>,
 +>;
 +
  type DataDetectorTypesType =
    | 'phoneNumber'
    | 'link'
-@@ -833,6 +845,11 @@ export type Props = $ReadOnly<{|
+@@ -849,6 +861,11 @@ export type TextInputProps = $ReadOnly<{
     */
    onScroll?: ?(e: ScrollEvent) => mixed,
  
@@ -135,29 +135,29 @@ index b61fe39..64a5b99 100644
     * The string that will be rendered before text input has been entered.
     */
 diff --git a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-index 0107e78..0684516 100644
+index 6947909..1fb07fb 100644
 --- a/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
 +++ b/node_modules/react-native/Libraries/Components/TextInput/TextInput.js
-@@ -134,6 +134,18 @@ export type EditingEvent = SyntheticEvent<
-   |}>,
- >;
+@@ -132,6 +132,18 @@ export type TextInputEndEditingEventData = $ReadOnly<{
+ export type TextInputEditingEvent =
+   NativeSyntheticEvent<TextInputEndEditingEventData>;
  
 +export type PasteEvent = SyntheticEvent<
-+  $ReadOnly<{|
++  $ReadOnly<{
 +    target: number,
 +    items: $ReadOnlyArray<
-+      $ReadOnly<{|
++      $ReadOnly<{
 +        type: string,
 +        data: string,
-+      |}>,
++      }>,
 +    >,
-+  |}>,
++  }>,
 +>;
 +
  type DataDetectorTypesType =
    | 'phoneNumber'
    | 'link'
-@@ -836,6 +848,11 @@ export type Props = $ReadOnly<{|
+@@ -843,6 +855,11 @@ export type TextInputProps = $ReadOnly<{
     */
    onScroll?: ?(e: ScrollEvent) => mixed,
  
@@ -170,7 +170,7 @@ index 0107e78..0684516 100644
     * The string that will be rendered before text input has been entered.
     */
 diff --git a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
-index d5e2e22..065a819 100644
+index 565b0f6..f6670fd 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm
 @@ -13,6 +13,10 @@
@@ -184,7 +184,7 @@ index d5e2e22..065a819 100644
  @implementation RCTUITextView {
    UILabel *_placeholderView;
    UITextView *_detachedTextView;
-@@ -172,7 +176,31 @@ - (void)scrollRangeToVisible:(NSRange)range
+@@ -198,7 +202,31 @@ static UIColor *defaultPlaceholderColor(void)
  - (void)paste:(id)sender
  {
    _textWasPasted = YES;
@@ -217,7 +217,7 @@ index d5e2e22..065a819 100644
  }
  
  // Turn off scroll animation to fix flaky scrolling.
-@@ -264,6 +292,10 @@ - (BOOL)canPerformAction:(SEL)action withSender:(id)sender
+@@ -290,6 +318,10 @@ static UIColor *defaultPlaceholderColor(void)
      return NO;
    }
  
@@ -265,7 +265,7 @@ diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInp
 index ac8e464..2b91802 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm
-@@ -147,6 +147,11 @@ - (void)selectedTextRangeWasSet
+@@ -147,6 +147,11 @@ static void *TextFieldSelectionObservingContext = &TextFieldSelectionObservingCo
    [self textFieldProbablyDidChangeSelection];
  }
  
@@ -277,7 +277,7 @@ index ac8e464..2b91802 100644
  #pragma mark - Generalization
  
  - (void)textFieldProbablyDidChangeSelection
-@@ -292,6 +297,11 @@ - (void)skipNextTextInputDidChangeSelectionEventWithTextRange:(UITextRange *)tex
+@@ -292,6 +297,11 @@ static void *TextFieldSelectionObservingContext = &TextFieldSelectionObservingCo
    _previousSelectedTextRange = textRange;
  }
  
@@ -302,10 +302,10 @@ index 4804624..90b7081 100644
  @property (nonatomic, assign) NSInteger mostRecentEventCount;
  @property (nonatomic, assign, readonly) NSInteger nativeEventCount;
 diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
-index 95edfd5..5111bda 100644
+index 6a2d4f8..b6e6060 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm
-@@ -574,6 +574,26 @@ - (void)textInputDidChangeSelection
+@@ -599,6 +599,26 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithFrame : (CGRect)frame)
    });
  }
  
@@ -333,10 +333,10 @@ index 95edfd5..5111bda 100644
  {
    [self enforceTextAttributesIfNeeded];
 diff --git a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-index db7c519..ec05595 100644
+index 93f8129..4b43542 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm
-@@ -67,6 +67,7 @@ @implementation RCTBaseTextInputViewManager {
+@@ -67,6 +67,7 @@ RCT_EXPORT_VIEW_PROPERTY(onClear, RCTDirectEventBlock)
  RCT_EXPORT_VIEW_PROPERTY(onChangeSync, RCTDirectEventBlock)
  RCT_EXPORT_VIEW_PROPERTY(onSelectionChange, RCTDirectEventBlock)
  RCT_EXPORT_VIEW_PROPERTY(onScroll, RCTDirectEventBlock)
@@ -345,7 +345,7 @@ index db7c519..ec05595 100644
  RCT_EXPORT_VIEW_PROPERTY(mostRecentEventCount, NSInteger)
  
 diff --git a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
-index 0318671..667e646 100644
+index d1bcd88..7e76c88 100644
 --- a/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
 +++ b/node_modules/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm
 @@ -12,6 +12,10 @@
@@ -359,7 +359,7 @@ index 0318671..667e646 100644
  @implementation RCTUITextField {
    RCTBackedTextFieldDelegateAdapter *_textInputDelegateAdapter;
    NSDictionary<NSAttributedStringKey, id> *_defaultTextAttributes;
-@@ -139,6 +143,10 @@ - (BOOL)canPerformAction:(SEL)action withSender:(id)sender
+@@ -169,6 +173,10 @@
      return NO;
    }
  
@@ -370,7 +370,7 @@ index 0318671..667e646 100644
    return [super canPerformAction:action withSender:sender];
  }
  
-@@ -222,7 +230,31 @@ - (void)scrollRangeToVisible:(NSRange)range
+@@ -252,7 +260,31 @@
  - (void)paste:(id)sender
  {
    _textWasPasted = YES;
@@ -404,10 +404,10 @@ index 0318671..667e646 100644
  
  #pragma mark - Layout
 diff --git a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-index f8358ed..91aff1a 100644
+index f587ae2..151ac38 100644
 --- a/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
 +++ b/node_modules/react-native/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm
-@@ -481,6 +481,13 @@ - (void)textInputDidChangeSelection
+@@ -488,6 +488,13 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
    }
  }
  
@@ -445,7 +445,7 @@ index 0000000..bfb5819
 +  public void onPaste(String type, String data);
 +}
 diff --git a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
-index 56a1069..272ea7d 100644
+index 42f2383..5b3ffa4 100644
 --- a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
 +++ b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
 @@ -9,6 +9,10 @@ package com.facebook.react.views.textinput;
@@ -467,7 +467,7 @@ index 56a1069..272ea7d 100644
  import android.os.Build;
  import android.os.Bundle;
  import android.text.Editable;
-@@ -122,6 +127,7 @@ public class ReactEditText extends AppCompatEditText {
+@@ -121,6 +126,7 @@ public class ReactEditText extends AppCompatEditText {
    private @Nullable SelectionWatcher mSelectionWatcher;
    private @Nullable ContentSizeWatcher mContentSizeWatcher;
    private @Nullable ScrollWatcher mScrollWatcher;
@@ -475,7 +475,7 @@ index 56a1069..272ea7d 100644
    private InternalKeyListener mKeyListener;
    private boolean mDetectScrollMovement = false;
    private boolean mOnKeyPress = false;
-@@ -165,6 +171,7 @@ public class ReactEditText extends AppCompatEditText {
+@@ -166,6 +172,7 @@ public class ReactEditText extends AppCompatEditText {
        mKeyListener = new InternalKeyListener();
      }
      mScrollWatcher = null;
@@ -483,7 +483,7 @@ index 56a1069..272ea7d 100644
      mTextAttributes = new TextAttributes();
  
      applyTextAttributes();
-@@ -332,8 +339,29 @@ public class ReactEditText extends AppCompatEditText {
+@@ -335,8 +342,29 @@ public class ReactEditText extends AppCompatEditText {
     */
    @Override
    public boolean onTextContextMenuItem(int id) {
@@ -514,7 +514,7 @@ index 56a1069..272ea7d 100644
      }
      return super.onTextContextMenuItem(id);
    }
-@@ -395,6 +423,10 @@ public class ReactEditText extends AppCompatEditText {
+@@ -417,6 +445,10 @@ public class ReactEditText extends AppCompatEditText {
      mScrollWatcher = scrollWatcher;
    }
  
@@ -650,10 +650,10 @@ index 0000000..78b14b7
 +  }
 +}
 diff --git a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
-index d7dd83d..6862b26 100644
+index b37e00b..eec0734 100644
 --- a/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
 +++ b/node_modules/react-native/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp
-@@ -178,6 +178,19 @@ void TextInputEventEmitter::onScroll(const Metrics& textInputMetrics) const {
+@@ -180,6 +180,19 @@ void TextInputEventEmitter::onScroll(const Metrics& textInputMetrics) const {
    });
  }
  
diff --git a/patches/react-native+0.77.1+012+alert-style.patch b/patches/react-native+0.79.0+012+alert-style.patch
similarity index 100%
rename from patches/react-native+0.77.1+012+alert-style.patch
rename to patches/react-native+0.79.0+012+alert-style.patch
diff --git a/patches/react-native+0.77.1+013+fixNavigationAnimations.patch b/patches/react-native+0.79.0+013+fixNavigationAnimations.patch
similarity index 100%
rename from patches/react-native+0.77.1+013+fixNavigationAnimations.patch
rename to patches/react-native+0.79.0+013+fixNavigationAnimations.patch
diff --git a/patches/react-native+0.77.1+014+fixScrollViewState.patch b/patches/react-native+0.79.0+014+fixScrollViewState.patch
similarity index 100%
rename from patches/react-native+0.77.1+014+fixScrollViewState.patch
rename to patches/react-native+0.79.0+014+fixScrollViewState.patch
diff --git a/patches/react-native+0.77.1+015+redactAppParameters.patch b/patches/react-native+0.79.0+015+redactAppParameters.patch
similarity index 100%
rename from patches/react-native+0.77.1+015+redactAppParameters.patch
rename to patches/react-native+0.79.0+015+redactAppParameters.patch
diff --git a/patches/react-native+0.77.1+016+android-keyboard-avoiding-view.patch b/patches/react-native+0.79.0+016+android-keyboard-avoiding-view.patch
similarity index 100%
rename from patches/react-native+0.77.1+016+android-keyboard-avoiding-view.patch
rename to patches/react-native+0.79.0+016+android-keyboard-avoiding-view.patch
diff --git a/patches/react-native+0.77.1+017+fix-mask-persisting-recycling.patch b/patches/react-native+0.79.0+017+fix-mask-persisting-recycling.patch
similarity index 100%
rename from patches/react-native+0.77.1+017+fix-mask-persisting-recycling.patch
rename to patches/react-native+0.79.0+017+fix-mask-persisting-recycling.patch
diff --git a/patches/react-native+0.77.1+018+fix-text-selecting-on-change.patch b/patches/react-native+0.79.0+018+fix-text-selecting-on-change.patch
similarity index 86%
rename from patches/react-native+0.77.1+018+fix-text-selecting-on-change.patch
rename to patches/react-native+0.79.0+018+fix-text-selecting-on-change.patch
index 80dafbfaed58..8fb1aa9a3019 100644
--- a/patches/react-native+0.77.1+018+fix-text-selecting-on-change.patch
+++ b/patches/react-native+0.79.0+018+fix-text-selecting-on-change.patch
@@ -1,8 +1,8 @@
 diff --git a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
-index 272ea7d..840b5f5 100644
+index 5b3ffa4..ff56df0 100644
 --- a/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
 +++ b/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java
-@@ -140,6 +140,7 @@ public class ReactEditText extends AppCompatEditText {
+@@ -139,6 +139,7 @@ public class ReactEditText extends AppCompatEditText {
    private boolean mContextMenuHidden = false;
    private boolean mDidAttachToWindow = false;
    private boolean mSelectTextOnFocus = false;
@@ -10,7 +10,7 @@ index 272ea7d..840b5f5 100644
    private @Nullable String mPlaceholder = null;
    private Overflow mOverflow = Overflow.VISIBLE;
  
-@@ -257,11 +258,11 @@ public class ReactEditText extends AppCompatEditText {
+@@ -260,11 +261,11 @@ public class ReactEditText extends AppCompatEditText {
    @Override
    protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
      onContentSizeChange();
@@ -24,10 +24,11 @@ index 272ea7d..840b5f5 100644
      }
    }
  
-@@ -390,6 +391,7 @@ public class ReactEditText extends AppCompatEditText {
+@@ -398,7 +399,7 @@ public class ReactEditText extends AppCompatEditText {
      if (getShowSoftInputOnFocus()) {
        showSoftKeyboard();
      }
+-
 +    hasSelectedTextOnFocus = true;
      return focused;
    }
diff --git a/patches/react-native+0.77.1+019+fix-scroll-view-jump.patch b/patches/react-native+0.79.0+019+fix-scroll-view-jump.patch
similarity index 100%
rename from patches/react-native+0.77.1+019+fix-scroll-view-jump.patch
rename to patches/react-native+0.79.0+019+fix-scroll-view-jump.patch
diff --git a/patches/react-native+0.77.1+020+fix-dropping-mutations-in-transactions.patch b/patches/react-native+0.79.0+020+fix-dropping-mutations-in-transactions.patch
similarity index 84%
rename from patches/react-native+0.77.1+020+fix-dropping-mutations-in-transactions.patch
rename to patches/react-native+0.79.0+020+fix-dropping-mutations-in-transactions.patch
index c1a5fed2af1f..96a7004572b2 100644
--- a/patches/react-native+0.77.1+020+fix-dropping-mutations-in-transactions.patch
+++ b/patches/react-native+0.79.0+020+fix-dropping-mutations-in-transactions.patch
@@ -1,16 +1,16 @@
 diff --git a/node_modules/react-native/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp b/node_modules/react-native/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp
-index ebe6f1d..0d9897b 100644
+index 6d781dc..21d4845 100644
 --- a/node_modules/react-native/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp
 +++ b/node_modules/react-native/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp
-@@ -543,7 +543,7 @@ void FabricUIManagerBinding::schedulerDidFinishTransaction(
-             mountingTransaction->getSurfaceId();
-       });
+@@ -511,7 +511,7 @@ void FabricUIManagerBinding::schedulerDidFinishTransaction(
+               mountingTransaction->getSurfaceId();
+         });
  
--  if (pendingTransaction != pendingTransactions_.end()) {
-+  if (pendingTransaction != pendingTransactions_.end() && pendingTransaction->canMergeWith(*mountingTransaction)) {
-     pendingTransaction->mergeWith(std::move(*mountingTransaction));
-   } else {
-     pendingTransactions_.push_back(std::move(*mountingTransaction));
+-    if (pendingTransaction != pendingTransactions_.end()) {
++    if (pendingTransaction != pendingTransactions_.end() && pendingTransaction->canMergeWith(*mountingTransaction)) {
+       pendingTransaction->mergeWith(std::move(*mountingTransaction));
+     } else {
+       pendingTransactions_.push_back(std::move(*mountingTransaction));
 diff --git a/node_modules/react-native/ReactCommon/react/renderer/mounting/MountingTransaction.cpp b/node_modules/react-native/ReactCommon/react/renderer/mounting/MountingTransaction.cpp
 index d7dd1bc..d95d779 100644
 --- a/node_modules/react-native/ReactCommon/react/renderer/mounting/MountingTransaction.cpp
diff --git a/patches/react-native+0.77.1+021+fix-crash-when-deleting-expense.patch b/patches/react-native+0.79.0+021+fix-crash-when-deleting-expense.patch
similarity index 100%
rename from patches/react-native+0.77.1+021+fix-crash-when-deleting-expense.patch
rename to patches/react-native+0.79.0+021+fix-crash-when-deleting-expense.patch
diff --git a/patches/react-native+0.77.1+024+fix-surface-stopped-before-started.patch b/patches/react-native+0.79.0+024+fix-surface-stopped-before-started.patch
similarity index 100%
rename from patches/react-native+0.77.1+024+fix-surface-stopped-before-started.patch
rename to patches/react-native+0.79.0+024+fix-surface-stopped-before-started.patch
diff --git a/patches/react-native-gesture-handler+2.22.0+001+fixTests.patch b/patches/react-native-gesture-handler+2.24.0+001+fixTests.patch
similarity index 100%
rename from patches/react-native-gesture-handler+2.22.0+001+fixTests.patch
rename to patches/react-native-gesture-handler+2.24.0+001+fixTests.patch
diff --git a/patches/react-native-pager-view+6.7.0+001+support-rn-79.patch b/patches/react-native-pager-view+6.7.0+001+support-rn-79.patch
new file mode 100644
index 000000000000..badd675fcf64
--- /dev/null
+++ b/patches/react-native-pager-view+6.7.0+001+support-rn-79.patch
@@ -0,0 +1,13 @@
+diff --git a/node_modules/react-native-pager-view/android/src/fabric/java/com/reactnativepagerview/PagerViewViewManager.kt b/node_modules/react-native-pager-view/android/src/fabric/java/com/reactnativepagerview/PagerViewViewManager.kt
+index aad38b2..ee5d22b 100644
+--- a/node_modules/react-native-pager-view/android/src/fabric/java/com/reactnativepagerview/PagerViewViewManager.kt
++++ b/node_modules/react-native-pager-view/android/src/fabric/java/com/reactnativepagerview/PagerViewViewManager.kt
+@@ -37,7 +37,7 @@ class PagerViewViewManager : ViewGroupManager<NestedScrollableHost>(), RNCViewPa
+         return PagerViewViewManagerImpl.NAME
+     }
+ 
+-    override fun receiveCommand(root: NestedScrollableHost, commandId: String?, args: ReadableArray?) {
++    override fun receiveCommand(root: NestedScrollableHost, commandId: String, args: ReadableArray?) {
+         mDelegate.receiveCommand(root, commandId, args)
+     }
+ 
diff --git a/patches/react-native-reanimated+3.17.1+001+catch-all-exceptions-on-stoi.patch b/patches/react-native-reanimated+3.17.3+001+catch-all-exceptions-on-stoi.patch
similarity index 100%
rename from patches/react-native-reanimated+3.17.1+001+catch-all-exceptions-on-stoi.patch
rename to patches/react-native-reanimated+3.17.3+001+catch-all-exceptions-on-stoi.patch
diff --git a/patches/react-native-reanimated+3.17.1+002+dontWhitelistTextProp.patch b/patches/react-native-reanimated+3.17.3+002+dontWhitelistTextProp.patch
similarity index 100%
rename from patches/react-native-reanimated+3.17.1+002+dontWhitelistTextProp.patch
rename to patches/react-native-reanimated+3.17.3+002+dontWhitelistTextProp.patch
diff --git a/patches/react-native-reanimated+3.17.1+003+hybrid-app.patch b/patches/react-native-reanimated+3.17.3+003+hybrid-app.patch
similarity index 100%
rename from patches/react-native-reanimated+3.17.1+003+hybrid-app.patch
rename to patches/react-native-reanimated+3.17.3+003+hybrid-app.patch
diff --git a/patches/react-native-reanimated+3.17.1+004+fix-transform-animation-gitter.patch b/patches/react-native-reanimated+3.17.3+004+fix-transform-animation-gitter.patch
similarity index 77%
rename from patches/react-native-reanimated+3.17.1+004+fix-transform-animation-gitter.patch
rename to patches/react-native-reanimated+3.17.3+004+fix-transform-animation-gitter.patch
index f35e6e6d8d28..87f87e777b53 100644
--- a/patches/react-native-reanimated+3.17.1+004+fix-transform-animation-gitter.patch
+++ b/patches/react-native-reanimated+3.17.3+004+fix-transform-animation-gitter.patch
@@ -1,9 +1,9 @@
 diff --git a/node_modules/react-native-reanimated/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp b/node_modules/react-native-reanimated/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp
-index 10aaa36..f494afb 100644
+index f3742ed..08be55b 100644
 --- a/node_modules/react-native-reanimated/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp
 +++ b/node_modules/react-native-reanimated/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp
-@@ -760,6 +760,15 @@ void ReanimatedModuleProxy::performOperations() {
-     jsPropsUpdater.call(rt, viewTag, nonAnimatableProps);
+@@ -763,6 +763,15 @@ void ReanimatedModuleProxy::performOperations() {
+     return;
    }
  
 +  if (propsRegistry_->shouldReanimatedSkipCommit()) {
@@ -15,6 +15,6 @@ index 10aaa36..f494afb 100644
 +    return;
 +  }
 +
-   bool hasLayoutUpdates = false;
+   react_native_assert(uiManager_ != nullptr);
+   const auto &shadowTreeRegistry = uiManager_->getShadowTreeRegistry();
  
-   for (const auto &[shadowNode, props] : copiedOperationsQueue) {
diff --git a/patches/react-native-reanimated+3.17.1+005+fix-cancelAnimation-on-web.patch b/patches/react-native-reanimated+3.17.3+005+fix-cancelAnimation-on-web.patch
similarity index 80%
rename from patches/react-native-reanimated+3.17.1+005+fix-cancelAnimation-on-web.patch
rename to patches/react-native-reanimated+3.17.3+005+fix-cancelAnimation-on-web.patch
index a8e159c289ed..a504475edf5c 100644
--- a/patches/react-native-reanimated+3.17.1+005+fix-cancelAnimation-on-web.patch
+++ b/patches/react-native-reanimated+3.17.3+005+fix-cancelAnimation-on-web.patch
@@ -1,8 +1,8 @@
 diff --git a/node_modules/react-native-reanimated/lib/module/animation/util.js b/node_modules/react-native-reanimated/lib/module/animation/util.js
-index 4572f70..ea8bea1 100644
+index 2bc36ca..4f70add 100644
 --- a/node_modules/react-native-reanimated/lib/module/animation/util.js
 +++ b/node_modules/react-native-reanimated/lib/module/animation/util.js
-@@ -350,7 +350,7 @@ export function cancelAnimation(sharedValue) {
+@@ -357,7 +357,7 @@ function cancelAnimationNative(sharedValue) {
    'worklet';
  
    // setting the current value cancels the animation if one is currently running
@@ -12,11 +12,11 @@ index 4572f70..ea8bea1 100644
    } else {
      runOnUI(() => {
 diff --git a/node_modules/react-native-reanimated/src/animation/util.ts b/node_modules/react-native-reanimated/src/animation/util.ts
-index 2c7dd01..29e1281 100644
+index e0176f3..8d44aa5 100644
 --- a/node_modules/react-native-reanimated/src/animation/util.ts
 +++ b/node_modules/react-native-reanimated/src/animation/util.ts
-@@ -551,7 +551,7 @@ export function defineAnimation<
- export function cancelAnimation<T>(sharedValue: SharedValue<T>): void {
+@@ -562,7 +562,7 @@ export function defineAnimation<
+ function cancelAnimationNative<TValue>(sharedValue: SharedValue<TValue>): void {
    'worklet';
    // setting the current value cancels the animation if one is currently running
 -  if (_WORKLET) {
diff --git a/patches/react-native-web+0.19.13+001+initial.patch b/patches/react-native-web+0.20.0+001+initial.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+001+initial.patch
rename to patches/react-native-web+0.20.0+001+initial.patch
diff --git a/patches/react-native-web+0.19.13+002+fixLastSpacer.patch b/patches/react-native-web+0.20.0+002+fixLastSpacer.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+002+fixLastSpacer.patch
rename to patches/react-native-web+0.20.0+002+fixLastSpacer.patch
diff --git a/patches/react-native-web+0.19.13+003+image-header-support.patch b/patches/react-native-web+0.20.0+003+image-header-support.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+003+image-header-support.patch
rename to patches/react-native-web+0.20.0+003+image-header-support.patch
diff --git a/patches/react-native-web+0.19.13+004+fixPointerEventDown.patch b/patches/react-native-web+0.20.0+004+fixPointerEventDown.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+004+fixPointerEventDown.patch
rename to patches/react-native-web+0.20.0+004+fixPointerEventDown.patch
diff --git a/patches/react-native-web+0.19.13+005+osr-improvement.patch b/patches/react-native-web+0.20.0+005+osr-improvement.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+005+osr-improvement.patch
rename to patches/react-native-web+0.20.0+005+osr-improvement.patch
diff --git a/patches/react-native-web+0.19.13+006+remove-focus-trap-from-modal.patch b/patches/react-native-web+0.20.0+006+remove-focus-trap-from-modal.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+006+remove-focus-trap-from-modal.patch
rename to patches/react-native-web+0.20.0+006+remove-focus-trap-from-modal.patch
diff --git a/patches/react-native-web+0.19.13+007+fix-scrollable-overflown-text.patch b/patches/react-native-web+0.20.0+007+fix-scrollable-overflown-text.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+007+fix-scrollable-overflown-text.patch
rename to patches/react-native-web+0.20.0+007+fix-scrollable-overflown-text.patch
diff --git a/patches/react-native-web+0.19.13+008+fix-nested-flatlist-scroll-on-web.patch b/patches/react-native-web+0.20.0+008+fix-nested-flatlist-scroll-on-web.patch
similarity index 100%
rename from patches/react-native-web+0.19.13+008+fix-nested-flatlist-scroll-on-web.patch
rename to patches/react-native-web+0.20.0+008+fix-nested-flatlist-scroll-on-web.patch
diff --git a/patches/react-native-web+0.20.0+009+dont-throw-in-findNodeHandle.patch b/patches/react-native-web+0.20.0+009+dont-throw-in-findNodeHandle.patch
new file mode 100644
index 000000000000..da421926bda1
--- /dev/null
+++ b/patches/react-native-web+0.20.0+009+dont-throw-in-findNodeHandle.patch
@@ -0,0 +1,27 @@
+diff --git a/node_modules/react-native-web/dist/exports/findNodeHandle/index.js b/node_modules/react-native-web/dist/exports/findNodeHandle/index.js
+index c2aa986..8c1e8b6 100644
+--- a/node_modules/react-native-web/dist/exports/findNodeHandle/index.js
++++ b/node_modules/react-native-web/dist/exports/findNodeHandle/index.js
+@@ -9,6 +9,6 @@
+  */
+ 
+ var findNodeHandle = component => {
+-  throw new Error('findNodeHandle is not supported on web. ' + 'Use the ref property on the component instead.');
++
+ };
+ export default findNodeHandle;
+diff --git a/node_modules/react-native-web/src/exports/findNodeHandle/index.js b/node_modules/react-native-web/src/exports/findNodeHandle/index.js
+index df43377..ade661e 100644
+--- a/node_modules/react-native-web/src/exports/findNodeHandle/index.js
++++ b/node_modules/react-native-web/src/exports/findNodeHandle/index.js
+@@ -9,10 +9,6 @@
+  */
+ 
+ const findNodeHandle = (component) => {
+-  throw new Error(
+-    'findNodeHandle is not supported on web. ' +
+-      'Use the ref property on the component instead.'
+-  );
+ };
+ 
+ export default findNodeHandle;
diff --git a/patches/react-native-webview+13.13.1.patch b/patches/react-native-webview+13.13.5.patch
similarity index 100%
rename from patches/react-native-webview+13.13.1.patch
rename to patches/react-native-webview+13.13.5.patch
diff --git a/patches/recyclerlistview+4.2.1.patch b/patches/recyclerlistview+4.2.3.patch
similarity index 100%
rename from patches/recyclerlistview+4.2.1.patch
rename to patches/recyclerlistview+4.2.3.patch
diff --git a/src/components/AttachmentPicker/index.native.tsx b/src/components/AttachmentPicker/index.native.tsx
index 995442ea9cf2..66e02f41d8be 100644
--- a/src/components/AttachmentPicker/index.native.tsx
+++ b/src/components/AttachmentPicker/index.native.tsx
@@ -1,10 +1,10 @@
+import type {FileToCopy} from '@react-native-documents/picker';
+import {keepLocalCopy, pick, types} from '@react-native-documents/picker';
 import {Str} from 'expensify-common';
 import {manipulateAsync, SaveFormat} from 'expo-image-manipulator';
 import React, {useCallback, useMemo, useRef, useState} from 'react';
 import {Alert, View} from 'react-native';
 import RNFetchBlob from 'react-native-blob-util';
-import RNDocumentPicker from 'react-native-document-picker';
-import type {DocumentPickerOptions, DocumentPickerResponse} from 'react-native-document-picker';
 import {launchImageLibrary} from 'react-native-image-picker';
 import type {Asset, Callback, CameraOptions, ImageLibraryOptions, ImagePickerResponse} from 'react-native-image-picker';
 import ImageSize from 'react-native-image-size';
@@ -26,13 +26,20 @@ import type IconAsset from '@src/types/utils/IconAsset';
 import launchCamera from './launchCamera/launchCamera';
 import type AttachmentPickerProps from './types';
 
+type LocalCopy = {
+    name: string | null;
+    uri: string;
+    size: number | null;
+    type: string | null;
+};
+
 type Item = {
     /** The icon associated with the item. */
     icon: IconAsset;
     /** The key in the translations file to use for the title */
     textTranslationKey: TranslationPaths;
     /** Function to call when the user clicks the item */
-    pickAttachment: () => Promise<Asset[] | void | DocumentPickerResponse[]>;
+    pickAttachment: () => Promise<Asset[] | void | LocalCopy[]>;
 };
 
 /**
@@ -56,28 +63,6 @@ const getImagePickerOptions = (type: string, fileLimit: number): CameraOptions |
     };
 };
 
-/**
- * Return documentPickerOptions based on the type
- * @param {String} type
- * @param {Number} fileLimit
- * @returns {Object}
- */
-
-const getDocumentPickerOptions = (type: string, fileLimit: number): DocumentPickerOptions => {
-    if (type === CONST.ATTACHMENT_PICKER_TYPE.IMAGE) {
-        return {
-            type: [RNDocumentPicker.types.images],
-            copyTo: 'cachesDirectory',
-            allowMultiSelection: fileLimit !== 1,
-        };
-    }
-    return {
-        type: [RNDocumentPicker.types.allFiles],
-        copyTo: 'cachesDirectory',
-        allowMultiSelection: fileLimit !== 1,
-    };
-};
-
 /**
  * The data returned from `show` is different on web and mobile, so use this function to ensure the data we
  * send to the xhr will be handled properly.
@@ -211,21 +196,33 @@ function AttachmentPicker({
     );
     /**
      * Launch the DocumentPicker. Results are in the same format as ImagePicker
-     *
-     * @returns {Promise<DocumentPickerResponse[] | void>}
      */
-    const showDocumentPicker = useCallback(
-        (): Promise<DocumentPickerResponse[] | void> =>
-            RNDocumentPicker.pick(getDocumentPickerOptions(type, fileLimit)).catch((error: Error) => {
-                if (RNDocumentPicker.isCancel(error)) {
-                    return;
-                }
+    // eslint-disable-next-line @lwc/lwc/no-async-await
+    const showDocumentPicker = useCallback(async (): Promise<LocalCopy[] | void> => {
+        const pickedFiles = await pick({
+            type: [type === CONST.ATTACHMENT_PICKER_TYPE.IMAGE ? types.images : types.allFiles],
+            allowMultiSelection: fileLimit !== 1,
+        });
 
-                showGeneralAlert(error.message);
-                throw error;
-            }),
-        [fileLimit, showGeneralAlert, type],
-    );
+        const localCopies = await keepLocalCopy({
+            files: pickedFiles.map((file) => {
+                return {
+                    uri: file.uri,
+                    fileName: file.name ?? '',
+                };
+            }) as [FileToCopy, ...FileToCopy[]],
+            destination: 'cachesDirectory',
+        });
+
+        return pickedFiles.map((file, index) => {
+            return {
+                name: file.name,
+                uri: localCopies.at(index)?.sourceUri ?? file.uri,
+                size: file.size,
+                type: file.type,
+            };
+        });
+    }, [fileLimit, type]);
 
     const menuItemData: Item[] = useMemo(() => {
         const data: Item[] = [
@@ -309,7 +306,7 @@ function AttachmentPicker({
      * sends the selected attachment to the caller (parent component)
      */
     const pickAttachment = useCallback(
-        (attachments: Asset[] | DocumentPickerResponse[] | void = []): Promise<void[]> | undefined => {
+        (attachments: Asset[] | LocalCopy[] | void = []): Promise<void[]> | undefined => {
             if (!attachments || attachments.length === 0) {
                 onCanceled.current();
                 return Promise.resolve([]);
@@ -322,8 +319,8 @@ function AttachmentPicker({
                 }
 
                 /* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
-                const fileDataName = ('fileName' in fileData && fileData.fileName) || ('name' in fileData && fileData.name) || '';
-                const fileDataUri = ('fileCopyUri' in fileData && fileData.fileCopyUri) || ('uri' in fileData && fileData.uri) || '';
+                const fileDataName = ('name' in fileData && fileData.name) || '';
+                const fileDataUri = ('uri' in fileData && fileData.uri) || '';
 
                 const fileDataObject: FileResponse = {
                     name: fileDataName ?? '',
@@ -397,6 +394,14 @@ function AttachmentPicker({
             onModalHide.current = () => {
                 setTimeout(() => {
                     item.pickAttachment()
+                        .catch((error: Error) => {
+                            if (JSON.stringify(error).includes('OPERATION_CANCELED')) {
+                                return;
+                            }
+
+                            showGeneralAlert(error.message);
+                            throw error;
+                        })
                         .then((result) => pickAttachment(result))
                         .catch(console.error)
                         .finally(() => {
@@ -407,7 +412,7 @@ function AttachmentPicker({
             };
             close();
         },
-        [pickAttachment, onOpenPicker],
+        [pickAttachment, onOpenPicker, showGeneralAlert],
     );
 
     useKeyboardShortcut(
diff --git a/src/components/FilePicker/index.native.tsx b/src/components/FilePicker/index.native.tsx
index 4b381713e44b..9e7b27e10e2d 100644
--- a/src/components/FilePicker/index.native.tsx
+++ b/src/components/FilePicker/index.native.tsx
@@ -1,34 +1,27 @@
+import {keepLocalCopy, pick, types} from '@react-native-documents/picker';
 import React, {useCallback, useRef} from 'react';
 import {Alert} from 'react-native';
 import RNFetchBlob from 'react-native-blob-util';
-import RNDocumentPicker from 'react-native-document-picker';
-import type {DocumentPickerResponse} from 'react-native-document-picker';
 import type {FileObject} from '@components/AttachmentModal';
 import useLocalize from '@hooks/useLocalize';
-import * as FileUtils from '@libs/fileDownload/FileUtils';
+import {cleanFileName} from '@libs/fileDownload/FileUtils';
 import type FilePickerProps from './types';
 
-/**
- * Utility function to get the file name from DocumentPickerResponse
- */
-const getFileDataName = (fileData: DocumentPickerResponse): string => {
-    if ('fileName' in fileData) {
-        return fileData.fileName as string;
-    }
-    if ('name' in fileData && fileData.name) {
-        return fileData.name;
-    }
-    return '';
+type LocalCopy = {
+    name: string | null;
+    uri: string;
+    size: number | null;
+    type: string | null;
 };
 
 /**
  * The data returned from `show` is different on web and mobile,
  * use this function to ensure the data will be handled properly.
  */
-const getDataForUpload = (fileData: DocumentPickerResponse): Promise<FileObject> => {
+const getDataForUpload = (fileData: LocalCopy): Promise<FileObject> => {
     const fileName = fileData.name ?? 'spreadsheet';
     const fileResult: FileObject = {
-        name: FileUtils.cleanFileName(fileName),
+        name: cleanFileName(fileName),
         type: fileData.type ?? undefined,
         uri: fileData.uri,
         size: fileData.size,
@@ -60,35 +53,17 @@ function FilePicker({children}: FilePickerProps) {
         [translate],
     );
 
-    /**
-     * Launches the DocumentPicker
-     *
-     * @returns {Promise<DocumentPickerResponse[] | void>}
-     */
-    const showFilePicker = useCallback(
-        (): Promise<DocumentPickerResponse[] | void> =>
-            RNDocumentPicker.pick({
-                type: [RNDocumentPicker.types.allFiles],
-                copyTo: 'cachesDirectory',
-            }).catch((error: Error) => {
-                if (RNDocumentPicker.isCancel(error)) {
-                    onCanceled.current();
-                    return;
-                }
-
-                showGeneralAlert(error.message);
-                throw error;
-            }),
-        [showGeneralAlert],
-    );
-
     /**
      * Validates and completes file selection
      *
      * @param fileData The file data received from the picker
      */
     const validateAndCompleteFileSelection = useCallback(
-        (fileData: DocumentPickerResponse) => {
+        (fileData: LocalCopy | void) => {
+            if (!fileData) {
+                onCanceled.current();
+                return;
+            }
             return getDataForUpload(fileData)
                 .then((result) => {
                     completeFileSelection.current(result);
@@ -106,34 +81,29 @@ function FilePicker({children}: FilePickerProps) {
      *
      * @param files The array of DocumentPickerResponse
      */
-    const pickFile = useCallback(
-        (files: DocumentPickerResponse[] | void = []): Promise<void> | undefined => {
-            if (!files || files.length === 0) {
-                onCanceled.current();
-                return Promise.resolve();
-            }
-            const fileData = files.at(0);
+    // eslint-disable-next-line @lwc/lwc/no-async-await
+    const pickFile = async (): Promise<LocalCopy> => {
+        const [file] = await pick({
+            type: [types.allFiles],
+        });
 
-            if (!fileData) {
-                onCanceled.current();
-                return Promise.resolve();
-            }
+        const [localCopy] = await keepLocalCopy({
+            files: [
+                {
+                    uri: file.uri,
+                    fileName: file.name ?? 'spreadsheet',
+                },
+            ],
+            destination: 'cachesDirectory',
+        });
 
-            // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
-            const fileDataUri = fileData.fileCopyUri ?? '';
-            const fileDataName = getFileDataName(fileData);
-            const fileDataObject: DocumentPickerResponse = {
-                name: fileDataName,
-                uri: fileDataUri,
-                type: fileData.type ?? '',
-                fileCopyUri: fileDataUri,
-                size: fileData.size ?? 0,
-            };
-            /* eslint-enable @typescript-eslint/prefer-nullish-coalescing */
-            validateAndCompleteFileSelection(fileDataObject);
-        },
-        [validateAndCompleteFileSelection],
-    );
+        return {
+            name: cleanFileName(file.name ?? 'spreadsheet'),
+            type: file.type,
+            uri: localCopy.sourceUri,
+            size: file.size,
+        };
+    };
 
     /**
      * Opens the file picker
@@ -141,10 +111,22 @@ function FilePicker({children}: FilePickerProps) {
      * @param onPickedHandler A callback that will be called with the selected file
      * @param onCanceledHandler A callback that will be called if the file is canceled
      */
+    // eslint-disable-next-line @lwc/lwc/no-async-await
     const open = (onPickedHandler: (file: FileObject) => void, onCanceledHandler: () => void = () => {}) => {
         completeFileSelection.current = onPickedHandler;
         onCanceled.current = onCanceledHandler;
-        showFilePicker().then(pickFile).catch(console.error);
+        pickFile()
+            .catch((error: Error) => {
+                if (JSON.stringify(error).includes('OPERATION_CANCELED')) {
+                    onCanceled.current();
+                    return Promise.resolve();
+                }
+
+                showGeneralAlert(error.message);
+                throw error;
+            })
+            .then(validateAndCompleteFileSelection)
+            .catch(console.error);
     };
 
     /**
diff --git a/src/libs/Notification/PushNotification/ForegroundNotifications/index.android.ts b/src/libs/Notification/PushNotification/ForegroundNotifications/index.android.ts
index d7099c4c3d6b..a5362659292b 100644
--- a/src/libs/Notification/PushNotification/ForegroundNotifications/index.android.ts
+++ b/src/libs/Notification/PushNotification/ForegroundNotifications/index.android.ts
@@ -1,13 +1,13 @@
-import Airship from '@ua/react-native-airship';
+// import Airship from '@ua/react-native-airship';
 import shouldShowPushNotification from '@libs/Notification/PushNotification/shouldShowPushNotification';
 import type ForegroundNotificationsModule from './types';
 
 function configureForegroundNotifications() {
-    Airship.push.android.setForegroundDisplayPredicate((pushPayload) => Promise.resolve(shouldShowPushNotification(pushPayload)));
+    // Airship.push.android.setForegroundDisplayPredicate((pushPayload) => Promise.resolve(shouldShowPushNotification(pushPayload)));
 }
 
 function disableForegroundNotifications() {
-    Airship.push.android.setForegroundDisplayPredicate(() => Promise.resolve(false));
+    // Airship.push.android.setForegroundDisplayPredicate(() => Promise.resolve(false));
 }
 
 const ForegroundNotifications: ForegroundNotificationsModule = {
diff --git a/src/libs/Notification/PushNotification/index.native.ts b/src/libs/Notification/PushNotification/index.native.ts
index a38e9d98a8e4..ba18b1c2b214 100644
--- a/src/libs/Notification/PushNotification/index.native.ts
+++ b/src/libs/Notification/PushNotification/index.native.ts
@@ -1,5 +1,5 @@
-import type {PushPayload} from '@ua/react-native-airship';
-import Airship, {EventType} from '@ua/react-native-airship';
+// import type {PushPayload} from '@ua/react-native-airship';
+// import Airship, {EventType} from '@ua/react-native-airship';
 import Log from '@libs/Log';
 import ShortcutManager from '@libs/ShortcutManager';
 import ForegroundNotifications from './ForegroundNotifications';
@@ -13,14 +13,14 @@ type NotificationEventHandler<T extends NotificationTypes> = (data: Notification
 
 type NotificationEventHandlerMap<T extends NotificationTypes> = Partial<Record<T, NotificationEventHandler<T>>>;
 
-type NotificationEventActionMap = Partial<Record<EventType, NotificationEventHandlerMap<NotificationTypes>>>;
+type NotificationEventActionMap = Partial<Record<Any, NotificationEventHandlerMap<NotificationTypes>>>;
 
 const notificationEventActionMap: NotificationEventActionMap = {};
 
 /**
  * Handle a push notification event, and trigger and bound actions.
  */
-function pushNotificationEventCallback(eventType: EventType, notification: PushPayload) {
+function pushNotificationEventCallback(eventType: Any, notification: PushPayload) {
     const actionMap = notificationEventActionMap[eventType] ?? {};
 
     const data = parsePushNotificationPayload(notification.extras.payload);
@@ -63,11 +63,11 @@ function pushNotificationEventCallback(eventType: EventType, notification: PushP
  */
 const init: Init = () => {
     // Setup event listeners
-    Airship.addListener(EventType.PushReceived, (notification) => pushNotificationEventCallback(EventType.PushReceived, notification.pushPayload));
+    // Airship.addListener(EventType.PushReceived, (notification) => pushNotificationEventCallback(EventType.PushReceived, notification.pushPayload));
 
     // Note: the NotificationResponse event has a nested PushReceived event,
     // so event.notification refers to the same thing as notification above ^
-    Airship.addListener(EventType.NotificationResponse, (event) => pushNotificationEventCallback(EventType.NotificationResponse, event.pushPayload));
+    // Airship.addListener(EventType.NotificationResponse, (event) => pushNotificationEventCallback(EventType.NotificationResponse, event.pushPayload));
 
     ForegroundNotifications.configureForegroundNotifications();
 };
@@ -76,31 +76,31 @@ const init: Init = () => {
  * Register this device for push notifications for the given notificationID.
  */
 const register: Register = (notificationID) => {
-    Airship.contact
-        .getNamedUserId()
-        .then((userID) => {
-            if (userID === notificationID.toString()) {
-                // No need to register again for this notificationID.
-                return;
-            }
-
-            // Get permissions to display push notifications (prompts user on iOS, but not Android)
-            Airship.push.enableUserNotifications().then((isEnabled) => {
-                if (isEnabled) {
-                    return;
-                }
-
-                Log.info('[PushNotification] User has disabled visible push notifications for this app.');
-            });
-
-            // Register this device as a named user in AirshipAPI.
-            // Regardless of the user's opt-in status, we still want to receive silent push notifications.
-            Log.info(`[PushNotification] Subscribing to notifications`);
-            Airship.contact.identify(notificationID.toString());
-        })
-        .catch((error: Record<string, unknown>) => {
-            Log.warn('[PushNotification] Failed to register for push notifications! Reason: ', error);
-        });
+    // Airship.contact
+    //     .getNamedUserId()
+    //     .then((userID) => {
+    //         if (userID === notificationID.toString()) {
+    //             // No need to register again for this notificationID.
+    //             return;
+    //         }
+    //
+    //         // Get permissions to display push notifications (prompts user on iOS, but not Android)
+    //         Airship.push.enableUserNotifications().then((isEnabled) => {
+    //             if (isEnabled) {
+    //                 return;
+    //             }
+    //
+    //             Log.info('[PushNotification] User has disabled visible push notifications for this app.');
+    //         });
+    //
+    //         // Register this device as a named user in AirshipAPI.
+    //         // Regardless of the user's opt-in status, we still want to receive silent push notifications.
+    //         Log.info(`[PushNotification] Subscribing to notifications`);
+    //         Airship.contact.identify(notificationID.toString());
+    //     })
+    //     .catch((error: Record<string, unknown>) => {
+    //         Log.warn('[PushNotification] Failed to register for push notifications! Reason: ', error);
+    //     });
 };
 
 /**
@@ -108,9 +108,9 @@ const register: Register = (notificationID) => {
  */
 const deregister: Deregister = () => {
     Log.info('[PushNotification] Unsubscribing from push notifications.');
-    Airship.contact.reset();
-    Airship.removeAllListeners(EventType.PushReceived);
-    Airship.removeAllListeners(EventType.NotificationResponse);
+    // Airship.contact.reset();
+    // Airship.removeAllListeners(EventType.PushReceived);
+    // Airship.removeAllListeners(EventType.NotificationResponse);
     ForegroundNotifications.disableForegroundNotifications();
     ShortcutManager.removeAllDynamicShortcuts();
 };
@@ -126,7 +126,7 @@ const deregister: Deregister = () => {
  *
  * @param triggerEvent - The event that should trigger this callback. Should be one of UrbanAirship.EventType
  */
-function bind<T extends NotificationTypes>(triggerEvent: EventType, notificationType: T, callback: NotificationEventHandler<T>) {
+function bind<T extends NotificationTypes>(triggerEvent: Any, notificationType: T, callback: NotificationEventHandler<T>) {
     let actionMap = notificationEventActionMap[triggerEvent] as NotificationEventHandlerMap<T> | undefined;
 
     if (!actionMap) {
@@ -141,21 +141,21 @@ function bind<T extends NotificationTypes>(triggerEvent: EventType, notification
  * Bind a callback to be executed when a push notification of a given type is received.
  */
 const onReceived: OnReceived = (notificationType, callback) => {
-    bind(EventType.PushReceived, notificationType, callback);
+    // bind(EventType.PushReceived, notificationType, callback);
 };
 
 /**
  * Bind a callback to be executed when a push notification of a given type is tapped by the user.
  */
 const onSelected: OnSelected = (notificationType, callback) => {
-    bind(EventType.NotificationResponse, notificationType, callback);
+    // bind(EventType.NotificationResponse, notificationType, callback);
 };
 
 /**
  * Clear all push notifications
  */
 const clearNotifications: ClearNotifications = () => {
-    Airship.push.clearNotifications();
+    // Airship.push.clearNotifications();
 };
 
 const PushNotification: PushNotificationType = {
diff --git a/src/libs/Notification/clearReportNotifications/index.native.ts b/src/libs/Notification/clearReportNotifications/index.native.ts
index e33f3e9bf335..62d879422333 100644
--- a/src/libs/Notification/clearReportNotifications/index.native.ts
+++ b/src/libs/Notification/clearReportNotifications/index.native.ts
@@ -1,11 +1,11 @@
-import type {PushPayload} from '@ua/react-native-airship';
-import Airship from '@ua/react-native-airship';
+// import type {PushPayload} from '@ua/react-native-airship';
+// import Airship from '@ua/react-native-airship';
 import Log from '@libs/Log';
 import parsePushNotificationPayload from '@libs/Notification/PushNotification/parsePushNotificationPayload';
 import CONST from '@src/CONST';
 import type ClearReportNotifications from './types';
 
-const parseNotificationAndReportIDs = (pushPayload: PushPayload) => {
+const parseNotificationAndReportIDs = (pushPayload: Any) => {
     const data = parsePushNotificationPayload(pushPayload.extras.payload);
     return {
         notificationID: pushPayload.notificationId,
@@ -20,23 +20,23 @@ const clearReportNotifications: ClearReportNotifications = (reportID: string | u
         return;
     }
 
-    Airship.push
-        .getActiveNotifications()
-        .then((pushPayloads) => {
-            const reportNotificationIDs = pushPayloads.reduce<string[]>((notificationIDs, pushPayload) => {
-                const notification = parseNotificationAndReportIDs(pushPayload);
-                if (notification.notificationID && notification.reportID === reportID) {
-                    notificationIDs.push(notification.notificationID);
-                }
-                return notificationIDs;
-            }, []);
-
-            Log.info(`[PushNotification] found ${reportNotificationIDs.length} notifications to clear`, false, {reportID});
-            reportNotificationIDs.forEach((notificationID) => Airship.push.clearNotification(notificationID));
-        })
-        .catch((error: unknown) => {
-            Log.alert(`${CONST.ERROR.ENSURE_BUGBOT} [PushNotification] BrowserNotifications.clearReportNotifications threw an error. This should never happen.`, {reportID, error});
-        });
+    // Airship.push
+    //     .getActiveNotifications()
+    //     .then((pushPayloads) => {
+    //         const reportNotificationIDs = pushPayloads.reduce<string[]>((notificationIDs, pushPayload) => {
+    //             const notification = parseNotificationAndReportIDs(pushPayload);
+    //             if (notification.notificationID && notification.reportID === reportID) {
+    //                 notificationIDs.push(notification.notificationID);
+    //             }
+    //             return notificationIDs;
+    //         }, []);
+    //
+    //         Log.info(`[PushNotification] found ${reportNotificationIDs.length} notifications to clear`, false, {reportID});
+    //         reportNotificationIDs.forEach((notificationID) => Airship.push.clearNotification(notificationID));
+    //     })
+    //     .catch((error: unknown) => {
+    //         Log.alert(`${CONST.ERROR.ENSURE_BUGBOT} [PushNotification] BrowserNotifications.clearReportNotifications threw an error. This should never happen.`, {reportID, error});
+    //     });
 };
 
 export default clearReportNotifications;
