diff --git a/.gitignore b/.gitignore index 408e3b113d..68cb944c20 100644 --- a/.gitignore +++ b/.gitignore @@ -30,10 +30,10 @@ build/ local.properties *.iml *.hprof -android/app/src/main/res/raw/* .cxx/ *.keystore !debug.keystore +android/app/src/main/res/raw/* # Emacs .log/ @@ -67,6 +67,9 @@ yarn-error.log # Temporary files created by Metro to check the health of the file watcher .metro-health-check* +# testing +/coverage + .env .env.development .env.production diff --git a/.prettierrc.js b/.prettierrc.js index e140b7ca07..2b540746a7 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,7 +1,7 @@ module.exports = { - bracketSpacing: false, + arrowParens: 'avoid', bracketSameLine: true, + bracketSpacing: false, singleQuote: true, trailingComma: 'all', - arrowParens: 'avoid', }; diff --git a/.ruby-version b/.ruby-version index 49cdd668e1..5b013b97d6 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.7.6 +2.7.6 \ No newline at end of file diff --git a/Gemfile b/Gemfile index 7c5d99b870..38da7283c0 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source 'https://rubygems.org' # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version -ruby File.read(File.join(__dir__, '.ruby-version')).strip -gem 'cocoapods', '~> 1.11', '>= 1.11.3' +ruby ">= 2.6.10" +gem 'cocoapods', '>= 1.11.3' diff --git a/Gemfile.lock b/Gemfile.lock index d145610653..5512d5af35 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,30 +1,29 @@ GEM remote: https://rubygems.org/ specs: - CFPropertyList (3.0.5) + CFPropertyList (3.0.6) rexml - activesupport (6.1.5) + activesupport (7.0.4.3) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) - zeitwerk (~> 2.3) - addressable (2.8.0) - public_suffix (>= 2.0.2, < 5.0) + addressable (2.8.4) + public_suffix (>= 2.0.2, < 6.0) algoliasearch (1.27.5) httpclient (~> 2.8, >= 2.8.3) json (>= 1.5.1) atomos (0.1.3) claide (1.1.0) - cocoapods (1.11.3) + cocoapods (1.12.1) addressable (~> 2.8) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.11.3) + cocoapods-core (= 1.12.1) cocoapods-deintegrate (>= 1.0.3, < 2.0) - cocoapods-downloader (>= 1.4.0, < 2.0) + cocoapods-downloader (>= 1.6.0, < 2.0) cocoapods-plugins (>= 1.0.0, < 2.0) cocoapods-search (>= 1.0.0, < 2.0) - cocoapods-trunk (>= 1.4.0, < 2.0) + cocoapods-trunk (>= 1.6.0, < 2.0) cocoapods-try (>= 1.1.0, < 2.0) colored2 (~> 3.1) escape (~> 0.0.4) @@ -32,10 +31,10 @@ GEM gh_inspector (~> 1.0) molinillo (~> 0.8.0) nap (~> 1.0) - ruby-macho (>= 1.0, < 3.0) + ruby-macho (>= 2.3.0, < 3.0) xcodeproj (>= 1.21.0, < 2.0) - cocoapods-core (1.11.3) - activesupport (>= 5.0, < 7) + cocoapods-core (1.12.1) + activesupport (>= 5.0, < 8) addressable (~> 2.8) algoliasearch (~> 1.0) concurrent-ruby (~> 1.1) @@ -45,7 +44,7 @@ GEM public_suffix (~> 4.0) typhoeus (~> 1.0) cocoapods-deintegrate (1.0.5) - cocoapods-downloader (1.5.1) + cocoapods-downloader (1.6.3) cocoapods-plugins (1.0.0) nap cocoapods-search (1.0.1) @@ -54,44 +53,43 @@ GEM netrc (~> 0.11) cocoapods-try (1.2.0) colored2 (3.1.2) - concurrent-ruby (1.1.9) + concurrent-ruby (1.2.2) escape (0.0.4) - ethon (0.15.0) + ethon (0.16.0) ffi (>= 1.15.0) ffi (1.15.5) fourflusher (2.3.1) fuzzy_match (2.0.4) gh_inspector (1.1.3) httpclient (2.8.3) - i18n (1.10.0) + i18n (1.12.0) concurrent-ruby (~> 1.0) - json (2.6.1) - minitest (5.15.0) + json (2.6.3) + minitest (5.18.0) molinillo (0.8.0) nanaimo (0.3.0) nap (1.1.0) netrc (0.11.0) - public_suffix (4.0.6) + public_suffix (4.0.7) rexml (3.2.5) ruby-macho (2.5.1) typhoeus (1.4.0) ethon (>= 0.9.0) - tzinfo (2.0.4) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) - xcodeproj (1.21.0) + xcodeproj (1.22.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) colored2 (~> 3.1) nanaimo (~> 0.3.0) rexml (~> 3.2.4) - zeitwerk (2.5.4) PLATFORMS ruby DEPENDENCIES - cocoapods (~> 1.11, >= 1.11.3) + cocoapods (>= 1.11.3) RUBY VERSION ruby 2.7.6p219 diff --git a/android/app/build.gradle b/android/app/build.gradle index a68dab23f4..d06dca847a 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -183,4 +183,4 @@ dependencies { } apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) -apply plugin: 'com.google.android.gms.strict-version-matcher-plugin' +apply plugin: 'com.google.android.gms.strict-version-matcher-plugin' \ No newline at end of file diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 46d1d3c44a..fe6a7d334e 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -65,9 +65,9 @@ android:name=".MainActivity" android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode" - android:exported="true" android:launchMode="singleTask" - android:windowSoftInputMode="stateAlwaysHidden|adjustPan"> + android:windowSoftInputMode="stateAlwaysHidden|adjustPan" + android:exported="true"> diff --git a/android/app/src/main/java/com/bitpay/wallet/GooglePushProvisioningModule.java b/android/app/src/main/java/com/bitpay/wallet/GooglePushProvisioningModule.java index deb3ea2e27..8387b3a887 100644 --- a/android/app/src/main/java/com/bitpay/wallet/GooglePushProvisioningModule.java +++ b/android/app/src/main/java/com/bitpay/wallet/GooglePushProvisioningModule.java @@ -70,4 +70,4 @@ public GooglePushProvisioningModule(ReactApplicationContext reactContext) { reactContext.addActivityEventListener(activityEventListener); } -} +} \ No newline at end of file diff --git a/android/app/src/main/java/com/bitpay/wallet/MainActivity.java b/android/app/src/main/java/com/bitpay/wallet/MainActivity.java index 994c8a8f23..088af2e31c 100644 --- a/android/app/src/main/java/com/bitpay/wallet/MainActivity.java +++ b/android/app/src/main/java/com/bitpay/wallet/MainActivity.java @@ -1,19 +1,22 @@ package com.bitpay.wallet; -import com.braze.ui.inappmessage.BrazeInAppMessageManager; import com.facebook.react.ReactActivity; -import android.content.Intent; -import android.os.Bundle; -import android.os.Build; -import android.app.Activity; -import android.view.View; import com.facebook.react.ReactActivityDelegate; import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; import com.facebook.react.defaults.DefaultReactActivityDelegate; + +import android.app.Activity; +import android.content.Intent; import android.graphics.Color; +import android.os.Build; +import android.os.Bundle; +import android.view.View; import android.view.Window; import android.view.WindowManager; +import com.braze.ui.inappmessage.BrazeInAppMessageManager; import com.zoontek.rnbootsplash.RNBootSplash; + + public class MainActivity extends ReactActivity { /** diff --git a/android/app/src/main/java/com/bitpay/wallet/MainApplication.java b/android/app/src/main/java/com/bitpay/wallet/MainApplication.java index 1b0f2c2a48..3eee5ca642 100644 --- a/android/app/src/main/java/com/bitpay/wallet/MainApplication.java +++ b/android/app/src/main/java/com/bitpay/wallet/MainApplication.java @@ -1,19 +1,22 @@ package com.bitpay.wallet; import android.app.Application; -import android.content.Context; + import com.facebook.react.PackageList; import com.facebook.react.ReactApplication; -import com.mkuczera.RNReactNativeHapticFeedbackPackage; + import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; import com.facebook.react.defaults.DefaultReactNativeHost; import com.facebook.soloader.SoLoader; -import java.util.ArrayList; -import java.util.List; + +import android.content.Context; import com.facebook.react.bridge.JSIModulePackage; import com.facebook.react.modules.network.NetworkingModule; +import com.mkuczera.RNReactNativeHapticFeedbackPackage; +import java.util.ArrayList; +import java.util.List; import okhttp3.OkHttpClient; // Register custom font @@ -71,7 +74,6 @@ public ReactNativeHost getReactNativeHost() { @Override public void onCreate() { super.onCreate(); - Context context = this; SoLoader.init(this, /* native exopackage */ false); if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { // If you opted-in for the New Architecture, we load the native entry point for this app. @@ -79,7 +81,9 @@ public void onCreate() { } ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); - NetworkingModule.setCustomClientBuilder( + Context context = this; + + NetworkingModule.setCustomClientBuilder( new NetworkingModule.CustomClientBuilder() { @Override public void apply(OkHttpClient.Builder builder) { @@ -93,9 +97,6 @@ public void apply(OkHttpClient.Builder builder) { // Braze registerActivityLifecycleCallbacks(new BrazeActivityLifecycleCallbackListener()); } - /* - Fix for IAB TODO - */ public void addActivityToStack (Class cls) { if (!runningActivities.contains(cls)) runningActivities.add(cls); diff --git a/android/build.gradle b/android/build.gradle index e67ffb6fa6..53c75b8291 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -17,7 +17,7 @@ buildscript { mavenCentral() } dependencies { - classpath("com.android.tools.build:gradle:7.3.1") + classpath("com.android.tools.build:gradle") classpath("com.facebook.react:react-native-gradle-plugin") classpath 'com.google.android.gms:strict-version-matcher-plugin:1.2.1' classpath 'com.google.gms:google-services:4.3.14' @@ -28,25 +28,10 @@ buildscript { allprojects { repositories { mavenLocal() - maven { - // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url("$rootDir/../node_modules/react-native/android") - } - maven { - // Android JSC is installed from npm - url("$rootDir/../node_modules/jsc-android/dist") - } - mavenCentral { - // We don't want to fetch react-native from Maven Central as there are - // older versions over there. - content { - excludeGroup "com.facebook.react" - } - } - google() jcenter() mavenCentral() - maven { url 'https://www.jitpack.io' } + + // Braze maven { url "https://appboy.github.io/appboy-android-sdk/sdk" } } -} +} \ No newline at end of file diff --git a/android/gradle.properties b/android/gradle.properties index e4af465e8a..e1ddc51c77 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -37,7 +37,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 # your application. You should enable this flag either if you want # to write custom TurboModules/Fabric components OR use libraries that # are providing them. -newArchEnabled=false +newArchEnabled=true # Use this property to enable or disable the Hermes JS engine. # If set to false, you will be using JSC instead. diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 508322917b..8fad3f5a98 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-bin.zip -networkTimeout=10000 +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/android/gradlew b/android/gradlew index 65dcd68d65..17bb40a87c 100755 --- a/android/gradlew +++ b/android/gradlew @@ -80,11 +80,11 @@ do esac done -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' @@ -143,16 +143,12 @@ fi if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then case $MAX_FD in #( max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 MAX_FD=$( ulimit -H -n ) || warn "Could not query maximum file descriptor limit" esac case $MAX_FD in #( '' | soft) :;; #( *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 ulimit -n "$MAX_FD" || warn "Could not set maximum file descriptor limit to $MAX_FD" esac @@ -209,12 +205,6 @@ set -- \ org.gradle.wrapper.GradleWrapperMain \ "$@" -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - # Use "xargs" to parse quoted args. # # With -n1 it outputs one arg per line, with the quotes and backslashes removed. diff --git a/index.js b/index.tsx similarity index 91% rename from index.js rename to index.tsx index 22430de549..098f8b313a 100644 --- a/index.js +++ b/index.tsx @@ -1,4 +1,4 @@ -import 'react-native-get-random-values';// must import before @ethersproject/shims +import 'react-native-get-random-values'; // must import before @ethersproject/shims import '@ethersproject/shims'; import './shim'; import '@walletconnect/react-native-compat'; diff --git a/ios/BitPayApp.xcodeproj/project.pbxproj b/ios/BitPayApp.xcodeproj/project.pbxproj index e2356fe10c..3aaacab3e1 100644 --- a/ios/BitPayApp.xcodeproj/project.pbxproj +++ b/ios/BitPayApp.xcodeproj/project.pbxproj @@ -270,7 +270,8 @@ 83CBB9F71A601CBA00E9B192 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1210; + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1430; TargetAttributes = { 00E356ED1AD99517003FC87E = { CreatedOnToolsVersion = 6.2; @@ -589,12 +590,15 @@ DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 884JRH5R93; ENABLE_BITCODE = NO; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = BitPayApp/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.4; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 c++17"; OTHER_CODE_SIGN_FLAGS = "--generate-entitlement-der"; OTHER_LDFLAGS = ( "$(inherited)", @@ -624,12 +628,15 @@ CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 884JRH5R93; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = BitPayApp/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.4; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 c++17"; OTHER_CODE_SIGN_FLAGS = "--generate-entitlement-der"; OTHER_LDFLAGS = ( "$(inherited)", @@ -703,6 +710,14 @@ LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\""; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "$(inherited)", + "-DRN_FABRIC_ENABLED", + ); + OTHER_CPLUSPLUSFLAGS = ( + "$(inherited)", + "-DRN_FABRIC_ENABLED", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; }; @@ -758,8 +773,17 @@ ); LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\""; MTL_ENABLE_DEBUG_INFO = NO; + OTHER_CFLAGS = ( + "$(inherited)", + "-DRN_FABRIC_ENABLED", + ); + OTHER_CPLUSPLUSFLAGS = ( + "$(inherited)", + "-DRN_FABRIC_ENABLED", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; VALIDATE_PRODUCT = YES; }; name = Release; diff --git a/ios/BitPayApp.xcodeproj/xcshareddata/xcschemes/BitPayApp.xcscheme b/ios/BitPayApp.xcodeproj/xcshareddata/xcschemes/BitPayApp.xcscheme index cd49ddfbd2..5ce02426a6 100644 --- a/ios/BitPayApp.xcodeproj/xcshareddata/xcschemes/BitPayApp.xcscheme +++ b/ios/BitPayApp.xcodeproj/xcshareddata/xcschemes/BitPayApp.xcscheme @@ -1,6 +1,6 @@ = RCTLogLevelError) { - redboxError = message; - } - }); + RCTSetLogFunction( + ^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { + if (level >= RCTLogLevelError) { + redboxError = message; + } + }); #endif while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; - foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { - if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { - return YES; - } - return NO; - }]; + foundElement = [self findSubviewInView:vc.view + matching:^BOOL(UIView *view) { + if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { + return YES; + } + return NO; + }]; } #ifdef DEBUG diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 1e6f02404f..6100b7c2f0 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -20,18 +20,16 @@ PODS: - AppsFlyerFramework/Main (= 6.5.2) - AppsFlyerFramework/Main (6.5.2) - boost (1.76.0) - - BVLinearGradient (2.6.2): - - React-Core - CocoaAsyncSocket (7.6.5) - DoubleConversion (1.1.6) - - FBLazyVector (0.71.4) - - FBReactNativeSpec (0.71.4): + - FBLazyVector (0.71.8) + - FBReactNativeSpec (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTRequired (= 0.71.4) - - RCTTypeSafety (= 0.71.4) - - React-Core (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-Core (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) - Flipper (0.125.0): - Flipper-Folly (~> 2.6) - Flipper-RSocket (~> 1.4) @@ -95,9 +93,9 @@ PODS: - FlipperKit/FlipperKitNetworkPlugin - fmt (6.2.1) - glog (0.3.5) - - hermes-engine (0.71.4): - - hermes-engine/Pre-built (= 0.71.4) - - hermes-engine/Pre-built (0.71.4) + - hermes-engine (0.71.8): + - hermes-engine/Pre-built (= 0.71.8) + - hermes-engine/Pre-built (0.71.8) - InputMask (6.1.0) - libevent (2.1.12) - libwebp (1.2.4): @@ -110,7 +108,7 @@ PODS: - libwebp/demux - libwebp/webp (1.2.4) - OpenSSL-Universal (1.1.1100) - - Permission-Notifications (3.7.2): + - Permission-Notifications (3.8.0): - RNPermissions - RCT-Folly (2021.07.22.00): - boost @@ -123,245 +121,572 @@ PODS: - DoubleConversion - fmt (~> 6.2.1) - glog + - RCT-Folly/Fabric (2021.07.22.00): + - boost + - DoubleConversion + - fmt (~> 6.2.1) + - glog - RCT-Folly/Futures (2021.07.22.00): - boost - DoubleConversion - fmt (~> 6.2.1) - glog - libevent - - RCTRequired (0.71.4) - - RCTTypeSafety (0.71.4): - - FBLazyVector (= 0.71.4) - - RCTRequired (= 0.71.4) - - React-Core (= 0.71.4) - - React (0.71.4): - - React-Core (= 0.71.4) - - React-Core/DevSupport (= 0.71.4) - - React-Core/RCTWebSocket (= 0.71.4) - - React-RCTActionSheet (= 0.71.4) - - React-RCTAnimation (= 0.71.4) - - React-RCTBlob (= 0.71.4) - - React-RCTImage (= 0.71.4) - - React-RCTLinking (= 0.71.4) - - React-RCTNetwork (= 0.71.4) - - React-RCTSettings (= 0.71.4) - - React-RCTText (= 0.71.4) - - React-RCTVibration (= 0.71.4) - - React-callinvoker (0.71.4) - - React-Codegen (0.71.4): + - RCTRequired (0.71.8) + - RCTTypeSafety (0.71.8): + - FBLazyVector (= 0.71.8) + - RCTRequired (= 0.71.8) + - React-Core (= 0.71.8) + - React (0.71.8): + - React-Core (= 0.71.8) + - React-Core/DevSupport (= 0.71.8) + - React-Core/RCTWebSocket (= 0.71.8) + - React-RCTActionSheet (= 0.71.8) + - React-RCTAnimation (= 0.71.8) + - React-RCTBlob (= 0.71.8) + - React-RCTImage (= 0.71.8) + - React-RCTLinking (= 0.71.8) + - React-RCTNetwork (= 0.71.8) + - React-RCTSettings (= 0.71.8) + - React-RCTText (= 0.71.8) + - React-RCTVibration (= 0.71.8) + - React-callinvoker (0.71.8) + - React-Codegen (0.71.8): - FBReactNativeSpec - hermes-engine - RCT-Folly - RCTRequired - RCTTypeSafety - React-Core + - React-graphics - React-jsi - React-jsiexecutor + - React-rncore - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - - React-Core (0.71.4): + - React-Core (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-Core/Default (= 0.71.4) - - React-cxxreact (= 0.71.4) + - React-Core/Default (= 0.71.8) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/CoreModulesHeaders (0.71.4): + - React-Core/CoreModulesHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/Default (0.71.4): + - React-Core/Default (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/DevSupport (0.71.4): + - React-Core/DevSupport (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-Core/Default (= 0.71.4) - - React-Core/RCTWebSocket (= 0.71.4) - - React-cxxreact (= 0.71.4) + - React-Core/Default (= 0.71.8) + - React-Core/RCTWebSocket (= 0.71.8) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-jsinspector (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-jsinspector (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTActionSheetHeaders (0.71.4): + - React-Core/RCTActionSheetHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTAnimationHeaders (0.71.4): + - React-Core/RCTAnimationHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTBlobHeaders (0.71.4): + - React-Core/RCTBlobHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTImageHeaders (0.71.4): + - React-Core/RCTImageHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTLinkingHeaders (0.71.4): + - React-Core/RCTLinkingHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTNetworkHeaders (0.71.4): + - React-Core/RCTNetworkHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTSettingsHeaders (0.71.4): + - React-Core/RCTSettingsHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTTextHeaders (0.71.4): + - React-Core/RCTTextHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTVibrationHeaders (0.71.4): + - React-Core/RCTVibrationHeaders (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-Core/RCTWebSocket (0.71.4): + - React-Core/RCTWebSocket (0.71.8): - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-Core/Default (= 0.71.4) - - React-cxxreact (= 0.71.4) + - React-Core/Default (= 0.71.8) + - React-cxxreact (= 0.71.8) - React-hermes - - React-jsi (= 0.71.4) - - React-jsiexecutor (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-perflogger (= 0.71.8) - Yoga - - React-CoreModules (0.71.4): + - React-CoreModules (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTTypeSafety (= 0.71.4) - - React-Codegen (= 0.71.4) - - React-Core/CoreModulesHeaders (= 0.71.4) - - React-jsi (= 0.71.4) + - RCTTypeSafety (= 0.71.8) + - React-Codegen (= 0.71.8) + - React-Core/CoreModulesHeaders (= 0.71.8) + - React-jsi (= 0.71.8) - React-RCTBlob - - React-RCTImage (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-cxxreact (0.71.4): + - React-RCTImage (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-cxxreact (0.71.8): - boost (= 1.76.0) - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-callinvoker (= 0.71.4) - - React-jsi (= 0.71.4) - - React-jsinspector (= 0.71.4) - - React-logger (= 0.71.4) - - React-perflogger (= 0.71.4) - - React-runtimeexecutor (= 0.71.4) - - React-hermes (0.71.4): + - React-callinvoker (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsinspector (= 0.71.8) + - React-logger (= 0.71.8) + - React-perflogger (= 0.71.8) + - React-runtimeexecutor (= 0.71.8) + - React-Fabric (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-Fabric/animations (= 0.71.8) + - React-Fabric/attributedstring (= 0.71.8) + - React-Fabric/butter (= 0.71.8) + - React-Fabric/componentregistry (= 0.71.8) + - React-Fabric/componentregistrynative (= 0.71.8) + - React-Fabric/components (= 0.71.8) + - React-Fabric/config (= 0.71.8) + - React-Fabric/core (= 0.71.8) + - React-Fabric/debug_core (= 0.71.8) + - React-Fabric/debug_renderer (= 0.71.8) + - React-Fabric/imagemanager (= 0.71.8) + - React-Fabric/leakchecker (= 0.71.8) + - React-Fabric/mapbuffer (= 0.71.8) + - React-Fabric/mounting (= 0.71.8) + - React-Fabric/runtimescheduler (= 0.71.8) + - React-Fabric/scheduler (= 0.71.8) + - React-Fabric/telemetry (= 0.71.8) + - React-Fabric/templateprocessor (= 0.71.8) + - React-Fabric/textlayoutmanager (= 0.71.8) + - React-Fabric/uimanager (= 0.71.8) + - React-Fabric/utils (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/animations (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/attributedstring (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/butter (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/componentregistry (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/componentregistrynative (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-Fabric/components/activityindicator (= 0.71.8) + - React-Fabric/components/image (= 0.71.8) + - React-Fabric/components/inputaccessory (= 0.71.8) + - React-Fabric/components/legacyviewmanagerinterop (= 0.71.8) + - React-Fabric/components/modal (= 0.71.8) + - React-Fabric/components/root (= 0.71.8) + - React-Fabric/components/safeareaview (= 0.71.8) + - React-Fabric/components/scrollview (= 0.71.8) + - React-Fabric/components/slider (= 0.71.8) + - React-Fabric/components/text (= 0.71.8) + - React-Fabric/components/textinput (= 0.71.8) + - React-Fabric/components/unimplementedview (= 0.71.8) + - React-Fabric/components/view (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/activityindicator (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/image (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/inputaccessory (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/legacyviewmanagerinterop (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/modal (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/root (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/safeareaview (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/scrollview (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/slider (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/text (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/textinput (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/unimplementedview (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/components/view (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - Yoga + - React-Fabric/config (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/core (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/debug_core (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/debug_renderer (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/imagemanager (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - React-RCTImage (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/leakchecker (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/mapbuffer (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/mounting (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/runtimescheduler (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/scheduler (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/telemetry (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/templateprocessor (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/textlayoutmanager (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-Fabric/uimanager + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/uimanager (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-Fabric/utils (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - RCTRequired (= 0.71.8) + - RCTTypeSafety (= 0.71.8) + - React-graphics (= 0.71.8) + - React-jsi (= 0.71.8) + - React-jsiexecutor (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-graphics (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - React-Core/Default (= 0.71.8) + - React-hermes (0.71.8): - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - RCT-Folly/Futures (= 2021.07.22.00) - - React-cxxreact (= 0.71.4) + - React-cxxreact (= 0.71.8) - React-jsi - - React-jsiexecutor (= 0.71.4) - - React-jsinspector (= 0.71.4) - - React-perflogger (= 0.71.4) - - React-jsi (0.71.4): + - React-jsiexecutor (= 0.71.8) + - React-jsinspector (= 0.71.8) + - React-perflogger (= 0.71.8) + - React-jsi (0.71.8): - boost (= 1.76.0) - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-jsiexecutor (0.71.4): + - React-jsiexecutor (0.71.8): - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-cxxreact (= 0.71.4) - - React-jsi (= 0.71.4) - - React-perflogger (= 0.71.4) - - React-jsinspector (0.71.4) - - React-logger (0.71.4): + - React-cxxreact (= 0.71.8) + - React-jsi (= 0.71.8) + - React-perflogger (= 0.71.8) + - React-jsinspector (0.71.8) + - React-logger (0.71.8): - glog - react-native-appboy-sdk (1.40.0): - Appboy-iOS-SDK (~> 4.5.1) @@ -369,8 +694,14 @@ PODS: - react-native-appsflyer (6.5.20): - AppsFlyerFramework (= 6.5.2) - React - - react-native-blur (0.8.0): - - React + - react-native-blur (4.3.0): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React-Codegen + - React-Core + - React-RCTFabric + - ReactCommon/turbomodule/core - react-native-camera (4.2.1): - React-Core - react-native-camera/RCT (= 4.2.1) @@ -385,118 +716,170 @@ PODS: - React-Core - react-native-get-random-values (1.8.0): - React-Core + - react-native-gradient (0.1.1): + - RCT-Folly (= 2021.07.22.00) + - RCTRequired + - RCTTypeSafety + - React-Codegen + - React-Core + - React-RCTFabric + - ReactCommon/turbomodule/bridging + - ReactCommon/turbomodule/core - react-native-in-app-review (4.3.1): - React-Core - react-native-mail (6.1.1): - React-Core - react-native-pager-view (6.1.4): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React-Codegen - React-Core + - React-RCTFabric + - ReactCommon/turbomodule/core - react-native-print (0.11.0): - React-Core - react-native-randombytes (3.6.1): - React-Core - react-native-restart (0.0.27): - React-Core - - react-native-safe-area-context (4.5.0): + - react-native-safe-area-context (4.5.1): - RCT-Folly - RCTRequired - RCTTypeSafety - React-Core + - react-native-safe-area-context/common (= 4.5.1) + - react-native-safe-area-context/fabric (= 4.5.1) - ReactCommon/turbomodule/core - - react-native-slider (4.2.4): + - react-native-safe-area-context/common (4.5.1): + - RCT-Folly + - RCTRequired + - RCTTypeSafety - React-Core + - ReactCommon/turbomodule/core + - react-native-safe-area-context/fabric (4.5.1): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React-Codegen + - React-Core + - react-native-safe-area-context/common + - React-RCTFabric + - ReactCommon/turbomodule/core + - react-native-slider (4.4.2): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React-Codegen + - React-Core + - React-RCTFabric + - ReactCommon/turbomodule/core - react-native-text-input-mask (3.1.4): - InputMask (~> 6.1.0) - React-Core - React-RCTText - react-native-user-agent (2.3.1): - React - - react-native-webview (11.26.1): + - react-native-webview (12.0.2): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React-Codegen - React-Core - - React-perflogger (0.71.4) - - React-RCTActionSheet (0.71.4): - - React-Core/RCTActionSheetHeaders (= 0.71.4) - - React-RCTAnimation (0.71.4): + - React-RCTFabric + - ReactCommon/turbomodule/core + - React-perflogger (0.71.8) + - React-RCTActionSheet (0.71.8): + - React-Core/RCTActionSheetHeaders (= 0.71.8) + - React-RCTAnimation (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTTypeSafety (= 0.71.4) - - React-Codegen (= 0.71.4) - - React-Core/RCTAnimationHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTAppDelegate (0.71.4): + - RCTTypeSafety (= 0.71.8) + - React-Codegen (= 0.71.8) + - React-Core/RCTAnimationHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTAppDelegate (0.71.8): - RCT-Folly - RCTRequired - RCTTypeSafety - React-Core + - React-graphics + - React-RCTFabric - ReactCommon/turbomodule/core - - React-RCTBlob (0.71.4): + - React-RCTBlob (0.71.8): - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-Codegen (= 0.71.4) - - React-Core/RCTBlobHeaders (= 0.71.4) - - React-Core/RCTWebSocket (= 0.71.4) - - React-jsi (= 0.71.4) - - React-RCTNetwork (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTImage (0.71.4): + - React-Codegen (= 0.71.8) + - React-Core/RCTBlobHeaders (= 0.71.8) + - React-Core/RCTWebSocket (= 0.71.8) + - React-jsi (= 0.71.8) + - React-RCTNetwork (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTFabric (0.71.8): + - RCT-Folly/Fabric (= 2021.07.22.00) + - React-Core (= 0.71.8) + - React-Fabric (= 0.71.8) + - React-RCTImage (= 0.71.8) + - React-RCTImage (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTTypeSafety (= 0.71.4) - - React-Codegen (= 0.71.4) - - React-Core/RCTImageHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - React-RCTNetwork (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTLinking (0.71.4): - - React-Codegen (= 0.71.4) - - React-Core/RCTLinkingHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTNetwork (0.71.4): + - RCTTypeSafety (= 0.71.8) + - React-Codegen (= 0.71.8) + - React-Core/RCTImageHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - React-RCTNetwork (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTLinking (0.71.8): + - React-Codegen (= 0.71.8) + - React-Core/RCTLinkingHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTNetwork (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTTypeSafety (= 0.71.4) - - React-Codegen (= 0.71.4) - - React-Core/RCTNetworkHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTSettings (0.71.4): + - RCTTypeSafety (= 0.71.8) + - React-Codegen (= 0.71.8) + - React-Core/RCTNetworkHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTSettings (0.71.8): - RCT-Folly (= 2021.07.22.00) - - RCTTypeSafety (= 0.71.4) - - React-Codegen (= 0.71.4) - - React-Core/RCTSettingsHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-RCTText (0.71.4): - - React-Core/RCTTextHeaders (= 0.71.4) - - React-RCTVibration (0.71.4): + - RCTTypeSafety (= 0.71.8) + - React-Codegen (= 0.71.8) + - React-Core/RCTSettingsHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-RCTText (0.71.8): + - React-Core/RCTTextHeaders (= 0.71.8) + - React-RCTVibration (0.71.8): - RCT-Folly (= 2021.07.22.00) - - React-Codegen (= 0.71.4) - - React-Core/RCTVibrationHeaders (= 0.71.4) - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/core (= 0.71.4) - - React-runtimeexecutor (0.71.4): - - React-jsi (= 0.71.4) - - ReactCommon/turbomodule/bridging (0.71.4): + - React-Codegen (= 0.71.8) + - React-Core/RCTVibrationHeaders (= 0.71.8) + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/core (= 0.71.8) + - React-rncore (0.71.8) + - React-runtimeexecutor (0.71.8): + - React-jsi (= 0.71.8) + - ReactCommon/turbomodule/bridging (0.71.8): - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-callinvoker (= 0.71.4) - - React-Core (= 0.71.4) - - React-cxxreact (= 0.71.4) - - React-jsi (= 0.71.4) - - React-logger (= 0.71.4) - - React-perflogger (= 0.71.4) - - ReactCommon/turbomodule/core (0.71.4): + - React-callinvoker (= 0.71.8) + - React-Core (= 0.71.8) + - React-cxxreact (= 0.71.8) + - React-jsi (= 0.71.8) + - React-logger (= 0.71.8) + - React-perflogger (= 0.71.8) + - ReactCommon/turbomodule/core (0.71.8): - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.07.22.00) - - React-callinvoker (= 0.71.4) - - React-Core (= 0.71.4) - - React-cxxreact (= 0.71.4) - - React-jsi (= 0.71.4) - - React-logger (= 0.71.4) - - React-perflogger (= 0.71.4) + - React-callinvoker (= 0.71.8) + - React-Core (= 0.71.8) + - React-cxxreact (= 0.71.8) + - React-jsi (= 0.71.8) + - React-logger (= 0.71.8) + - React-perflogger (= 0.71.8) - RNBootSplash (3.2.6): - React-Core - RNCAsyncStorage (1.17.10): @@ -508,21 +891,39 @@ PODS: - RNDeviceInfo (8.4.7): - React-Core - RNFastImage (8.6.3): - - React-Core + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core - SDWebImage (~> 5.11.1) - SDWebImageWebPCoder (~> 0.8.4) - RNFS (2.20.0): - React-Core - RNGestureHandler (2.9.0): - - React-Core + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core - RNInAppBrowser (3.7.0): - React-Core - RNLocalize (2.2.4): - React-Core - RNOS (1.2.6): - React - - RNPermissions (3.7.2): - - React-Core + - RNPermissions (3.8.0): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core - RNQuickAction (0.3.13): - React - RNRate (1.2.12): @@ -538,6 +939,7 @@ PODS: - RCTRequired - RCTTypeSafety - React-callinvoker + - React-Codegen - React-Core - React-Core/DevSupport - React-Core/RCTWebSocket @@ -549,6 +951,7 @@ PODS: - React-RCTActionSheet - React-RCTAnimation - React-RCTBlob + - React-RCTFabric - React-RCTImage - React-RCTLinking - React-RCTNetwork @@ -557,14 +960,43 @@ PODS: - ReactCommon/turbomodule/core - Yoga - RNScreens (3.20.0): - - React-Core - - React-RCTImage + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core + - RNScreens/common (= 3.20.0) + - RNScreens/common (3.20.0): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core - RNShare (8.2.0): - React-Core - RNSharedElement (0.8.8): - React-Core - - RNSVG (13.8.0): - - React-Core + - RNSVG (13.9.0): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core + - RNSVG/common (= 13.9.0) + - RNSVG/common (13.9.0): + - RCT-Folly + - RCTRequired + - RCTTypeSafety + - React + - React-Codegen + - React-RCTFabric + - ReactCommon/turbomodule/core - SDWebImage (5.11.1): - SDWebImage/Core (= 5.11.1) - SDWebImage/Core (5.11.1) @@ -587,7 +1019,6 @@ PODS: DEPENDENCIES: - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) - - BVLinearGradient (from `../node_modules/react-native-linear-gradient`) - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) @@ -618,6 +1049,7 @@ DEPENDENCIES: - OpenSSL-Universal (= 1.1.1100) - Permission-Notifications (from `../node_modules/react-native-permissions/ios/Notifications/Permission-Notifications.podspec`) - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) + - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) - React (from `../node_modules/react-native/`) @@ -628,6 +1060,8 @@ DEPENDENCIES: - React-Core/RCTWebSocket (from `../node_modules/react-native/`) - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) + - React-Fabric (from `../node_modules/react-native/ReactCommon`) + - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`) - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`) - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) @@ -639,6 +1073,7 @@ DEPENDENCIES: - react-native-camera (from `../node_modules/react-native-camera`) - react-native-config (from `../node_modules/react-native-config`) - react-native-get-random-values (from `../node_modules/react-native-get-random-values`) + - react-native-gradient (from `../node_modules/rnx-gradient`) - react-native-in-app-review (from `../node_modules/react-native-in-app-review`) - react-native-mail (from `../node_modules/react-native-mail`) - react-native-pager-view (from `../node_modules/react-native-pager-view`) @@ -655,12 +1090,14 @@ DEPENDENCIES: - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`) - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) + - React-RCTFabric (from `../node_modules/react-native/React`) - 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-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) - React-RCTText (from `../node_modules/react-native/Libraries/Text`) - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) + - React-rncore (from `../node_modules/react-native/ReactCommon`) - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - RNBootSplash (from `../node_modules/react-native-bootsplash`) @@ -716,8 +1153,6 @@ SPEC REPOS: EXTERNAL SOURCES: boost: :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec" - BVLinearGradient: - :path: "../node_modules/react-native-linear-gradient" DoubleConversion: :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" FBLazyVector: @@ -748,6 +1183,10 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/React/CoreModules" React-cxxreact: :path: "../node_modules/react-native/ReactCommon/cxxreact" + React-Fabric: + :path: "../node_modules/react-native/ReactCommon" + React-graphics: + :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics" React-hermes: :path: "../node_modules/react-native/ReactCommon/hermes" React-jsi: @@ -770,6 +1209,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native-config" react-native-get-random-values: :path: "../node_modules/react-native-get-random-values" + react-native-gradient: + :path: "../node_modules/rnx-gradient" react-native-in-app-review: :path: "../node_modules/react-native-in-app-review" react-native-mail: @@ -802,6 +1243,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/Libraries/AppDelegate" React-RCTBlob: :path: "../node_modules/react-native/Libraries/Blob" + React-RCTFabric: + :path: "../node_modules/react-native/React" React-RCTImage: :path: "../node_modules/react-native/Libraries/Image" React-RCTLinking: @@ -814,6 +1257,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/Libraries/Text" React-RCTVibration: :path: "../node_modules/react-native/Libraries/Vibration" + React-rncore: + :path: "../node_modules/react-native/ReactCommon" React-runtimeexecutor: :path: "../node_modules/react-native/ReactCommon/runtimeexecutor" ReactCommon: @@ -873,11 +1318,10 @@ SPEC CHECKSUMS: Appboy-iOS-SDK: 2fc5b290fe1caa85718b811a19b303d45caea975 AppsFlyerFramework: 9f304d91cc80b6579b1206a59220383056b58b47 boost: 57d2868c099736d80fcd648bf211b4431e51a558 - BVLinearGradient: 34a999fda29036898a09c6a6b728b0b4189e1a44 CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 - FBLazyVector: 446e84642979fff0ba57f3c804c2228a473aeac2 - FBReactNativeSpec: 241709e132e3bf1526c1c4f00bc5384dd39dfba9 + FBLazyVector: f637f31eacba90d4fdeff3fa41608b8f361c173b + FBReactNativeSpec: 7fd4b5d618f41d5a75f79f0a85403d0fab3a3f80 Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0 Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30 @@ -889,76 +1333,81 @@ SPEC CHECKSUMS: FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86 fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b - hermes-engine: a1f157c49ea579c28b0296bda8530e980c45bdb3 + hermes-engine: 47986d26692ae75ee7a17ab049caee8864f855de InputMask: 71d291dc54d2deaeac6512afb6ec2304228c0bb7 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c - Permission-Notifications: dbc8cb572cdfbc3c2941feecce4c7900bbdccea1 + Permission-Notifications: aa91ec29236626ff59cb60e08389c0a59a9d32c5 RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1 - RCTRequired: 5a024fdf458fa8c0d82fc262e76f982d4dcdecdd - RCTTypeSafety: b6c253064466411c6810b45f66bc1e43ce0c54ba - React: 715292db5bd46989419445a5547954b25d2090f0 - React-callinvoker: 105392d1179058585b564d35b4592fe1c46d6fba - React-Codegen: b75333b93d835afce84b73472927cccaef2c9f8c - React-Core: 88838ed1724c64905fc6c0811d752828a92e395b - React-CoreModules: cd238b4bb8dc8529ccc8b34ceae7267b04ce1882 - React-cxxreact: 291bfab79d8098dc5ebab98f62e6bdfe81b3955a - React-hermes: b1e67e9a81c71745704950516f40ee804349641c - React-jsi: c9d5b563a6af6bb57034a82c2b0d39d0a7483bdc - React-jsiexecutor: d6b7fa9260aa3cb40afee0507e3bc1d17ecaa6f2 - React-jsinspector: 1f51e775819199d3fe9410e69ee8d4c4161c7b06 - React-logger: 0d58569ec51d30d1792c5e86a8e3b78d24b582c6 + RCTRequired: 8af6a32dfc2b65ec82193c2dee6e1011ff22ac2a + RCTTypeSafety: bee9dd161c175896c680d47ef1d9eaacf2b587f4 + React: d850475db9ba8006a8b875d79e1e0d6ac8a0f8b6 + React-callinvoker: 6a0c75475ddc17c9ed54e4ff0478074a18fd7ab5 + React-Codegen: e1e105c443745460088c60b2b7245b96b551a0ba + React-Core: 1adfab153f59e4f56e09b97a153089f466d7b8aa + React-CoreModules: 958d236715415d4ccdd5fa35c516cf0356637393 + React-cxxreact: 2e7a6283807ce8755c3d501735acd400bec3b5cd + React-Fabric: c0c78fe6ce600c2b031108d2c878431087606895 + React-graphics: 8bb5f3820341c00e9d7c866f15cd099a2e0eb0ee + React-hermes: 8102c3112ba32207c3052619be8cfae14bf99d84 + React-jsi: dd29264f041a587e91f994e4be97e86c127742b2 + React-jsiexecutor: 747911ab5921641b4ed7e4900065896597142125 + React-jsinspector: c712f9e3bb9ba4122d6b82b4f906448b8a281580 + React-logger: 342f358b8decfbf8f272367f4eacf4b6154061be react-native-appboy-sdk: 60b4dbb70486426ccc00cd04ab105f8f9afc83fa react-native-appsflyer: fac6d94b40ce52dc69a07c242317b83c7b9e0cc2 - react-native-blur: cad4d93b364f91e7b7931b3fa935455487e5c33c + react-native-blur: 1f76a61b464488c3a263ab837e40357eaae70afe react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f react-native-config: 5330c8258265c1e5fdb8c009d2cabd6badd96727 react-native-get-random-values: a6ea6a8a65dc93e96e24a11105b1a9c8cfe1d72a + react-native-gradient: a4977c5580035cc3535a8ab0c9233420e0ac8348 react-native-in-app-review: ae45cc55e168a3b78eea9eea031ca57dccd7eb5a react-native-mail: 8fdcd3aef007c33a6877a18eb4cf7447a1d4ce4a - react-native-pager-view: b58cb9e9f42f64e50cab3040815772c1d119a2e2 + react-native-pager-view: 4467ccfe7b0fe21459372640daa1a47cca7551ce react-native-print: f704aef52d931bfce6d1d84351dbb5232d7ecb89 react-native-randombytes: 421f1c7d48c0af8dbcd471b0324393ebf8fe7846 react-native-restart: 7595693413fe3ca15893702f2c8306c62a708162 - react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc - react-native-slider: cecabb58ecffad671d2ad3ccc58c7f4d2d029e95 + react-native-safe-area-context: 0dfc8e3a7d5ff115d100bafe4269d64a2c0a1456 + react-native-slider: 5469a8940a754f73c26ea4bb97c0faace6170f01 react-native-text-input-mask: 36a546b378fadd2efe1b7484a859d34bc2c80395 react-native-user-agent: a90a1e839b99801baad67a73dd6f361a52aa3cf1 - react-native-webview: 9f111dfbcfc826084d6c507f569e5e03342ee1c1 - React-perflogger: 0bb0522a12e058f6eb69d888bc16f40c16c4b907 - React-RCTActionSheet: bfd675a10f06a18728ea15d82082d48f228a213a - React-RCTAnimation: 2fa220b2052ec75b733112aca39143d34546a941 - React-RCTAppDelegate: 8564f93c1d9274e95e3b0c746d08a87ff5a621b2 - React-RCTBlob: d0336111f46301ae8aba2e161817e451aad72dd6 - React-RCTImage: fec592c46edb7c12a9cde08780bdb4a688416c62 - React-RCTLinking: 14eccac5d2a3b34b89dbfa29e8ef6219a153fe2d - React-RCTNetwork: 1fbce92e772e39ca3687a2ebb854501ff6226dd7 - React-RCTSettings: 1abea36c9bb16d9979df6c4b42e2ea281b4bbcc5 - React-RCTText: 15355c41561a9f43dfd23616d0a0dd40ba05ed61 - React-RCTVibration: ad17efcfb2fa8f6bfd8ac0cf48d96668b8b28e0b - React-runtimeexecutor: 8fa50b38df6b992c76537993a2b0553d3b088004 - ReactCommon: b49a4b00ca6d181ff74b17c12b2d59ac4add0bde + react-native-webview: 840959f28ba47e602b8d04dbf49f34800c137dde + React-perflogger: d21f182895de9d1b077f8a3cd00011095c8c9100 + React-RCTActionSheet: 0151f83ef92d2a7139bba7dfdbc8066632a6d47b + React-RCTAnimation: 5ec9c0705bb2297549c120fe6473aa3e4a01e215 + React-RCTAppDelegate: de2547690467db436729e260ae0dcb780471ce49 + React-RCTBlob: f3634eb45b6e7480037655e1ca93d1136ac984dd + React-RCTFabric: b64c9b843c59d353742d2497f36ae53bffb7898f + React-RCTImage: 3c12cb32dec49549ae62ed6cba4018db43841ffc + React-RCTLinking: 310e930ee335ef25481b4a173d9edb64b77895f9 + React-RCTNetwork: b6837841fe88303b0c04c1e3c01992b30f1f5498 + React-RCTSettings: 600d91fe25fa7c16b0ff891304082440f2904b89 + React-RCTText: a0a19f749088280c6def5397ed6211b811e7eef3 + React-RCTVibration: 43ffd976a25f6057a7cf95ea3648ba4e00287f89 + React-rncore: af8e7df37a39fa66087ccfcb477154daebd3e479 + React-runtimeexecutor: 7c51ae9d4b3e9608a2366e39ccaa606aa551b9ed + ReactCommon: 85c98ab0a509e70bf5ee5d9715cf68dbf495b84c RNBootSplash: 51eef7e143faeab63f81ddbb7c1de38b8fba66ed RNCAsyncStorage: 0c357f3156fcb16c8589ede67cc036330b6698ca RNCClipboard: 41d8d918092ae8e676f18adada19104fa3e68495 RNCMaskedView: c298b644a10c0c142055b3ae24d83879ecb13ccd RNDeviceInfo: b32d24c84e40d54b736e62a7d2abd15e1225258d - RNFastImage: 5c9c9fed9c076e521b3f509fe79e790418a544e8 + RNFastImage: fdf8c03d43026a4af81e15e483e457d8b60067c6 RNFS: 4ac0f0ea233904cb798630b3c077808c06931688 - RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39 + RNGestureHandler: 9d2ebd17a9fef618d9720e3d95ff5e6607acf8d4 RNInAppBrowser: e36d6935517101ccba0e875bac8ad7b0cb655364 RNLocalize: 0df7970cfc60389f00eb62fd7c097dc75af3fb4f RNOS: 6f2f9a70895bbbfbdad7196abd952e7b01d45027 - RNPermissions: 2fbbcb7244357507f958d626d58eb15fb0013d85 + RNPermissions: 455f744d120197e178602f7a69a1bd7c7de345a7 RNQuickAction: 6d404a869dc872cde841ad3147416a670d13fa93 RNRate: ef3bcff84f39bb1d1e41c5593d3eea4aab2bd73a RNReactNativeHapticFeedback: 1e3efeca9628ff9876ee7cdd9edec1b336913f8c - RNReanimated: f0dd6b881808e635ef0673f89642937d6c141314 - RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f + RNReanimated: b38271c7b72560b7f9c3d0bf531faa8feb4da93a + RNScreens: 4666ca0a74ee229b2332c5d22d2a8b81ba9202be RNShare: b089c33619bbfb0a32bc4069c858b9274e694187 RNSharedElement: 504fa28a235b12505b6daedbb452a9ec96809bd0 - RNSVG: c1e76b81c76cdcd34b4e1188852892dc280eb902 + RNSVG: a9204714b832d82b483b0cbaee9e675646426b8d SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d segment-analytics-react-native: d3600ae853119d465d7f5b5884ef1c776796138a @@ -966,9 +1415,9 @@ SPEC CHECKSUMS: SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608 sovran-react-native: 5f9715a62b50008d72c0cf904cb08c8377777b62 TouchID: 175fa9c0b2b2651f25aaef4aa6bb42ce4d580c6e - Yoga: 79dd7410de6f8ad73a77c868d3d368843f0c93e0 + Yoga: 065f0b74dba4832d6e328238de46eb72c5de9556 YogaKit: f782866e155069a2cca2517aafea43200b01fd5a PODFILE CHECKSUM: 43d1d98bad36cb295d2549a3d9457936e8d60af2 -COCOAPODS: 1.11.3 +COCOAPODS: 1.12.1 diff --git a/metro.config.js b/metro.config.js index 1d84b1d06f..82fa51014e 100644 --- a/metro.config.js +++ b/metro.config.js @@ -8,6 +8,11 @@ module.exports = (async () => { return { transformer: { babelTransformerPath: require.resolve('react-native-svg-transformer'), + getTransformOptions: async () => ({ + transform: { + inlineRequires: true, + }, + }), }, resolver: { assetExts: assetExts.filter(ext => ext !== 'svg'), diff --git a/package.json b/package.json index 5069486a31..cf1ab70139 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "ios": "react-native run-ios", "ios:device": "export NODE_OPTIONS=--openssl-legacy-provider && react-native run-ios --device", "ios:device:release": "export NODE_OPTIONS=--openssl-legacy-provider && react-native run-ios --configuration Release --device", + "lint": "eslint --fix . --ext .js,.jsx,.ts,.tsx", "start": "export NODE_OPTIONS=--openssl-legacy-provider && react-native start", "test:coverage": "jest --coverage --testMatch='**/*.spec.{js,tsx}' --config='jest.config.js'", "test:unit": "jest --watch --testMatch='**/*.spec.{js,tsx}' --config='jest.config.js'", @@ -17,10 +18,9 @@ "prebuild:android:release": "yarn set:prod", "build:android:release": "export NODE_OPTIONS=--openssl-legacy-provider && ./scripts/android-release.sh", "postbuild:android:release": "yarn reset:prod", - "lint": "eslint --fix . --ext .js,.jsx,.ts,.tsx", "postinstall": "./scripts/postinstall.sh", "clean": "react-native-clean-project", - "pod:install": "command -v pod && (cd ios/ && pod install && cd ..) || echo \"pod command not found\"", + "pod:install": "command -v pod && (cd ios/ && RCT_NEW_ARCH_ENABLED=1 bundle exec pod install && cd ..) || echo \"pod command not found\"", "splash": "react-native generate-bootsplash assets/img/logos/bitpay.png --background-color=\"#1A3B8B\" --logo-width 130", "postversion": "react-native-version", "set:dev": "export NODE_ENV=development && yarn set-all && node ./scripts/dev-overrides.js", @@ -45,14 +45,14 @@ "@hookform/resolvers": "2.8.3", "@json-rpc-tools/utils": "1.7.6", "@react-native-async-storage/async-storage": "1.17.10", - "@react-native-community/blur": "3.6.0", + "@react-native-community/blur": "4.3.0", "@react-native-community/clipboard": "1.5.1", - "@react-native-community/slider": "4.2.4", + "@react-native-community/slider": "4.4.2", "@react-native-masked-view/masked-view": "0.2.6", "@react-navigation/bottom-tabs": "6.0.9", "@react-navigation/material-top-tabs": "6.0.6", "@react-navigation/native": "6.0.6", - "@react-navigation/stack": "6.0.11", + "@react-navigation/stack": "6.3.4", "@segment/analytics-react-native": "2.7.1", "@segment/analytics-react-native-plugin-appsflyer": "0.4.0", "@segment/analytics-react-native-plugin-braze": "0.4.0", @@ -73,6 +73,7 @@ "bitcore-wallet-client": "10.0.7", "buffer": "4.9.2", "countries-list": "2.6.1", + "eslint-plugin-ft-flow": "^2.0.3", "eth-sig-util": "3.0.1", "events": "3.3.0", "flatted": "3.2.5", @@ -94,7 +95,7 @@ "react": "18.2.0", "react-hook-form": "7.19.5", "react-i18next": "12.2.0", - "react-native": "0.71.4", + "react-native": "0.71.8", "react-native-appboy-sdk": "1.40.0", "react-native-appsflyer": "6.5.20", "react-native-bootsplash": "3.2.6", @@ -104,7 +105,7 @@ "react-native-device-info": "8.4.7", "react-native-draggable-flatlist": "4.0.1", "react-native-error-boundary": "1.2.1", - "react-native-fast-image": "8.6.3", + "react-native-fast-image": "https://github.com/numandev1/react-native-fast-image#feat/fabric-wolewicki", "react-native-fs": "2.20.0", "react-native-gesture-handler": "2.9.0", "react-native-get-random-values": "1.8.0", @@ -113,14 +114,13 @@ "react-native-inappbrowser-reborn": "3.7.0", "react-native-keyboard-aware-scroll-view": "0.9.5", "react-native-level-fs": "3.0.1", - "react-native-linear-gradient": "2.6.2", "react-native-localize": "2.2.4", "react-native-mail": "6.1.1", "react-native-markdown-display": "7.0.0-alpha.2", "react-native-modal": "13.0.1", "react-native-os": "1.2.6", "react-native-pager-view": "6.1.4", - "react-native-permissions": "3.7.2", + "react-native-permissions": "3.8.0", "react-native-print": "0.11.0", "react-native-progress": "5.0.0", "react-native-prompt-android": "1.1.0", @@ -129,24 +129,24 @@ "react-native-randombytes": "3.6.1", "react-native-rate": "1.2.12", "react-native-reanimated": "3.0.2", + "react-native-reanimated-carousel": "3.5.1", "react-native-restart": "0.0.27", "react-native-rounded-checkbox": "0.3.3", - "react-native-safe-area-context": "4.5.0", + "react-native-safe-area-context": "4.5.1", "react-native-screens": "3.20.0", "react-native-share": "8.2.0", "react-native-shared-element": "0.8.8", "react-native-skeleton-placeholder": "5.2.4", - "react-native-snap-carousel": "4.0.0-beta.6", - "react-native-svg": "13.8.0", + "react-native-svg": "13.9.0", "react-native-svg-transformer": "0.14.3", - "react-native-tab-view": "3.1.1", + "react-native-tab-view": "3.5.1", "react-native-text-input-mask": "3.1.4", "react-native-timeago": "0.5.0", "react-native-touch-id-ng": "5.0.1", "react-native-url-polyfill": "1.3.0", "react-native-user-agent": "2.3.1", "react-native-uuid": "2.0.1", - "react-native-webview": "11.26.1", + "react-native-webview": "12.0.2", "react-navigation-backhandler": "2.0.1", "react-navigation-shared-element": "3.1.3", "react-redux": "8.0.5", @@ -159,6 +159,7 @@ "reselect": "4.1.5", "rn-nodeify": "10.3.0", "rn-swipe-button": "1.3.8", + "rnx-gradient": "0.1.1", "stream-browserify": "1.0.0", "styled-components": "5.3.3", "url": "0.10.3", @@ -166,15 +167,16 @@ "yup": "0.32.11" }, "devDependencies": { - "@babel/core": "7.21.0", + "@babel/core": "7.20.12", "@babel/plugin-proposal-export-namespace-from": "7.16.0", "@babel/plugin-proposal-nullish-coalescing-operator": "7.16.7", "@babel/plugin-proposal-optional-chaining": "7.16.7", "@babel/plugin-transform-arrow-functions": "7.16.7", "@babel/plugin-transform-shorthand-properties": "7.16.7", "@babel/plugin-transform-template-literals": "7.16.7", + "@babel/preset-env": "7.20.2", "@babel/preset-typescript": "7.16.7", - "@babel/runtime": "7.21.0", + "@babel/runtime": "7.20.13", "@babel/traverse": "7.19.0", "@jest/create-cache-key-function": "26.5.0", "@react-native-community/eslint-config": "3.2.0", @@ -186,8 +188,9 @@ "@storybook/react-native": "5.3.25", "@testing-library/jest-native": "^4.0.4", "@testing-library/react-native": "^8.0.0", + "@tsconfig/react-native": "2.0.3", "@types/bitauth": "0.4.1", - "@types/jest": "29.4.0", + "@types/jest": "29.2.6", "@types/lodash.clonedeep": "4.5.6", "@types/lodash.debounce": "4.0.6", "@types/lodash.isequal": "4.5.5", @@ -197,32 +200,31 @@ "@types/lodash.throttle": "4.1.6", "@types/lodash.uniqby": "4.7.6", "@types/papaparse": "5.3.7", - "@types/react": "18.0.28", + "@types/react": "18.0.38", "@types/react-native": "0.71.3", "@types/react-native-dotenv": "0.2.0", - "@types/react-native-snap-carousel": "3.8.5", "@types/react-redux": "7.1.25", "@types/react-test-renderer": "18.0.0", "@types/redux-logger": "3.0.9", "@types/styled-components": "5.1.25", "@types/styled-components-react-native": "5.2.1", - "babel-jest": "29.2.1", + "babel-jest": "29.2.2", "babel-loader": "9.1.2", "babel-plugin-transform-remove-console": "6.9.4", "dotenv": "16.0.1", "eslint": "8.19.0", "i18next-parser": "5.4.0", - "jest": "29.2.1", + "jest": "29.2.2", "jest-cli": "^28.1.1", "jest-styled-components": "^7.0.8", "jest-svg-transformer": "^1.0.0", "jest-transform-stub": "^2.0.0", - "metro-react-native-babel-preset": "0.73.8", + "metro-react-native-babel-preset": "0.73.9", "patch-package": "6.4.7", - "prettier": "2.8.4", + "prettier": "2.4.1", "react-dom": "17.0.1", "react-native-clean-project": "3.6.7", - "react-native-codegen": "0.0.7", + "react-native-codegen": "0.71.5", "react-native-dotenv": "3.3.0", "react-native-version": "4.0.0", "react-test-renderer": "18.2.0", diff --git a/patches/react-native+0.71.4.patch b/patches/react-native+0.71.8.patch similarity index 75% rename from patches/react-native+0.71.4.patch rename to patches/react-native+0.71.8.patch index 35a8a0f1ce..137ed5e574 100644 --- a/patches/react-native+0.71.4.patch +++ b/patches/react-native+0.71.8.patch @@ -1,8 +1,8 @@ diff --git a/node_modules/react-native/index.js b/node_modules/react-native/index.js -index f556fa3..b98f1a0 100644 +index f556fa3..2986043 100644 --- a/node_modules/react-native/index.js +++ b/node_modules/react-native/index.js -@@ -411,44 +411,16 @@ module.exports = { +@@ -411,43 +411,15 @@ module.exports = { }, // Deprecated Prop Types get ColorPropType(): $FlowFixMe { @@ -13,8 +13,7 @@ index f556fa3..b98f1a0 100644 - 'continue using ColorPropType, migrate to the ' + - "'deprecated-react-native-prop-types' package.", - ); -- return require('deprecated-react-native-prop-types').ColorPropType; -+ return require("deprecated-react-native-prop-types").ColorPropType + return require('deprecated-react-native-prop-types').ColorPropType; }, get EdgeInsetsPropType(): $FlowFixMe { - console.error( @@ -24,8 +23,7 @@ index f556fa3..b98f1a0 100644 - 'continue using EdgeInsetsPropType, migrate to the ' + - "'deprecated-react-native-prop-types' package.", - ); -- return require('deprecated-react-native-prop-types').EdgeInsetsPropType; -+ return require("deprecated-react-native-prop-types").EdgeInsetsPropType + return require('deprecated-react-native-prop-types').EdgeInsetsPropType; }, get PointPropType(): $FlowFixMe { - console.error( @@ -35,8 +33,7 @@ index f556fa3..b98f1a0 100644 - 'continue using PointPropType, migrate to the ' + - "'deprecated-react-native-prop-types' package.", - ); -- return require('deprecated-react-native-prop-types').PointPropType; -+ return require("deprecated-react-native-prop-types").PointPropType + return require('deprecated-react-native-prop-types').PointPropType; }, get ViewPropTypes(): $FlowFixMe { - console.error( @@ -46,8 +43,6 @@ index f556fa3..b98f1a0 100644 - 'continue using ViewPropTypes, migrate to the ' + - "'deprecated-react-native-prop-types' package.", - ); -- return require('deprecated-react-native-prop-types').ViewPropTypes; -+ return require("deprecated-react-native-prop-types").ViewPropTypes + return require('deprecated-react-native-prop-types').ViewPropTypes; }, }; - diff --git a/patches/react-native-skeleton-placeholder+5.2.4.patch b/patches/react-native-skeleton-placeholder+5.2.4.patch new file mode 100644 index 0000000000..010ec8529f --- /dev/null +++ b/patches/react-native-skeleton-placeholder+5.2.4.patch @@ -0,0 +1,13 @@ +diff --git a/node_modules/react-native-skeleton-placeholder/lib/skeleton-placeholder.js b/node_modules/react-native-skeleton-placeholder/lib/skeleton-placeholder.js +index 353abb6..cf73342 100644 +--- a/node_modules/react-native-skeleton-placeholder/lib/skeleton-placeholder.js ++++ b/node_modules/react-native-skeleton-placeholder/lib/skeleton-placeholder.js +@@ -36,7 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); + const masked_view_1 = __importDefault(require("@react-native-masked-view/masked-view")); + const React = __importStar(require("react")); + const react_native_1 = require("react-native"); +-const react_native_linear_gradient_1 = __importDefault(require("react-native-linear-gradient")); ++const react_native_linear_gradient_1 = __importDefault(require("rnx-gradient/src/LinearGradientViewNativeComponent")); + const WINDOW_WIDTH = react_native_1.Dimensions.get('window').width; + const logEnabled = false; + const SkeletonPlaceholder = ({ children, enabled = true, backgroundColor = '#E1E9EE', highlightColor = '#F2F8FC', speed = 800, direction = 'right', borderRadius, shimmerWidth, }) => { diff --git a/src/Root.tsx b/src/Root.tsx index bc36691f40..af5ce9ca11 100644 --- a/src/Root.tsx +++ b/src/Root.tsx @@ -79,7 +79,7 @@ import IntroStack, {IntroStackParamList} from './navigation/intro/IntroStack'; import WalletConnectStack, { WalletConnectStackParamList, } from './navigation/wallet-connect/WalletConnectStack'; -import {ShopStackParamList} from './navigation/tabs/shop/ShopStack'; +import ShopStack, {ShopStackParamList} from './navigation/shop/ShopStack'; import GiftCardStack, { GiftCardStackParamList, } from './navigation/tabs/shop/gift-card/GiftCardStack'; @@ -97,6 +97,7 @@ import CoinbaseStack, { import {APP_ANALYTICS_ENABLED} from './constants/config'; import {BlurContainer} from './components/blur/Blur'; import DebugScreen, {DebugScreenParamList} from './navigation/Debug'; +import CardStack, {CardStackParamList} from './navigation/card/CardStack'; import CardActivationStack, { CardActivationStackParamList, } from './navigation/card-activation/CardActivationStack'; @@ -132,6 +133,7 @@ export type RootStackParamList = { Tabs: NavigatorScreenParams; BitpayId: NavigatorScreenParams; Wallet: NavigatorScreenParams; + Card: NavigatorScreenParams; CardActivation: NavigatorScreenParams; Scan: NavigatorScreenParams; Shop: NavigatorScreenParams; @@ -159,8 +161,10 @@ export enum RootStacks { INTRO = 'Intro', ONBOARDING = 'Onboarding', TABS = 'Tabs', + SHOP = 'Shop', BITPAY_ID = 'BitpayId', WALLET = 'Wallet', + CARD = 'Card', CARD_ACTIVATION = 'CardActivation', SCAN = 'Scan', CONTACTS = 'Contacts', @@ -188,6 +192,7 @@ export type NavScreenParams = NavigatorScreenParams< OnboardingStackParamList & BitpayIdStackParamList & WalletStackParamList & + CardStackParamList & CardActivationStackParamList & GiftCardStackParamList & MerchantStackParamList & @@ -200,6 +205,7 @@ export type NavScreenParams = NavigatorScreenParams< BuyCryptoStackParamList & SwapCryptoStackParamList & ScanStackParamList & + ShopStackParamList & WalletConnectStackParamList & NotificationsSettingsStackParamsList & ZenLedgerStackParamsList @@ -629,6 +635,7 @@ export default () => { gestureEnabled: false, }} /> + { name={RootStacks.WALLET} component={WalletStack} /> + > = props => { cancel={cancel} disabled={disabled} action={action}> - - - {children} - - + {/* */} + + {children} + + {/* */} = props => { })), ]; + const overlayStyleStatic = { + ...StyleSheet.absoluteFillObject, + ...{ + opacity: isVisible ? 1 : 0, + borderWidth: 2, + borderStyle: 'solid', + borderRadius: buttonType === 'pill' ? PILL_RADIUS : BUTTON_RADIUS, + borderColor: backgroundColor || 'transparent', + backgroundColor: (isPrimary && backgroundColor) || 'transparent', + }, + } as Record; + const iconStyle = [ useAnimatedStyle(() => ({ alignItems: 'center', @@ -79,11 +91,25 @@ const ButtonOverlay: React.FC = props => { })), ]; + const iconStyleStatic = { + opacity: isVisible ? 1 : 0, + alignItems: 'center', + display: 'flex', + flexGrow: 1, + justifyContent: 'center', + } as Record; + return ( - - {children} - + + {children} + ); + + // return ( + // + // {children} + // + // ); }; export default ButtonOverlay; diff --git a/src/components/feature-card/FeatureCard.tsx b/src/components/feature-card/FeatureCard.tsx index ba900e3632..5c09d72baa 100644 --- a/src/components/feature-card/FeatureCard.tsx +++ b/src/components/feature-card/FeatureCard.tsx @@ -1,6 +1,6 @@ import React from 'react'; import {Image, ImageSourcePropType} from 'react-native'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; import {useSafeAreaInsets} from 'react-native-safe-area-context'; import styled from 'styled-components/native'; import Button from '../button/Button'; diff --git a/src/components/list/TransactionRow.tsx b/src/components/list/TransactionRow.tsx index 572d575b44..e53450617b 100644 --- a/src/components/list/TransactionRow.tsx +++ b/src/components/list/TransactionRow.tsx @@ -5,13 +5,13 @@ import {ScreenGutter} from '../styled/Containers'; import RemoteImage from '../../navigation/tabs/shop/components/RemoteImage'; import {TRANSACTION_ICON_SIZE} from '../../constants/TransactionIcons'; import {Action} from '../../styles/colors'; +import {View} from 'react-native'; export const TRANSACTION_ROW_HEIGHT = 75; const TransactionContainer = styled.TouchableOpacity` flex-direction: row; padding: ${ScreenGutter}; - justify-content: center; - align-items: center; + justify-content: space-between; height: ${TRANSACTION_ROW_HEIGHT}px; `; @@ -33,7 +33,6 @@ const Description = styled(BaseText)<{ : theme.colors.text}; font-weight: ${({RBFInfo}) => (RBFInfo?.isRBF ? 500 : 400)}; overflow: hidden; - margin-right: 175px; font-size: 16px; `; @@ -84,32 +83,40 @@ const TransactionRow = ({ }: Props) => { return ( - {iconURI ? ( - - icon as JSX.Element} - height={TRANSACTION_ICON_SIZE} - uri={iconURI} - /> - - ) : ( - icon && {icon} - )} - {!!description && ( - - {description} - {details && ( - - {'\n'} - {details} - - )} - - )} + + {iconURI ? ( + + icon as JSX.Element} + height={TRANSACTION_ICON_SIZE} + uri={iconURI} + /> + + ) : ( + icon && {icon} + )} + {!!description && ( + + {description} + {details && ( + + {'\n'} + {details} + + )} + + )} + {value && {value}} {time && {time}} diff --git a/src/components/list/WalletTransactionSkeletonRow.tsx b/src/components/list/WalletTransactionSkeletonRow.tsx index 3f60ba1282..2dad6660d3 100644 --- a/src/components/list/WalletTransactionSkeletonRow.tsx +++ b/src/components/list/WalletTransactionSkeletonRow.tsx @@ -1,13 +1,88 @@ import React from 'react'; -import SkeletonPlaceholder from 'react-native-skeleton-placeholder'; import {View} from 'react-native'; +import SkeletonPlaceholder from 'react-native-skeleton-placeholder'; +import styled, {useTheme} from 'styled-components/native'; import {TRANSACTION_ICON_SIZE} from '../../constants/TransactionIcons'; -import {useTheme} from 'styled-components/native'; import {LightBlack} from '../../styles/colors'; +const USE_NEW_ARCH_WORKAROUND = true; + +const WorkaroundSkeletonItem = styled.View` + background: ${({theme}) => (theme.dark ? LightBlack : '#E1E9EE')}; +`; + +const WorkaroundHeader = styled(WorkaroundSkeletonItem)` + border-radius: 0; + height: 55px; + width: 100%; +`; + +const WorkaroundRow = styled.View` + align-items: center; + display: flex; + flex-direction: row; + justify-content: space-between; + padding: 15px; +`; + +const WorkaroundIcon = styled(WorkaroundSkeletonItem)` + border-radius: 50px; + height: ${TRANSACTION_ICON_SIZE}px; + margin-right: 8px; + width: ${TRANSACTION_ICON_SIZE}px; +`; + +const WorkaroundHeading = styled(WorkaroundSkeletonItem)` + height: 18px; + width: 150px; +`; + +const WorkaroundDetails = styled.View` + align-items: flex-end; + display: flex; + flex-direction: column; + flex-grow: 1; + margin-left: auto; +`; + +const WorkaroundDetailsTop = styled(WorkaroundSkeletonItem)` + height: 14px; + margin-bottom: 5px; + width: 80px; +`; + +const WorkaroundDetailsBottom = styled(WorkaroundSkeletonItem)` + height: 12px; + width: 70px; +`; + +const NonAnimatedNewArchWorkaround = () => { + return ( + <> + + + + + + + + + + + + + + + ); +}; + const WalletTransactionSkeletonRow = () => { const theme = useTheme(); + if (USE_NEW_ARCH_WORKAROUND) { + return ; + } + return ( ; + isRotate?: boolean; +}> = props => { + const {animValue, index, length, isRotate} = props; + const width = 10; + + const animStyle = useAnimatedStyle(() => { + let inputRange = [index - 1, index, index + 1]; + let outputRange = [-width, 0, width]; + + if (index === 0 && animValue?.value > length - 1) { + inputRange = [length - 1, length, length + 1]; + outputRange = [-width, 0, width]; + } + + return { + transform: [ + { + translateX: interpolate( + animValue?.value, + inputRange, + outputRange, + Extrapolate.CLAMP, + ), + }, + ], + }; + }, [animValue, index, length]); + return ( + + + + ); +}; + +export default PaginationItem; diff --git a/src/navigation/auth/screens/TwoFactor.Auth.tsx b/src/navigation/auth/screens/TwoFactor.Auth.tsx index 731573dade..98f8939955 100644 --- a/src/navigation/auth/screens/TwoFactor.Auth.tsx +++ b/src/navigation/auth/screens/TwoFactor.Auth.tsx @@ -38,126 +38,125 @@ const schema = yup.object().shape({ code: yup.string().required(), }); -const TwoFactorAuthentication: React.VFC< - TwoFactorAuthenticationScreenProps -> = props => { - const {t} = useTranslation(); - const {navigation, route} = props; - const {onLoginSuccess} = route.params || {}; - const dispatch = useDispatch(); - const twoFactorAuthStatus = useSelector( - ({BITPAY_ID}) => BITPAY_ID.twoFactorAuthStatus, - ); - const twoFactorAuthError = useSelector( - ({BITPAY_ID}) => BITPAY_ID.twoFactorAuthError || '', - ); - const { - control, - formState: {errors, isValid}, - handleSubmit, - getValues, - resetField, - } = useForm({ - resolver: yupResolver(schema), - mode: 'onChange', - }); - - useEffect(() => { - return () => { - dispatch(BitPayIdActions.updateTwoFactorAuthStatus(null)); - }; - }, [dispatch]); - - useEffect(() => { - switch (twoFactorAuthStatus) { - case 'success': - const {code} = getValues(); - resetField('code'); - navigation.navigate('TwoFactorPairing', { - prevCode: code, - onLoginSuccess, - }); - - return; - - case 'failed': - dispatch( - AppActions.showBottomNotificationModal({ - type: 'error', - title: t('Login failed'), - message: twoFactorAuthError || t('An unexpected error occurred.'), - enableBackdropDismiss: false, - actions: [ - { - text: t('OK'), - action: () => { - dispatch(BitPayIdActions.updateTwoFactorAuthStatus(null)); +const TwoFactorAuthentication: React.VFC = + props => { + const {t} = useTranslation(); + const {navigation, route} = props; + const {onLoginSuccess} = route.params || {}; + const dispatch = useDispatch(); + const twoFactorAuthStatus = useSelector( + ({BITPAY_ID}) => BITPAY_ID.twoFactorAuthStatus, + ); + const twoFactorAuthError = useSelector( + ({BITPAY_ID}) => BITPAY_ID.twoFactorAuthError || '', + ); + const { + control, + formState: {errors, isValid}, + handleSubmit, + getValues, + resetField, + } = useForm({ + resolver: yupResolver(schema), + mode: 'onChange', + }); + + useEffect(() => { + return () => { + dispatch(BitPayIdActions.updateTwoFactorAuthStatus(null)); + }; + }, [dispatch]); + + useEffect(() => { + switch (twoFactorAuthStatus) { + case 'success': + const {code} = getValues(); + resetField('code'); + navigation.navigate('TwoFactorPairing', { + prevCode: code, + onLoginSuccess, + }); + + return; + + case 'failed': + dispatch( + AppActions.showBottomNotificationModal({ + type: 'error', + title: t('Login failed'), + message: twoFactorAuthError || t('An unexpected error occurred.'), + enableBackdropDismiss: false, + actions: [ + { + text: t('OK'), + action: () => { + dispatch(BitPayIdActions.updateTwoFactorAuthStatus(null)); + }, }, - }, - ], - }), - ); - return; - } - }, [ - dispatch, - resetField, - getValues, - navigation, - twoFactorAuthStatus, - twoFactorAuthError, - t, - onLoginSuccess, - ]); - - const onSubmit = handleSubmit( - ({code}) => { - Keyboard.dismiss(); - - if (!code) { - return; + ], + }), + ); + return; } - - dispatch(BitPayIdEffects.startTwoFactorAuth(code)); - }, - () => { - Keyboard.dismiss(); - }, - ); - - return ( - - - {t('Enter the code generated by your authenticator app.')} - - - - ( - - )} - name="code" - defaultValue="" - /> - - - - - - - ); -}; + }, [ + dispatch, + resetField, + getValues, + navigation, + twoFactorAuthStatus, + twoFactorAuthError, + t, + onLoginSuccess, + ]); + + const onSubmit = handleSubmit( + ({code}) => { + Keyboard.dismiss(); + + if (!code) { + return; + } + + dispatch(BitPayIdEffects.startTwoFactorAuth(code)); + }, + () => { + Keyboard.dismiss(); + }, + ); + + return ( + + + {t('Enter the code generated by your authenticator app.')} + + + + ( + + )} + name="code" + defaultValue="" + /> + + + + + + + ); + }; export default TwoFactorAuthentication; diff --git a/src/navigation/bitpay-id/BitpayIdStack.tsx b/src/navigation/bitpay-id/BitpayIdStack.tsx index 1167ed4b34..137e461225 100644 --- a/src/navigation/bitpay-id/BitpayIdStack.tsx +++ b/src/navigation/bitpay-id/BitpayIdStack.tsx @@ -30,6 +30,8 @@ import EnableTwoFactor, { import TwoFactorEnabled, { TwoFactorEnabledScreenParamList, } from './screens/TwoFactorEnabled'; +import {RootStacks} from '../../Root'; +import {TabsScreens} from '../tabs/TabsStack'; export type BitpayIdStackParamList = { BitPayIdPairingScreen: BitPayIdPairingScreenParamList; @@ -87,8 +89,8 @@ const BitpayIdStack = () => { haptic('impactLight'); if (user) { - navigation.navigate('Tabs', { - screen: 'Settings', + navigation.navigate(RootStacks.TABS, { + screen: TabsScreens.SETTINGS, }); dispatch(BitPayIdEffects.startDisconnectBitPayId()); diff --git a/src/navigation/bitpay-id/screens/BitPayIdPairingScreen.tsx b/src/navigation/bitpay-id/screens/BitPayIdPairingScreen.tsx index 50693c247b..2a0005ce42 100644 --- a/src/navigation/bitpay-id/screens/BitPayIdPairingScreen.tsx +++ b/src/navigation/bitpay-id/screens/BitPayIdPairingScreen.tsx @@ -29,7 +29,7 @@ const BitPayIdPairingScreen: React.FC< if (redirect) { handled = dispatch(AppEffects.incomingLink(redirect)); } - + if (!handled) { navigation.replace('Profile'); } diff --git a/src/navigation/card-activation/screens/ActivateScreen.tsx b/src/navigation/card-activation/screens/ActivateScreen.tsx index 0e0adc666b..e781cee616 100644 --- a/src/navigation/card-activation/screens/ActivateScreen.tsx +++ b/src/navigation/card-activation/screens/ActivateScreen.tsx @@ -1,6 +1,6 @@ import {yupResolver} from '@hookform/resolvers/yup'; import {StackScreenProps} from '@react-navigation/stack'; -import React, {useEffect, useLayoutEffect, useRef, useState} from 'react'; +import React, {useEffect, useRef, useState} from 'react'; import {Controller, useForm} from 'react-hook-form'; import {useTranslation} from 'react-i18next'; import {Keyboard, TextInput} from 'react-native'; @@ -192,7 +192,7 @@ const ActivateScreen: React.VFC< }, ); - useLayoutEffect(() => { + useEffect(() => { initRef.current(); }, []); diff --git a/src/navigation/card-activation/screens/CompleteScreen.tsx b/src/navigation/card-activation/screens/CompleteScreen.tsx index 5137e44e8d..87ffad5c6d 100644 --- a/src/navigation/card-activation/screens/CompleteScreen.tsx +++ b/src/navigation/card-activation/screens/CompleteScreen.tsx @@ -6,7 +6,8 @@ import styled from 'styled-components/native'; import Button from '../../../components/button/Button'; import {ScreenGutter} from '../../../components/styled/Containers'; import {H4, Paragraph} from '../../../components/styled/Text'; -import {navigationRef} from '../../../Root'; +import {RootStacks, navigationRef} from '../../../Root'; +import {TabsScreens} from '../../tabs/TabsStack'; import OnTheMoonSvg from '../assets/on-the-moon.svg'; import {CardActivationStackParamList} from '../CardActivationStack'; @@ -41,11 +42,8 @@ const CompleteScreen: React.FC< > = () => { const {t} = useTranslation(); const onViewCardPress = () => { - navigationRef.navigate('Tabs', { - screen: 'Card', - params: { - screen: 'Home', - }, + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.CARD, }); }; diff --git a/src/navigation/card/CardStack.tsx b/src/navigation/card/CardStack.tsx index 2af359478d..ce92e0e5d6 100644 --- a/src/navigation/card/CardStack.tsx +++ b/src/navigation/card/CardStack.tsx @@ -5,7 +5,6 @@ import { baseNavigatorOptions, baseScreenOptions, } from '../../constants/NavigationOptions'; -import CardHome, {CardHomeScreenParamList} from './screens/CardHome'; import CardPairingScreen, { CardPairingScreenParamList, } from './screens/CardPairingScreen'; @@ -22,7 +21,6 @@ import ResetPinScreen, { } from './screens/settings/ResetPinScreen'; export type CardStackParamList = { - CardHome: CardHomeScreenParamList; CardPairingScreen: CardPairingScreenParamList; Settings: CardSettingsParamList; CustomizeVirtualCard: CustomizeVirtualCardParamList; @@ -31,7 +29,6 @@ export type CardStackParamList = { }; export enum CardScreens { - HOME = 'CardHome', PAIRING = 'CardPairingScreen', SETTINGS = 'Settings', CUSTOMIZE_VIRTUAL_CARD = 'CustomizeVirtualCard', @@ -46,28 +43,11 @@ const CardStack = () => { return ( - null, - headerTitle: () => {t('Card')}, - }} - sharedElements={route => { - return [ - { - id: 'card.dashboard.active-card.' + route.params.id, - animation: 'fade', - }, - ]; - }} - /> -> = props => { - const fillColor = props.disabled ? DisabledDark : White; +const PlusIcon: React.FC> = + props => { + const fillColor = props.disabled ? DisabledDark : White; - return ( - - - - ); -}; + return ( + + + + ); + }; export const AddFundsButton: React.FC< Pick diff --git a/src/navigation/card/components/CardDashboard.tsx b/src/navigation/card/components/CardDashboard.tsx index f0c5040eab..c6b4cd06c6 100644 --- a/src/navigation/card/components/CardDashboard.tsx +++ b/src/navigation/card/components/CardDashboard.tsx @@ -4,8 +4,8 @@ import {useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; import {FlatList} from 'react-native'; import {TouchableOpacity} from 'react-native-gesture-handler'; -import Carousel from 'react-native-snap-carousel'; import {SharedElement} from 'react-navigation-shared-element'; +import Carousel, {ICarouselInstance} from 'react-native-reanimated-carousel'; import styled from 'styled-components/native'; import GhostImg from '../../../../assets/img/ghost-cheeky.svg'; import RefreshIcon from '../../../components/icons/refresh/RefreshIcon'; @@ -14,7 +14,7 @@ import {Br, ScreenGutter, WIDTH} from '../../../components/styled/Containers'; import {Smallest} from '../../../components/styled/Text'; import {CardProvider} from '../../../constants/card'; import {CARD_WIDTH} from '../../../constants/config.card'; -import {navigationRef} from '../../../Root'; +import {RootStacks, navigationRef} from '../../../Root'; import {AppEffects} from '../../../store/app'; import {Analytics} from '../../../store/analytics/analytics.effects'; import {showBottomNotificationModal} from '../../../store/app/app.actions'; @@ -31,6 +31,7 @@ import { useAppSelector, useBrazeRefreshOnFocus, } from '../../../utils/hooks'; +import {CardScreens} from '../CardStack'; import {CardHomeScreenProps} from '../screens/CardHome'; import { EmptyGhostContainer, @@ -68,7 +69,7 @@ const CardDashboard: React.FC = props => { const dispatch = useAppDispatch(); const {t} = useTranslation(); const {id, navigation} = props; - const carouselRef = useRef>(null); + const carouselRef = useRef(null); const cardGroups = useAppSelector(selectCardGroups); const fetchOverviewStatus = useAppSelector( ({CARD}) => CARD.fetchOverviewStatus[id], @@ -100,8 +101,11 @@ const CardDashboard: React.FC = props => { const goToCardSettings = () => { dispatch(Analytics.track('Clicked Card Settings', {})); - navigation.navigate('Settings', { - id: activeCard.id, + navigationRef.navigate(RootStacks.CARD, { + screen: CardScreens.SETTINGS, + params: { + id: activeCard.id, + }, }); }; const goToCardSettingsRef = useRef(goToCardSettings); @@ -185,18 +189,14 @@ const CardDashboard: React.FC = props => { const renderSlide = useCallback( ({item}: {item: Card[]}) => activeCard.id === item[0].id ? ( - - goToCardSettingsRef.current()}> - - - + goToCardSettingsRef.current()}> + + ) : ( = props => { onEndReached={() => fetchNextPage()} ListHeaderComponent={ <> - - ref={carouselRef} + { navigation.setParams({ id: cardGroups[idx][0].id, }); }} - itemWidth={CARD_WIDTH + 20} - sliderWidth={WIDTH} - inactiveSlideScale={1} - inactiveSlideOpacity={1} - containerCustomStyle={{ - flexGrow: 0, - marginTop: 32, - }} + renderItem={renderSlide} /> {additionalContent.length ? ( diff --git a/src/navigation/card/components/CardSettingsList.tsx b/src/navigation/card/components/CardSettingsList.tsx index feb6bece5e..53a5b6245b 100644 --- a/src/navigation/card/components/CardSettingsList.tsx +++ b/src/navigation/card/components/CardSettingsList.tsx @@ -30,7 +30,7 @@ import {ToggleSpinnerState} from './ToggleSpinner'; interface SettingsListProps { card: Card; orderPhysical?: boolean; - navigation: StackNavigationProp; + navigation: StackNavigationProp; } const LINKS: { diff --git a/src/navigation/card/screens/CardHome.tsx b/src/navigation/card/screens/CardHome.tsx index 79a7927dab..ed738a30fc 100644 --- a/src/navigation/card/screens/CardHome.tsx +++ b/src/navigation/card/screens/CardHome.tsx @@ -1,25 +1,28 @@ import {StackScreenProps} from '@react-navigation/stack'; import React from 'react'; +import {useTranslation} from 'react-i18next'; import {SafeAreaView} from 'react-native'; import {selectCardGroups} from '../../../store/card/card.selectors'; import {useAppSelector} from '../../../utils/hooks'; -import {CardScreens, CardStackParamList} from '../CardStack'; import CardDashboard from '../components/CardDashboard'; import CardIntro from '../components/CardIntro'; +import {TabsScreens, TabsStackParamList} from '../../tabs/TabsStack'; export type CardHomeScreenParamList = | { id: string | undefined | null; } | undefined; + export type CardHomeScreenProps = StackScreenProps< - CardStackParamList, - CardScreens.HOME + TabsStackParamList, + TabsScreens.CARD >; const CardHome: React.FC = ({navigation, route}) => { const cardGroups = useAppSelector(selectCardGroups); const hasCards = cardGroups.length > 0; + const {t} = useTranslation(); if (hasCards) { const id = route.params?.id || cardGroups[0][0].id; diff --git a/src/navigation/card/screens/CardPairingScreen.tsx b/src/navigation/card/screens/CardPairingScreen.tsx index b63f0d4912..d41426f46e 100644 --- a/src/navigation/card/screens/CardPairingScreen.tsx +++ b/src/navigation/card/screens/CardPairingScreen.tsx @@ -1,12 +1,14 @@ +import {StackActions} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; import React, {useCallback} from 'react'; +import {RootStacks, navigationRef} from '../../../Root'; import {CardActions} from '../../../store/card'; import {VirtualDesignCurrency} from '../../../store/card/card.types'; +import {incomingData} from '../../../store/scan/scan.effects'; import {useAppDispatch} from '../../../utils/hooks'; import BasePairing from '../../bitpay-id/components/BasePairing'; +import {TabsScreens} from '../../tabs/TabsStack'; import {CardScreens, CardStackParamList} from '../CardStack'; -import {incomingData} from '../../../store/scan/scan.effects'; -import {StackActions, useNavigation} from '@react-navigation/native'; export type CardPairingScreenParamList = | { @@ -23,20 +25,10 @@ const CardPairingScreen: React.FC< > = props => { const {route} = props; const {secret, code, paymentUrl, dashboardRedirect} = route.params || {}; - const navigation = useNavigation(); const dispatch = useAppDispatch(); const goToHomeTab = () => { - const navState = navigation.getState(); - - // @ts-ignore - if (navState.routeNames.some(name => name === 'Home')) { - navigation.navigate('Tabs', { - screen: 'Home', - }); - } else { - navigation.dispatch(StackActions.replace('Tabs', {screen: 'Home'})); - } + navigationRef.dispatch(StackActions.replace('Tabs', {screen: 'Home'})); }; const onSuccess = useCallback(() => { @@ -56,7 +48,7 @@ const CardPairingScreen: React.FC< goToHomeTab(); if (paymentUrl) { - navigation.dispatch(StackActions.replace('Tabs', {screen: 'Home'})); + navigationRef.dispatch(StackActions.replace('Tabs', {screen: 'Home'})); // Reconstructing the url since paymentUrl from deeplink is not in the right format if (paymentUrl.includes('bitpay.com')) { let url = 'https://'; @@ -73,15 +65,17 @@ const CardPairingScreen: React.FC< const onComplete = useCallback(() => { if (!paymentUrl) { - const navState = navigation.getState(); + const navState = navigationRef.getState(); + // @ts-ignore - if (navState.routeNames.some(name => name === 'CardHome')) { - navigation.navigate('Tabs', { - screen: 'Card', - params: {screen: 'CardHome'}, + if (navState.routeNames.some(name => name === RootStacks.TABS)) { + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.CARD, }); } else { - navigation.dispatch(StackActions.replace('Card', {screen: 'CardHome'})); + navigationRef.dispatch( + StackActions.replace(RootStacks.TABS, {screen: TabsScreens.CARD}), + ); } } }, []); diff --git a/src/navigation/card/screens/CardSettings.tsx b/src/navigation/card/screens/CardSettings.tsx index e3407954e9..a3721eb6dd 100644 --- a/src/navigation/card/screens/CardSettings.tsx +++ b/src/navigation/card/screens/CardSettings.tsx @@ -10,24 +10,30 @@ import Animated, { SlideInLeft, SlideInRight, } from 'react-native-reanimated'; -import Carousel from 'react-native-snap-carousel'; import {SharedElement} from 'react-navigation-shared-element'; +import Carousel, {ICarouselInstance} from 'react-native-reanimated-carousel'; import styled from 'styled-components/native'; import Button from '../../../components/button/Button'; import {ScreenGutter, WIDTH} from '../../../components/styled/Containers'; import {CARD_WIDTH} from '../../../constants/config.card'; +import {RootStacks, navigationRef} from '../../../Root'; import {Card} from '../../../store/card/card.models'; import {selectCardGroups} from '../../../store/card/card.selectors'; import {useAppSelector} from '../../../utils/hooks'; -import {CardStackParamList} from '../CardStack'; +import {TabsScreens} from '../../tabs/TabsStack'; +import {CardScreens, CardStackParamList} from '../CardStack'; import SettingsList from '../components/CardSettingsList'; import SettingsSlide from '../components/CardSettingsSlide'; +import {throttle} from 'lodash'; export type CardSettingsParamList = { id: string; }; -type CardSettingsProps = StackScreenProps; +type CardSettingsProps = StackScreenProps< + CardStackParamList, + CardScreens.SETTINGS +>; const CardSettingsContainer = styled.View` padding: 0 ${ScreenGutter} ${ScreenGutter}; @@ -55,7 +61,8 @@ const CardSettings: React.FC = ({navigation, route}) => { }, []); const {id} = route.params; const {t} = useTranslation(); - const carouselRef = useRef>(null); + const carouselRef = useRef(null); + const [activeSlideIndex, setActiveSlideIndex] = useState(0); const currentGroup = useAppSelector(selectCardGroups).find(g => g.some(c => c.id === id), ); @@ -86,31 +93,47 @@ const CardSettings: React.FC = ({navigation, route}) => { ); const [activeCard, setActiveCard] = useState(cardsToShow[initialIdx]); - const onCardChange = (idx: number) => { - const nextCard = cardsToShow[idx]; + const throttleOnActiveSlideChange = useMemo( + () => + throttle((index: number) => { + const nextCard = cardsToShow[Math.round(index)]; - if (nextCard.cardType) { - setActiveCard(nextCard); + if (nextCard.cardType) { + setActiveCard(nextCard); + } + setActiveSlideIndex(Math.round(index)); + }, 300), + [], + ); + + const onCardChange = (_: number, index: number) => { + if (Math.round(index) !== activeSlideIndex) { + throttleOnActiveSlideChange(index); } }; + const onCardChangeRef = useRef(onCardChange); + onCardChangeRef.current = onCardChange; const onVirtualPress = useCallback(() => { if (virtualCard) { setActiveCard(virtualCard); - carouselRef.current?.snapToItem(0); + carouselRef.current?.scrollTo({index: 0}); } }, [virtualCard]); const onPhysicalPress = useCallback(() => { if (physicalCard) { setActiveCard(physicalCard); - carouselRef.current?.snapToItem(1); + carouselRef.current?.scrollTo({index: 1}); } }, [physicalCard]); const goToCardHome = () => { - navigation.navigate('CardHome', { - id: id, + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.CARD, + params: { + id, + }, }); }; const goToCardHomeRef = useRef(goToCardHome); @@ -118,15 +141,12 @@ const CardSettings: React.FC = ({navigation, route}) => { const renderSettingsSlide = useCallback( ({item}: {item: Card}) => ( - - - goToCardHomeRef.current()}> - - - - + goToCardHomeRef.current()} + style={{alignItems: 'center'}}> + + ), [], ); @@ -158,18 +178,32 @@ const CardSettings: React.FC = ({navigation, route}) => { ) : null} - - ref={carouselRef} - data={cardsToShow} + - {cardsToShow.map(c => { const isActive = c.id === activeCard.id; @@ -197,16 +231,18 @@ const CardSettings: React.FC = ({navigation, route}) => { : undefined; return isActive ? ( - + {/* + exiting={transitionLeave}> */} - + {/* */} + ) : null; })} diff --git a/src/navigation/card/screens/settings/UpdateCardName.tsx b/src/navigation/card/screens/settings/UpdateCardName.tsx index 2537a6fc60..852a2e40ab 100644 --- a/src/navigation/card/screens/settings/UpdateCardName.tsx +++ b/src/navigation/card/screens/settings/UpdateCardName.tsx @@ -42,7 +42,7 @@ const createErrorConfig = ( ], }); -const UpdateCardNameScreen: React.VFC< +const UpdateCardNameScreen: React.FC< StackScreenProps > = ({navigation, route}) => { const {card} = route.params; @@ -70,7 +70,7 @@ const UpdateCardNameScreen: React.VFC< if (navigation.canGoBack()) { navigation.goBack(); } else { - navigation.navigate('Settings', {id: card.id}); + navigation.navigate(CardScreens.SETTINGS, {id: card.id}); } setButtonState(undefined); }, 1500); diff --git a/src/navigation/coinbase/components/CoinbaseDashboard.tsx b/src/navigation/coinbase/components/CoinbaseDashboard.tsx index 07d70ca42c..9c5c606ec8 100644 --- a/src/navigation/coinbase/components/CoinbaseDashboard.tsx +++ b/src/navigation/coinbase/components/CoinbaseDashboard.tsx @@ -1,4 +1,4 @@ -import React, {useCallback, useEffect, useLayoutEffect, useState} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import {useAppDispatch, useAppSelector} from '../../../utils/hooks'; import {FlatList, RefreshControl, View} from 'react-native'; import styled from 'styled-components/native'; @@ -101,7 +101,7 @@ const CoinbaseDashboard = () => { const [showKeyDropdown, setShowKeyDropdown] = useState(false); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( { dispatch(AppEffects.openUrlWithInAppBrowser(url)); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: '', }); diff --git a/src/navigation/coinbase/screens/CoinbaseAccount.tsx b/src/navigation/coinbase/screens/CoinbaseAccount.tsx index 00feb503ce..899ab2bcf5 100644 --- a/src/navigation/coinbase/screens/CoinbaseAccount.tsx +++ b/src/navigation/coinbase/screens/CoinbaseAccount.tsx @@ -1,12 +1,6 @@ import {useNavigation, useTheme} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; -import React, { - useEffect, - useLayoutEffect, - useState, - useCallback, - useMemo, -} from 'react'; +import React, {useEffect, useState, useCallback, useMemo} from 'react'; import {useTranslation} from 'react-i18next'; import {TouchableOpacity} from 'react-native-gesture-handler'; import { @@ -231,7 +225,7 @@ const CoinbaseAccount = ({ const [isLoading, setIsLoading] = useState(txsLoading); const [errorLoadingTxs, setErrorLoadingTxs] = useState(); const [initialLoad, setInitialLoad] = useState(true); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: account?.name, }); diff --git a/src/navigation/onboarding/components/OnboardingFinishModal.tsx b/src/navigation/onboarding/components/OnboardingFinishModal.tsx index a3580a0571..85d855bf9b 100644 --- a/src/navigation/onboarding/components/OnboardingFinishModal.tsx +++ b/src/navigation/onboarding/components/OnboardingFinishModal.tsx @@ -14,7 +14,7 @@ import {RootState} from '../../../store'; import {useDispatch, useSelector} from 'react-redux'; import {AppActions} from '../../../store/app'; import {White} from '../../../styles/colors'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; import haptic from '../../../components/haptic-feedback/haptic'; import {useTranslation} from 'react-i18next'; diff --git a/src/navigation/onboarding/screens/CreateKey.tsx b/src/navigation/onboarding/screens/CreateKey.tsx index 6b72e7f720..7f3c033673 100644 --- a/src/navigation/onboarding/screens/CreateKey.tsx +++ b/src/navigation/onboarding/screens/CreateKey.tsx @@ -1,5 +1,5 @@ import {StackScreenProps} from '@react-navigation/stack'; -import React, {useLayoutEffect, useRef} from 'react'; +import React, {useEffect, useRef} from 'react'; import {ScrollView} from 'react-native'; import {useAndroidBackHandler} from 'react-navigation-backhandler'; import styled from 'styled-components/native'; @@ -56,7 +56,7 @@ const CreateOrImportKey: React.VFC< }); }); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ gestureEnabled: false, headerLeft: () => null, diff --git a/src/navigation/onboarding/screens/Notifications.tsx b/src/navigation/onboarding/screens/Notifications.tsx index 44d656a6bb..4df2796520 100644 --- a/src/navigation/onboarding/screens/Notifications.tsx +++ b/src/navigation/onboarding/screens/Notifications.tsx @@ -1,5 +1,5 @@ import {StackScreenProps} from '@react-navigation/stack'; -import React, {useLayoutEffect, useRef} from 'react'; +import React, {useEffect, useRef} from 'react'; import {Platform, ScrollView} from 'react-native'; import {requestNotifications, RESULTS} from 'react-native-permissions'; import {useAndroidBackHandler} from 'react-navigation-backhandler'; @@ -65,7 +65,7 @@ const NotificationsScreen: React.VFC< await askForTrackingThenNavigate(() => navigation.navigate('Pin')); }); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ gestureEnabled: false, headerLeft: () => null, diff --git a/src/navigation/onboarding/screens/OnboardingStart.tsx b/src/navigation/onboarding/screens/OnboardingStart.tsx index c2ef6ad2fe..962ed8ed30 100644 --- a/src/navigation/onboarding/screens/OnboardingStart.tsx +++ b/src/navigation/onboarding/screens/OnboardingStart.tsx @@ -1,9 +1,9 @@ import {useNavigation} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; -import React, {useLayoutEffect, useRef, useState} from 'react'; +import React, {useEffect, useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; import {ScrollView, View} from 'react-native'; -import Carousel, {Pagination} from 'react-native-snap-carousel'; +import Carousel, {ICarouselInstance} from 'react-native-reanimated-carousel'; import {useAndroidBackHandler} from 'react-navigation-backhandler'; import styled from 'styled-components/native'; import Button from '../../../components/button/Button'; @@ -28,6 +28,8 @@ import {OnboardingImage} from '../components/Containers'; import OnboardingSlide from '../components/OnboardingSlide'; import ScrollHint, {ScrollHintContainer} from '../components/ScrollHint'; import {OnboardingStackParamList} from '../OnboardingStack'; +import PaginationDots from '../../../components/pagination-dots/PaginationDots'; +import {useSharedValue} from 'react-native-reanimated'; type OnboardingStartScreenProps = StackScreenProps< OnboardingStackParamList, @@ -158,7 +160,7 @@ const OnboardingStart: React.VFC = () => { const onLogoutPressRef = useRef(onLogoutPress); onLogoutPressRef.current = onLogoutPress; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerLeft: () => null, headerRight: () => ( @@ -183,9 +185,10 @@ const OnboardingStart: React.VFC = () => { }); }, [navigation, isPaired, t]); - const carouselRef = useRef(null); + const carouselRef = useRef(null); const [activeSlideIndex, setActiveSlideIndex] = useState(0); const [scrollHintHeight, setScrollHintHeight] = useState(0); + const progressValue = useSharedValue(0); const onboardingSlides = [ // { @@ -225,20 +228,23 @@ const OnboardingStart: React.VFC = () => { } + pagingEnabled={true} + snapEnabled={true} ref={carouselRef} - sliderWidth={WIDTH} - itemWidth={Math.round(WIDTH)} - onScrollIndexChanged={(index: number) => { - haptic('impactLight'); - setActiveSlideIndex(index); + scrollAnimationDuration={1000} + onProgressChange={(_, index) => { + if (Number.isInteger(index)) { + setActiveSlideIndex(index); + } + progressValue.value = index; }} - // @ts-ignore - disableIntervalMomentum={true} + renderItem={({item}) => } /> @@ -254,25 +260,19 @@ const OnboardingStart: React.VFC = () => { }}> - + + {[...Array(onboardingSlides.length)].map((_, index) => { + return ( + + ); + })} + {!isPaired ? ( diff --git a/src/navigation/onboarding/screens/Pin.tsx b/src/navigation/onboarding/screens/Pin.tsx index 8c0df4418b..e12701edf6 100644 --- a/src/navigation/onboarding/screens/Pin.tsx +++ b/src/navigation/onboarding/screens/Pin.tsx @@ -1,5 +1,5 @@ import {StackScreenProps} from '@react-navigation/stack'; -import React, {useLayoutEffect, useRef} from 'react'; +import React, {useEffect, useRef} from 'react'; import {ScrollView} from 'react-native'; import TouchID from 'react-native-touch-id-ng'; import {useAndroidBackHandler} from 'react-navigation-backhandler'; @@ -53,111 +53,110 @@ const PinContainer = styled.SafeAreaView` align-items: stretch; `; -const PinScreen: React.VFC< - StackScreenProps -> = ({navigation}) => { - const {t} = useTranslation(); - const dispatch = useAppDispatch(); - const themeType = useThemeType(); +const PinScreen: React.VFC> = + ({navigation}) => { + const {t} = useTranslation(); + const dispatch = useAppDispatch(); + const themeType = useThemeType(); - useAndroidBackHandler(() => true); + useAndroidBackHandler(() => true); - const askForTrackingThenNavigate = useRequestTrackingPermissionHandler(); + const askForTrackingThenNavigate = useRequestTrackingPermissionHandler(); - const onSkipPressRef = useRef(async () => { - haptic('impactLight'); - askForTrackingThenNavigate(() => navigation.navigate('CreateKey')); - }); - - useLayoutEffect(() => { - navigation.setOptions({ - gestureEnabled: false, - headerLeft: () => null, - headerRight: () => ( - - - - ), + const onSkipPressRef = useRef(async () => { + haptic('impactLight'); + askForTrackingThenNavigate(() => navigation.navigate('CreateKey')); }); - }, [navigation, t]); - const onSetPinPress = () => { - haptic('impactLight'); - askForTrackingThenNavigate(() => { - dispatch(AppActions.showPinModal({type: 'set', context: 'onboarding'})); - }); - }; + useEffect(() => { + navigation.setOptions({ + gestureEnabled: false, + headerLeft: () => null, + headerRight: () => ( + + + + ), + }); + }, [navigation, t]); - const onSetBiometricPress = () => { - haptic('impactLight'); - TouchID.isSupported(isSupportedOptionalConfigObject) - .then(biometryType => { - return TouchID.authenticate( - 'Authentication Check', - authOptionalConfigObject, - ); - }) - .then(() => { - dispatch(AppActions.biometricLockActive(true)); - askForTrackingThenNavigate(() => navigation.navigate('CreateKey')); - }) - .catch((error: BiometricError) => { - if (error.code && TO_HANDLE_ERRORS[error.code]) { - const err = TO_HANDLE_ERRORS[error.code]; - dispatch( - showBottomNotificationModal(BiometricErrorNotification(err)), - ); - } + const onSetPinPress = () => { + haptic('impactLight'); + askForTrackingThenNavigate(() => { + dispatch(AppActions.showPinModal({type: 'set', context: 'onboarding'})); }); - }; + }; - return ( - - - {PinImage[themeType]} - - -

{t('Protect your wallet')}

-
-
- - - - {t( - 'Set up an extra layer of security to keep your wallet secure.', - )} - - - - - - - - - - - -
-
- ); -}; + const onSetBiometricPress = () => { + haptic('impactLight'); + TouchID.isSupported(isSupportedOptionalConfigObject) + .then(biometryType => { + return TouchID.authenticate( + 'Authentication Check', + authOptionalConfigObject, + ); + }) + .then(() => { + dispatch(AppActions.biometricLockActive(true)); + askForTrackingThenNavigate(() => navigation.navigate('CreateKey')); + }) + .catch((error: BiometricError) => { + if (error.code && TO_HANDLE_ERRORS[error.code]) { + const err = TO_HANDLE_ERRORS[error.code]; + dispatch( + showBottomNotificationModal(BiometricErrorNotification(err)), + ); + } + }); + }; + + return ( + + + {PinImage[themeType]} + + +

{t('Protect your wallet')}

+
+
+ + + + {t( + 'Set up an extra layer of security to keep your wallet secure.', + )} + + + + + + + + + + + +
+
+ ); + }; export default PinScreen; diff --git a/src/navigation/onboarding/screens/TermsOfUse.tsx b/src/navigation/onboarding/screens/TermsOfUse.tsx index 978d9be89c..02ff995616 100644 --- a/src/navigation/onboarding/screens/TermsOfUse.tsx +++ b/src/navigation/onboarding/screens/TermsOfUse.tsx @@ -1,6 +1,6 @@ import {StackActions, useNavigation} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; -import React, {ReactElement, useLayoutEffect, useState} from 'react'; +import React, {ReactElement, useEffect, useState} from 'react'; import {useTranslation} from 'react-i18next'; import {DeviceEventEmitter, Linking, ScrollView} from 'react-native'; import {useAndroidBackHandler} from 'react-navigation-backhandler'; @@ -137,7 +137,7 @@ const TermsOfUse: React.FC = ({route}) => { return Terms; }); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ gestureEnabled: false, headerTitle: () => {t('Important')}, diff --git a/src/navigation/tabs/shop/ShopStack.tsx b/src/navigation/shop/ShopStack.tsx similarity index 62% rename from src/navigation/tabs/shop/ShopStack.tsx rename to src/navigation/shop/ShopStack.tsx index b165799637..aa4c7ebcd8 100644 --- a/src/navigation/tabs/shop/ShopStack.tsx +++ b/src/navigation/shop/ShopStack.tsx @@ -3,16 +3,13 @@ import React from 'react'; import { baseNavigatorOptions, baseScreenOptions, -} from '../../../constants/NavigationOptions'; -import ShopHome, {ShopHomeParamList} from './ShopHome'; -import {HeaderTitle} from '../../../components/styled/Text'; +} from '../../constants/NavigationOptions'; +import {HeaderTitle} from '../../components/styled/Text'; import {t} from 'i18next'; -import {NavigatorScreenParams} from '@react-navigation/native'; -import {CardConfigMap, GiftCard} from '../../../store/shop/shop.models'; -import ArchivedGiftCards from './gift-card/screens/ArchivedGiftCards'; +import {CardConfigMap, GiftCard} from '../../store/shop/shop.models'; +import ArchivedGiftCards from '../tabs/shop/gift-card/screens/ArchivedGiftCards'; export type ShopStackParamList = { - Home: NavigatorScreenParams; ArchivedGiftCards: { giftCards: GiftCard[]; supportedGiftCardMap: CardConfigMap; @@ -20,7 +17,6 @@ export type ShopStackParamList = { }; export enum ShopScreens { - HOME = 'Home', ARCHIVED_GIFT_CARDS = 'ArchivedGiftCards', } @@ -29,13 +25,12 @@ const Shop = createStackNavigator(); const ShopStack = () => { return ( - > = { Home: HomeIcon, HomeFocused: HomeFocusedIcon, Shop: ShopIcon, ShopFocused: ShopFocusedIcon, - Card: CardIcon, - CardFocused: CardFocusedIcon, + CardTab: CardIcon, + CardTabFocused: CardFocusedIcon, Settings: SettingsIcon, SettingsFocused: SettingsFocusedIcon, TransactButton: TransactButtonIcon, @@ -39,17 +43,17 @@ export enum TabsScreens { HOME = 'Home', SHOP = 'Shop', TRANSACT_BUTTON = 'TransactButton', - CARD = 'Card', + CARD = 'CardTab', SETTINGS = 'Settings', CAMERA = 'Camera', } export type TabsStackParamList = { Home: undefined; - Shop: NavigatorScreenParams | undefined; + Shop: NavigatorScreenParams | undefined; TransactButton: undefined; - Card: NavigatorScreenParams | undefined; - Settings: NavigatorScreenParams | undefined; + CardTab: CardHomeScreenParamList | undefined; + Settings: SettingsHomeParamList | undefined; Camera: undefined; }; @@ -57,8 +61,12 @@ const Tab = createBottomTabNavigator(); const TabsStack = () => { const theme = useTheme(); + const {t} = useTranslation(); + useAndroidBackHandler(() => true); + const TransactionButton = () => null; + return ( { return ; }, })}> - - + , + }} + /> + null, + headerTitle: () => {t('Shop with crypto')}, + }} + /> { tabBarButton: props => , }} /> - - + null, + }} + /> + null, + headerTitle: () => {t('Settings')}, + }} + /> ); }; diff --git a/src/navigation/tabs/contacts/screens/ContactsAdd.tsx b/src/navigation/tabs/contacts/screens/ContactsAdd.tsx index e5a3685ca5..b7adc16509 100644 --- a/src/navigation/tabs/contacts/screens/ContactsAdd.tsx +++ b/src/navigation/tabs/contacts/screens/ContactsAdd.tsx @@ -1,10 +1,4 @@ -import React, { - useState, - useMemo, - useCallback, - useLayoutEffect, - useEffect, -} from 'react'; +import React, {useState, useMemo, useCallback, useEffect} from 'react'; import {FlatList, View} from 'react-native'; import {yupResolver} from '@hookform/resolvers/yup'; import yup from '../../../../lib/yup'; @@ -265,7 +259,7 @@ const ContactsAdd = ({ {id: 'testnet', name: 'Testnet'}, ]; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( diff --git a/src/navigation/tabs/contacts/screens/ContactsDetails.tsx b/src/navigation/tabs/contacts/screens/ContactsDetails.tsx index 0972863300..6d371e72cf 100644 --- a/src/navigation/tabs/contacts/screens/ContactsDetails.tsx +++ b/src/navigation/tabs/contacts/screens/ContactsDetails.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState, ReactElement} from 'react'; +import React, {useEffect, useState, ReactElement} from 'react'; import {useAppSelector} from '../../../../utils/hooks'; import styled, {useTheme} from 'styled-components/native'; import {useNavigation} from '@react-navigation/core'; @@ -215,7 +215,7 @@ const ContactsDetails = ({ }, }); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerRight: () => ( { const [searchResults, setSearchResults] = useState([] as ContactRowProps[]); const [searchVal, setSearchVal] = useState(''); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => { return contacts.length ? ( diff --git a/src/navigation/tabs/home/HomeRoot.tsx b/src/navigation/tabs/home/HomeRoot.tsx index 1a28215123..f67a96abf1 100644 --- a/src/navigation/tabs/home/HomeRoot.tsx +++ b/src/navigation/tabs/home/HomeRoot.tsx @@ -3,6 +3,7 @@ import { useScrollToTop, useTheme, } from '@react-navigation/native'; +import {StackScreenProps} from '@react-navigation/stack'; import {each} from 'lodash'; import React, {useEffect, useMemo, useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; @@ -24,6 +25,7 @@ import {getPriceHistory, startGetRates} from '../../../store/wallet/effects'; import {startUpdateAllKeyAndWalletStatus} from '../../../store/wallet/effects/status/status'; import {updatePortfolioBalance} from '../../../store/wallet/wallet.actions'; import {SlateDark, White} from '../../../styles/colors'; +import {TabsScreens, TabsStackParamList} from '../TabsStack'; import {sleep} from '../../../utils/helper-methods'; import { useAppDispatch, @@ -57,7 +59,12 @@ import { } from '../../../store/wallet/effects/send/send'; import {Analytics} from '../../../store/analytics/analytics.effects'; -const HomeRoot = () => { +export type HomeRootScreenProps = StackScreenProps< + TabsStackParamList, + TabsScreens.HOME +>; + +const HomeRootScreen: React.FC = () => { const {t} = useTranslation(); const dispatch = useAppDispatch(); const navigation = useNavigation(); @@ -287,4 +294,4 @@ const HomeRoot = () => { ); }; -export default HomeRoot; +export default HomeRootScreen; diff --git a/src/navigation/tabs/home/HomeStack.tsx b/src/navigation/tabs/home/HomeStack.tsx deleted file mode 100644 index ea0c9866de..0000000000 --- a/src/navigation/tabs/home/HomeStack.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import {createStackNavigator} from '@react-navigation/stack'; -import React from 'react'; -import {ZeroHeightHeader} from '../../../components/styled/Text'; -import { - baseNavigatorOptions, - baseScreenOptions, -} from '../../../constants/NavigationOptions'; -import HomeRoot from './HomeRoot'; - -export type HomeStackParamList = { - Root: undefined; -}; - -export enum HomeScreens { - Root = 'Root', -} - -const Home = createStackNavigator(); - -const HomeStack = () => { - return ( - - , - }} - /> - - ); -}; - -export default HomeStack; diff --git a/src/navigation/tabs/home/components/Crypto.tsx b/src/navigation/tabs/home/components/Crypto.tsx index 65254df004..8e408c1342 100644 --- a/src/navigation/tabs/home/components/Crypto.tsx +++ b/src/navigation/tabs/home/components/Crypto.tsx @@ -1,6 +1,6 @@ import {NavigationProp, useNavigation} from '@react-navigation/native'; import React, {useEffect, useState} from 'react'; -import Carousel from 'react-native-snap-carousel'; +import Carousel from 'react-native-reanimated-carousel'; import styled from 'styled-components/native'; import { ActiveOpacity, @@ -376,15 +376,17 @@ const Crypto = () => { {homeCarouselLayoutType === 'carousel' ? ( ) : ( @@ -402,18 +404,15 @@ const Crypto = () => { diff --git a/src/navigation/tabs/home/components/HomeSection.tsx b/src/navigation/tabs/home/components/HomeSection.tsx index be0c6f56b0..d2ce65e146 100644 --- a/src/navigation/tabs/home/components/HomeSection.tsx +++ b/src/navigation/tabs/home/components/HomeSection.tsx @@ -14,7 +14,7 @@ import {BaseText, Link} from '../../../../components/styled/Text'; import {HomeSectionTitle} from './Styled'; import {LightBlack, LuckySevens, SlateDark} from '../../../../styles/colors'; -interface HomeRowProps { +type HomeRowProps = React.PropsWithChildren<{ title?: string | undefined; action?: string | undefined; onActionPress?: TouchableWithoutFeedbackProps['onPress']; @@ -22,7 +22,7 @@ interface HomeRowProps { style?: StyleProp; slimContainer?: boolean; label?: string; -} +}>; const HomeRowContainer = styled.View<{slim?: boolean}>` margin-bottom: ${({slim}) => (slim ? 32 : 28)}px; diff --git a/src/navigation/tabs/home/components/advertisements/AdvertisementsList.tsx b/src/navigation/tabs/home/components/advertisements/AdvertisementsList.tsx index 0d0dda655c..3d7090a397 100644 --- a/src/navigation/tabs/home/components/advertisements/AdvertisementsList.tsx +++ b/src/navigation/tabs/home/components/advertisements/AdvertisementsList.tsx @@ -2,11 +2,13 @@ import React from 'react'; import {ContentCard} from 'react-native-appboy-sdk'; import styled, {useTheme} from 'styled-components/native'; import {ScreenGutter} from '../../../../../components/styled/Containers'; +import {RootStacks} from '../../../../../Root'; import AdvertisementCard from './AdvertisementCard'; import {BoxShadow} from '../Styled'; import {useNavigation} from '@react-navigation/native'; import {useRequireKeyAndWalletRedirect} from '../../../../../utils/hooks/useRequireKeyAndWalletRedirect'; import {WalletScreens} from '../../../../wallet/WalletStack'; +import {TabsScreens} from '../../../TabsStack'; interface AdvertisementListProps { contentCards: ContentCard[]; @@ -47,11 +49,8 @@ const AdvertisementsList: React.FC = props => { }); const CTA_OVERRIDES: {[key in string]: () => void} = { dev_card: () => - navigation.navigate('Tabs', { - screen: 'Card', - params: { - screen: 'CardHome', - }, + navigation.navigate(RootStacks.TABS, { + screen: TabsScreens.CARD, }), dev_swapCrypto: swapCryptoCta, dev_buyCrypto: buyCryptoCta, diff --git a/src/navigation/tabs/home/components/cards/BitPayCard.tsx b/src/navigation/tabs/home/components/cards/BitPayCard.tsx index 6789261929..c3baa3a11b 100644 --- a/src/navigation/tabs/home/components/cards/BitPayCard.tsx +++ b/src/navigation/tabs/home/components/cards/BitPayCard.tsx @@ -1,6 +1,8 @@ import {useNavigation} from '@react-navigation/native'; import React from 'react'; import {useTranslation} from 'react-i18next'; +import {RootStacks} from '../../../../../Root'; +import {TabsScreens} from '../../../TabsStack'; import LinkCard from './LinkCard'; export const GetMastercard: React.FC = () => { @@ -11,11 +13,8 @@ export const GetMastercard: React.FC = () => { - navigation.navigate('Tabs', { - screen: 'Card', - params: { - screen: 'CardHome', - }, + navigation.navigate(RootStacks.TABS, { + screen: TabsScreens.CARD, }) } /> diff --git a/src/navigation/tabs/home/components/offers/OffersCarousel.tsx b/src/navigation/tabs/home/components/offers/OffersCarousel.tsx index b140409af3..f6af2ea5ec 100644 --- a/src/navigation/tabs/home/components/offers/OffersCarousel.tsx +++ b/src/navigation/tabs/home/components/offers/OffersCarousel.tsx @@ -1,6 +1,6 @@ import React, {memo} from 'react'; import {ContentCard} from 'react-native-appboy-sdk'; -import {Carousel} from 'react-native-snap-carousel'; +import Carousel from 'react-native-reanimated-carousel'; import {WIDTH} from '../../../../../components/styled/Containers'; import OfferCard from './OfferCard'; import {CarouselItemContainer} from '../Styled'; @@ -8,6 +8,7 @@ import {CarouselItemContainer} from '../Styled'; interface OfferSlidesProps { contentCards: ContentCard[]; } +const itemWidth = 230; const renderOffer = ({item}: {item: ContentCard}) => ( @@ -19,16 +20,17 @@ const OffersCarousel: React.FC = props => { const {contentCards} = props; return ( - + ); }; diff --git a/src/navigation/tabs/home/components/quick-links/QuickLinksCarousel.tsx b/src/navigation/tabs/home/components/quick-links/QuickLinksCarousel.tsx index cf056e2734..251e781ca2 100644 --- a/src/navigation/tabs/home/components/quick-links/QuickLinksCarousel.tsx +++ b/src/navigation/tabs/home/components/quick-links/QuickLinksCarousel.tsx @@ -1,6 +1,6 @@ import React from 'react'; import {ContentCard} from 'react-native-appboy-sdk'; -import {Carousel} from 'react-native-snap-carousel'; +import Carousel from 'react-native-reanimated-carousel'; import {WIDTH} from '../../../../../components/styled/Containers'; import QuickLinksCard from './QuickLinksCard'; import {CarouselItemContainer} from '../Styled'; @@ -11,6 +11,8 @@ interface QuickLinksCarouselProps { contentCards: ContentCard[]; } +const itemWidth = 225; + const QuickLinksCarousel: React.FC = ({ contentCards, }) => { @@ -35,11 +37,16 @@ const QuickLinksCarousel: React.FC = ({ }; return ( - + ( = ({ /> )} - sliderWidth={WIDTH} - itemWidth={225} - inactiveSlideScale={1} - inactiveSlideOpacity={1} /> ); }; diff --git a/src/navigation/tabs/settings/SettingsRoot.tsx b/src/navigation/tabs/settings/SettingsRoot.tsx index da67ce0fc7..33e26b2763 100644 --- a/src/navigation/tabs/settings/SettingsRoot.tsx +++ b/src/navigation/tabs/settings/SettingsRoot.tsx @@ -1,3 +1,4 @@ +import {useScrollToTop} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; import React, {ReactElement, useMemo, useRef} from 'react'; import {useTranslation} from 'react-i18next'; @@ -20,6 +21,7 @@ import ChevronUpSvg from '../../../../assets/img/chevron-up.svg'; import {navigationRef} from '../../../Root'; import {updateSettingsListConfig} from '../../../store/app/app.actions'; import {useAppSelector, useAppDispatch} from '../../../utils/hooks'; +import {TabsScreens, TabsStackParamList} from '../TabsStack'; import General from './components/General'; import Security from './components/Security'; @@ -31,8 +33,6 @@ import Contacts from './components/Contacts'; import {useSelector} from 'react-redux'; import Crypto from './components/Crypto'; import WalletsAndKeys from './components/WalletsAndKeys'; -import {SettingsStackParamList} from './SettingsStack'; -import {useScrollToTop} from '@react-navigation/native'; interface HomeSetting { id: SettingsListType; @@ -98,7 +98,10 @@ export type SettingsHomeParamList = } | undefined; -type SettingsHomeProps = StackScreenProps; +type SettingsHomeProps = StackScreenProps< + TabsStackParamList, + TabsScreens.SETTINGS +>; export type SettingsListType = | 'General' diff --git a/src/navigation/tabs/settings/SettingsStack.tsx b/src/navigation/tabs/settings/SettingsStack.tsx deleted file mode 100644 index 35db5d672b..0000000000 --- a/src/navigation/tabs/settings/SettingsStack.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import {createStackNavigator} from '@react-navigation/stack'; -import React from 'react'; -import { - baseNavigatorOptions, - baseScreenOptions, -} from '../../../constants/NavigationOptions'; -import SettingsRoot, {SettingsHomeParamList} from './SettingsRoot'; -import {HeaderTitle} from '../../../components/styled/Text'; - -import {useTranslation} from 'react-i18next'; - -export type SettingsStackParamList = { - Root: SettingsHomeParamList | undefined; -}; - -export enum SettingsScreens { - Root = 'Root', -} - -const Settings = createStackNavigator(); - -const SettingsStack = () => { - const {t} = useTranslation(); - return ( - - null, - headerTitle: () => {t('Settings')}, - }} - /> - - ); -}; - -export default SettingsStack; diff --git a/src/navigation/tabs/settings/about/screens/SessionLog.tsx b/src/navigation/tabs/settings/about/screens/SessionLog.tsx index 42ac050028..a92fc05db3 100644 --- a/src/navigation/tabs/settings/about/screens/SessionLog.tsx +++ b/src/navigation/tabs/settings/about/screens/SessionLog.tsx @@ -1,7 +1,7 @@ import Slider from '@react-native-community/slider'; import {useNavigation} from '@react-navigation/native'; import {StackNavigationProp} from '@react-navigation/stack'; -import React, {memo, useLayoutEffect, useState} from 'react'; +import React, {memo, useEffect, useState} from 'react'; import {useTranslation} from 'react-i18next'; import {Alert, SectionList} from 'react-native'; import Mailer from 'react-native-mail'; @@ -215,7 +215,7 @@ const SessionLogs: React.VFC = () => { ); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerRight: () => setShowOptions(true)} />, }); diff --git a/src/navigation/tabs/settings/components/Connections.tsx b/src/navigation/tabs/settings/components/Connections.tsx index 7fc93c74d8..adaca45315 100644 --- a/src/navigation/tabs/settings/components/Connections.tsx +++ b/src/navigation/tabs/settings/components/Connections.tsx @@ -16,8 +16,9 @@ import { import {Analytics} from '../../../../store/analytics/analytics.effects'; import {useAppDispatch, useAppSelector} from '../../../../utils/hooks'; import {SettingsComponent} from '../SettingsRoot'; -import {ShopScreens} from '../../shop/ShopStack'; import {ShopTabs} from '../../shop/ShopHome'; +import {TabsScreens} from '../../TabsStack'; +import {RootStacks} from '../../../../Root'; const MethodIcon = require('../../../../../assets/img/logos/method.png'); @@ -92,8 +93,8 @@ const Connections: React.VFC = props => { params: {}, }); } else { - navigation.navigate('Shop', { - screen: ShopScreens.HOME, + navigation.navigate(RootStacks.TABS, { + screen: TabsScreens.SHOP, params: { screen: ShopTabs.BILLS, }, diff --git a/src/navigation/tabs/settings/general/screens/Theme.tsx b/src/navigation/tabs/settings/general/screens/Theme.tsx index 0c081add0e..9550020ca2 100644 --- a/src/navigation/tabs/settings/general/screens/Theme.tsx +++ b/src/navigation/tabs/settings/general/screens/Theme.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useRef, useState} from 'react'; +import React, {useEffect, useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; import { ColorSchemeName, @@ -79,7 +79,7 @@ const ThemeSettings: React.FC = () => { const onPressTitleRef = useRef(onPressTitle); onPressTitleRef.current = onPressTitle; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => { return ( diff --git a/src/navigation/tabs/shop/ShopHome.tsx b/src/navigation/tabs/shop/ShopHome.tsx index 84312bf576..b3f8418efb 100644 --- a/src/navigation/tabs/shop/ShopHome.tsx +++ b/src/navigation/tabs/shop/ShopHome.tsx @@ -1,12 +1,5 @@ import debounce from 'lodash.debounce'; -import React, { - useCallback, - useEffect, - useLayoutEffect, - useMemo, - useRef, - useState, -} from 'react'; +import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react'; import styled from 'styled-components/native'; import {Keyboard, RefreshControl, ScrollView} from 'react-native'; import GiftCardCatalog from './components/GiftCardCatalog'; @@ -33,7 +26,6 @@ import { import {APP_NETWORK} from '../../../constants/config'; import {useAppDispatch, useAppSelector} from '../../../utils/hooks'; import {StackScreenProps} from '@react-navigation/stack'; -import {ShopScreens, ShopStackParamList} from './ShopStack'; import {useTranslation} from 'react-i18next'; import { useFocusEffect, @@ -45,9 +37,15 @@ import {useTheme} from 'styled-components/native'; import {SlateDark, White} from '../../../styles/colors'; import {sleep} from '../../../utils/helper-methods'; import {Analytics} from '../../../store/analytics/analytics.effects'; +import {TabsScreens, TabsStackParamList} from '../TabsStack'; import {Bills} from './components/Bills'; import {HEIGHT} from '../../../components/styled/Containers'; +export type ShopStackScreenProps = StackScreenProps< + TabsStackParamList, + TabsScreens.SHOP +>; + export enum ShopTabs { GIFT_CARDS = 'Gift Cards', SHOP_ONLINE = 'Shop Online', @@ -122,9 +120,7 @@ const getScrollViewHeight = ( : getShopOnlineScrollViewHeight(integrationsCategories); }; -const ShopHome: React.FC< - StackScreenProps -> = ({route}) => { +const ShopHomeScreen: React.FC = ({route}) => { const {t} = useTranslation(); const theme = useTheme(); const availableCardMap = useAppSelector(({SHOP}) => SHOP.availableCardMap); @@ -170,7 +166,7 @@ const ShopHome: React.FC< [availableGiftCards, categoriesAndCurations, purchasedGiftCards], ); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerLeft: () => null, headerTitle: () => {t('Pay with Crypto')}, @@ -366,4 +362,4 @@ const ShopHome: React.FC< ); }; -export default ShopHome; +export default ShopHomeScreen; diff --git a/src/navigation/tabs/shop/bill/screens/ConnectBills.tsx b/src/navigation/tabs/shop/bill/screens/ConnectBills.tsx index 1f256eb529..df9eb7d376 100644 --- a/src/navigation/tabs/shop/bill/screens/ConnectBills.tsx +++ b/src/navigation/tabs/shop/bill/screens/ConnectBills.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {StackScreenProps} from '@react-navigation/stack'; import WebView from 'react-native-webview'; import {useSafeAreaInsets} from 'react-native-safe-area-context'; @@ -26,7 +26,7 @@ const ConnectBills = ({ ({BITPAY_ID}) => BITPAY_ID.apiToken[APP_NETWORK], ); - useLayoutEffect(() => { + useEffect(() => { dispatch(startOnGoingProcessModal('GENERAL_AWAITING')); // eslint-disable-next-line react-hooks/exhaustive-deps }, []); diff --git a/src/navigation/tabs/shop/bill/screens/PayAllBills.tsx b/src/navigation/tabs/shop/bill/screens/PayAllBills.tsx index ba89cfb9d5..cae4212c71 100644 --- a/src/navigation/tabs/shop/bill/screens/PayAllBills.tsx +++ b/src/navigation/tabs/shop/bill/screens/PayAllBills.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {StackScreenProps} from '@react-navigation/stack'; import {useTranslation} from 'react-i18next'; import {BillScreens, BillStackParamList} from '../BillStack'; @@ -203,7 +203,7 @@ const PayAllBills = ({ }); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTransparent: false, headerTitle: () => { diff --git a/src/navigation/tabs/shop/bill/screens/PayBill.tsx b/src/navigation/tabs/shop/bill/screens/PayBill.tsx index b2afb550fc..bf393fcb08 100644 --- a/src/navigation/tabs/shop/bill/screens/PayBill.tsx +++ b/src/navigation/tabs/shop/bill/screens/PayBill.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {StackScreenProps} from '@react-navigation/stack'; import {useTranslation} from 'react-i18next'; import {BillScreens, BillStackParamList} from '../BillStack'; @@ -251,7 +251,7 @@ const PayBill = ({ ); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTransparent: false, headerTitle, diff --git a/src/navigation/tabs/shop/bill/screens/Payment.tsx b/src/navigation/tabs/shop/bill/screens/Payment.tsx index b070027019..62e4729123 100644 --- a/src/navigation/tabs/shop/bill/screens/Payment.tsx +++ b/src/navigation/tabs/shop/bill/screens/Payment.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {StackScreenProps} from '@react-navigation/stack'; import {useTranslation} from 'react-i18next'; import {BillStackParamList} from '../BillStack'; @@ -102,7 +102,7 @@ const Payment = ({ }, ]; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTransparent: true, headerTitle: () => { diff --git a/src/navigation/tabs/shop/bill/screens/Payments.tsx b/src/navigation/tabs/shop/bill/screens/Payments.tsx index 30d94d64a2..26d317eb5e 100644 --- a/src/navigation/tabs/shop/bill/screens/Payments.tsx +++ b/src/navigation/tabs/shop/bill/screens/Payments.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import {StackScreenProps} from '@react-navigation/stack'; import {useTranslation} from 'react-i18next'; import {BillScreens, BillStackParamList} from '../BillStack'; @@ -26,7 +26,7 @@ const Payments = ({ ({SHOP}) => SHOP.billPayAccounts[APP_NETWORK], ) as BillPayAccount[]; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => { return ( diff --git a/src/navigation/tabs/shop/components/GiftCardCreditsItem.tsx b/src/navigation/tabs/shop/components/GiftCardCreditsItem.tsx index 6f6a6433fa..6821b2c826 100644 --- a/src/navigation/tabs/shop/components/GiftCardCreditsItem.tsx +++ b/src/navigation/tabs/shop/components/GiftCardCreditsItem.tsx @@ -6,7 +6,7 @@ import {CardConfig} from '../../../../store/shop/shop.models'; import {BaseText, H4} from '../../../../components/styled/Text'; import {formatFiatAmount} from '../../../../utils/helper-methods'; import {LightBlack} from '../../../../styles/colors'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; interface GiftCardCreditsItemProps { logoBackgroundColor: string; diff --git a/src/navigation/tabs/shop/components/MyGiftCards.tsx b/src/navigation/tabs/shop/components/MyGiftCards.tsx index c93c549c00..22e42e9255 100644 --- a/src/navigation/tabs/shop/components/MyGiftCards.tsx +++ b/src/navigation/tabs/shop/components/MyGiftCards.tsx @@ -1,7 +1,7 @@ import React, {useEffect, useRef, useState} from 'react'; import {useNavigation} from '@react-navigation/native'; import {TouchableWithoutFeedback} from 'react-native-gesture-handler'; -import {Carousel} from 'react-native-snap-carousel'; +import Carousel, {ICarouselInstance} from 'react-native-reanimated-carousel'; import styled from 'styled-components/native'; import {CardConfig, GiftCard} from '../../../../store/shop/shop.models'; import {GiftCardScreens} from '../gift-card/GiftCardStack'; @@ -22,7 +22,7 @@ import { redemptionFailuresLessThanADayOld, sortByDescendingDate, } from '../../../../lib/gift-cards/gift-card'; -import {ShopScreens} from '../ShopStack'; +import {ShopScreens} from '../../../../navigation/shop/ShopStack'; import {useTranslation} from 'react-i18next'; const MyGiftCardsHeaderContainer = styled(SectionHeaderContainer)` @@ -49,7 +49,7 @@ const MyGiftCards = ({ supportedGiftCards: CardConfig[]; }) => { const {t} = useTranslation(); - const carouselRef = useRef>(null); + const carouselRef = useRef(null); const navigation = useNavigation(); const [slideIndex, setSlideIndex] = useState(0); const allGiftCards = useAppSelector( @@ -95,7 +95,7 @@ const MyGiftCards = ({ }, [archivedGiftCards.length]); useEffect(() => { - setTimeout(() => carouselRef.current?.snapToItem(slideIndex), 50); + setTimeout(() => carouselRef.current?.scrollTo({index: slideIndex}), 50); }, [slideIndex]); return ( @@ -124,25 +124,19 @@ const MyGiftCards = ({ ( + enabled={false} + renderItem={({item, index}: {item: GiftCard[]; index: number}) => ( <> - {item.item.length ? ( + {item.length ? ( <> - {item.item.sort(sortByDescendingDate).map(giftCard => { + {item.sort(sortByDescendingDate).map(giftCard => { const cardConfig = supportedGiftCardMap[giftCard.name]; return ( cardConfig && ( diff --git a/src/navigation/tabs/shop/components/ShopCarouselList.tsx b/src/navigation/tabs/shop/components/ShopCarouselList.tsx index 2362c3cdac..6cbe8d998d 100644 --- a/src/navigation/tabs/shop/components/ShopCarouselList.tsx +++ b/src/navigation/tabs/shop/components/ShopCarouselList.tsx @@ -1,6 +1,6 @@ import React from 'react'; import styled, {css} from 'styled-components/native'; -import Carousel from 'react-native-snap-carousel'; +import Carousel from 'react-native-reanimated-carousel'; import { CardConfig, DirectIntegrationApiObject, @@ -68,41 +68,47 @@ export default ({ return ( ( - - {item.item.map((listItem: ShopCarouselItem) => ( - { - console.log('press', listItem.displayName); - onItemPress(listItem); - }} - underlayColor={itemUnderlayColor || 'transparent'}> - {itemComponent(listItem)} - - ))} - - )} + scrollAnimationDuration={1000} + enabled={!isSingleSlide} + renderItem={({ + item, + index, + }: { + item: ShopCarouselItem[]; + index: number; + }) => { + return ( + + {item.map((listItem: ShopCarouselItem) => ( + { + console.log('press', listItem.displayName); + onItemPress(listItem); + }} + underlayColor={itemUnderlayColor || 'transparent'}> + {itemComponent(listItem)} + + ))} + + ); + }} /> ); }; diff --git a/src/navigation/tabs/shop/components/styled/ShopTabComponents.tsx b/src/navigation/tabs/shop/components/styled/ShopTabComponents.tsx index 19a3baa225..6c3d10c67a 100644 --- a/src/navigation/tabs/shop/components/styled/ShopTabComponents.tsx +++ b/src/navigation/tabs/shop/components/styled/ShopTabComponents.tsx @@ -123,7 +123,7 @@ export const BillOption = styled.View<{isLast?: boolean}>` width: 100%; padding: 24px 0; border-bottom-width: 1px; - border-bottom-color: ${({theme}) => theme.dark ? SlateDark : Slate30 }; + border-bottom-color: ${({theme}) => (theme.dark ? SlateDark : Slate30)}; margin-top: -30px; ${({isLast}) => isLast diff --git a/src/navigation/tabs/shop/gift-card/GiftCardDeeplink.tsx b/src/navigation/tabs/shop/gift-card/GiftCardDeeplink.tsx index 975944c2b4..e615491262 100644 --- a/src/navigation/tabs/shop/gift-card/GiftCardDeeplink.tsx +++ b/src/navigation/tabs/shop/gift-card/GiftCardDeeplink.tsx @@ -1,9 +1,11 @@ import {StackScreenProps} from '@react-navigation/stack'; import React, {useEffect, useRef} from 'react'; -import {RootStackParamList} from '../../../../Root'; +import {RootStackParamList, RootStacks} from '../../../../Root'; import {Analytics} from '../../../../store/analytics/analytics.effects'; import {selectAvailableGiftCards} from '../../../../store/shop/shop.selectors'; import {useAppDispatch, useAppSelector} from '../../../../utils/hooks'; +import {TabsScreens} from '../../TabsStack'; +import {GiftCardScreens} from './GiftCardStack'; export type GiftCardDeeplinkScreenParamList = | { @@ -16,7 +18,7 @@ export type GiftCardDeeplinkScreenParamList = * Otherwise we should configure the deeplink directly. */ const GiftCardDeeplinkScreen: React.FC< - StackScreenProps + StackScreenProps > = ({navigation, route}) => { const merchantName = ((route.params || {}).merchant || '').toLowerCase(); const availableGiftCards = useAppSelector(selectAvailableGiftCards); @@ -34,18 +36,15 @@ const GiftCardDeeplinkScreen: React.FC< }), ); if (targetedGiftCardRef.current) { - navigation.replace('GiftCard', { - screen: 'BuyGiftCard', + navigation.replace(RootStacks.GIFT_CARD, { + screen: GiftCardScreens.BUY_GIFT_CARD, params: { cardConfig: targetedGiftCardRef.current, }, }); } else { - navigation.replace('Tabs', { - screen: 'Shop', - params: { - screen: 'Home', - }, + navigation.replace(RootStacks.TABS, { + screen: TabsScreens.SHOP, }); } }, [navigation]); diff --git a/src/navigation/tabs/shop/gift-card/screens/BuyGiftCard.tsx b/src/navigation/tabs/shop/gift-card/screens/BuyGiftCard.tsx index 8035d3c293..95bb1466ed 100644 --- a/src/navigation/tabs/shop/gift-card/screens/BuyGiftCard.tsx +++ b/src/navigation/tabs/shop/gift-card/screens/BuyGiftCard.tsx @@ -1,7 +1,7 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {PropsWithChildren, useEffect, useState} from 'react'; import {Platform, ScrollView, View} from 'react-native'; import {StackScreenProps} from '@react-navigation/stack'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; import Markdown from 'react-native-markdown-display'; import {GiftCardScreens, GiftCardStackParamList} from '../GiftCardStack'; import RemoteImage from '../../components/RemoteImage'; @@ -46,13 +46,33 @@ import {TouchableWithoutFeedback} from 'react-native-gesture-handler'; import {useTranslation} from 'react-i18next'; import {Analytics} from '../../../../../store/analytics/analytics.effects'; -const GradientBox = styled(LinearGradient)` - width: ${WIDTH}px; - align-items: center; - padding-top: 40px; - flex-grow: 1; - justify-content: center; -`; +const GradientBox: React.FC = props => { + const {children, ...rest} = props; + return ( + + + {children} + + ); +}; const AmountContainer = styled.View` flex-grow: 1; @@ -131,7 +151,7 @@ const BuyGiftCard = ({ const [selectedAmountIndex, setSelectedAmountIndex] = useState( getMiddleIndex(cardConfig.supportedAmounts || []), ); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => { return ( @@ -141,7 +161,8 @@ const BuyGiftCard = ({ ); }, }); - }); + }, [cardConfig.displayName]); + useEffect(() => { dispatch( Analytics.track('Viewed Gift Card', { diff --git a/src/navigation/tabs/shop/gift-card/screens/GiftCardDetails.tsx b/src/navigation/tabs/shop/gift-card/screens/GiftCardDetails.tsx index f161d6f020..fa5f80b265 100644 --- a/src/navigation/tabs/shop/gift-card/screens/GiftCardDetails.tsx +++ b/src/navigation/tabs/shop/gift-card/screens/GiftCardDetails.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import { ScrollView, Linking, @@ -194,7 +194,7 @@ const GiftCardDetails = ({ }); }, [cardConfig, giftCard.barcodeImage, giftCard.claimLink]); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {cardConfig.displayName}, headerRight: () => ( diff --git a/src/navigation/tabs/shop/merchant/screens/MerchantCategory.tsx b/src/navigation/tabs/shop/merchant/screens/MerchantCategory.tsx index 027de43bef..17770f26a8 100644 --- a/src/navigation/tabs/shop/merchant/screens/MerchantCategory.tsx +++ b/src/navigation/tabs/shop/merchant/screens/MerchantCategory.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import {ScrollView} from 'react-native'; import {useNavigation} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; @@ -24,7 +24,7 @@ const MerchantCategory = ({ }: StackScreenProps) => { const navigator = useNavigation(); const {integrations, category} = route.params; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: category.displayName, }); diff --git a/src/navigation/tabs/shop/merchant/screens/MerchantDetails.tsx b/src/navigation/tabs/shop/merchant/screens/MerchantDetails.tsx index 3bd3129035..33e044bd43 100644 --- a/src/navigation/tabs/shop/merchant/screens/MerchantDetails.tsx +++ b/src/navigation/tabs/shop/merchant/screens/MerchantDetails.tsx @@ -1,7 +1,7 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import {Linking, ScrollView} from 'react-native'; import {StackScreenProps} from '@react-navigation/stack'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; import {MerchantStackParamList} from '../MerchantStack'; import RemoteImage from '../../components/RemoteImage'; import styled from 'styled-components/native'; @@ -58,13 +58,13 @@ const MerchantDetails = ({ const theme = useTheme(); const {directIntegration} = route.params; const iconHeight = 70; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( {directIntegration.displayName} ), }); - }); + }, [directIntegration.displayName]); return ( <> diff --git a/src/navigation/wallet-connect/screens/WalletConnectConfirm.tsx b/src/navigation/wallet-connect/screens/WalletConnectConfirm.tsx index da3e7075bd..668c6320fc 100644 --- a/src/navigation/wallet-connect/screens/WalletConnectConfirm.tsx +++ b/src/navigation/wallet-connect/screens/WalletConnectConfirm.tsx @@ -1,4 +1,4 @@ -import React, {useCallback, useLayoutEffect, useState, useEffect} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import {useNavigation, useRoute} from '@react-navigation/native'; import styled from 'styled-components/native'; import {RouteProp} from '@react-navigation/core'; @@ -161,7 +161,7 @@ const WalletConnectConfirm = () => { } }, [dispatch, navigation, request, showErrorMessage, t]); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerRight: () => ( diff --git a/src/navigation/wallet-connect/screens/WalletConnectConnections.tsx b/src/navigation/wallet-connect/screens/WalletConnectConnections.tsx index c502d06251..6ad3662ba5 100644 --- a/src/navigation/wallet-connect/screens/WalletConnectConnections.tsx +++ b/src/navigation/wallet-connect/screens/WalletConnectConnections.tsx @@ -1,5 +1,5 @@ import {useNavigation} from '@react-navigation/native'; -import React, {useCallback, useLayoutEffect, useState} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import {useAppDispatch, useAppSelector} from '../../../utils/hooks'; import styled from 'styled-components/native'; import {BaseText, H5} from '../../../components/styled/Text'; @@ -165,7 +165,7 @@ const WalletConnectConnections = () => { ); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerRight: () => { return ( diff --git a/src/navigation/wallet-connect/screens/WalletConnectHome.tsx b/src/navigation/wallet-connect/screens/WalletConnectHome.tsx index f5e063b1d4..1cfa8ce446 100644 --- a/src/navigation/wallet-connect/screens/WalletConnectHome.tsx +++ b/src/navigation/wallet-connect/screens/WalletConnectHome.tsx @@ -1,5 +1,5 @@ import {RouteProp, useNavigation, useRoute} from '@react-navigation/native'; -import React, {useCallback, useEffect, useLayoutEffect, useState} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import styled from 'styled-components/native'; import {H7, Smallest} from '../../../components/styled/Text'; import {LightBlack, NeutralSlate} from '../../../styles/colors'; @@ -180,7 +180,7 @@ const WalletConnectHome = () => { ); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => WalletConnectHeader(), headerRight: () => { diff --git a/src/navigation/wallet-connect/screens/WalletConnectStart.tsx b/src/navigation/wallet-connect/screens/WalletConnectStart.tsx index 45b66e9c5e..41420aebf0 100644 --- a/src/navigation/wallet-connect/screens/WalletConnectStart.tsx +++ b/src/navigation/wallet-connect/screens/WalletConnectStart.tsx @@ -1,4 +1,4 @@ -import React, {useCallback, useEffect, useLayoutEffect, useState} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import styled from 'styled-components/native'; import Button, {ButtonState} from '../../../components/button/Button'; import {Paragraph} from '../../../components/styled/Text'; @@ -91,7 +91,7 @@ const WalletConnectStart = () => { const peerName = metadata?.name; const peerUrl = metadata?.url; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerRight: () => ( diff --git a/src/navigation/wallet/components/CurrencySelectionNoResults.tsx b/src/navigation/wallet/components/CurrencySelectionNoResults.tsx index 6672eb5ad9..da1790304f 100644 --- a/src/navigation/wallet/components/CurrencySelectionNoResults.tsx +++ b/src/navigation/wallet/components/CurrencySelectionNoResults.tsx @@ -16,42 +16,41 @@ interface CurrencySelectionNoResultsProps { walletKey?: Key | undefined; } -const CurrencySelectionNoResults: React.VFC< - CurrencySelectionNoResultsProps -> = props => { - const navigation = useNavigation(); - const {t} = useTranslation(); - const {query, walletKey} = props; +const CurrencySelectionNoResults: React.VFC = + props => { + const navigation = useNavigation(); + const {t} = useTranslation(); + const {query, walletKey} = props; - return ( - - - - + return ( + + + + - - ]} - /> - + + ]} + /> + - {walletKey ? ( - { - haptic('soft'); - navigation.navigate('Wallet', { - screen: 'AddWallet', - params: {key: walletKey, isCustomToken: true, isToken: true}, - }); - }}> - {t('Add Custom Token')} - - ) : null} - - ); -}; + {walletKey ? ( + { + haptic('soft'); + navigation.navigate('Wallet', { + screen: 'AddWallet', + params: {key: walletKey, isCustomToken: true, isToken: true}, + }); + }}> + {t('Add Custom Token')} + + ) : null} + + ); + }; export default CurrencySelectionNoResults; diff --git a/src/navigation/wallet/components/CurrencySelectionSearchInput.tsx b/src/navigation/wallet/components/CurrencySelectionSearchInput.tsx index 15260a9413..a828c7628c 100644 --- a/src/navigation/wallet/components/CurrencySelectionSearchInput.tsx +++ b/src/navigation/wallet/components/CurrencySelectionSearchInput.tsx @@ -13,70 +13,69 @@ interface CurrencySelectionSearchInputProps { onSearch?: (query: string) => any; } -const CurrencySelectionSearchInput: React.VFC< - CurrencySelectionSearchInputProps -> = props => { - const theme = useTheme(); - const {t} = useTranslation(); - const {debounceWait, onSearch} = props; - const [query, setQuery] = useState(''); - const queryRef = useRef(query); - queryRef.current = query; +const CurrencySelectionSearchInput: React.VFC = + props => { + const theme = useTheme(); + const {t} = useTranslation(); + const {debounceWait, onSearch} = props; + const [query, setQuery] = useState(''); + const queryRef = useRef(query); + queryRef.current = query; - const placeHolderTextColor = theme.dark ? NeutralSlate : '#6F7782'; + const placeHolderTextColor = theme.dark ? NeutralSlate : '#6F7782'; - const debouncedOnSearch = useMemo(() => { - const fn = (text: string) => { - onSearch?.(text); - }; - - if (!debounceWait) { - return fn; - } + const debouncedOnSearch = useMemo(() => { + const fn = (text: string) => { + onSearch?.(text); + }; - return debounce((text: string) => { - if (queryRef.current) { - fn(text); + if (!debounceWait) { + return fn; } - }, debounceWait); - }, [onSearch, debounceWait]); - const onChangeText = useMemo(() => { - return (text: string) => { - setQuery(text); + return debounce((text: string) => { + if (queryRef.current) { + fn(text); + } + }, debounceWait); + }, [onSearch, debounceWait]); - // if 2+ char, trigger debounced search - // else if 1 char, do nothing - // else if 0 char, clear search immediately - if (!text) { - onSearch?.(text); - } else if (text.length > 1) { - debouncedOnSearch(text); + const onChangeText = useMemo(() => { + return (text: string) => { + setQuery(text); + + // if 2+ char, trigger debounced search + // else if 1 char, do nothing + // else if 0 char, clear search immediately + if (!text) { + onSearch?.(text); + } else if (text.length > 1) { + debouncedOnSearch(text); + } + }; + }, [setQuery, debouncedOnSearch, onSearch]); + + const onSearchPress = () => { + // clear search immediately + if (query) { + setQuery(''); + onSearch?.(''); } }; - }, [setQuery, debouncedOnSearch, onSearch]); - const onSearchPress = () => { - // clear search immediately - if (query) { - setQuery(''); - onSearch?.(''); - } + return ( + ( + + {query ? : } + + )} + /> + ); }; - return ( - ( - - {query ? : } - - )} - /> - ); -}; - export default CurrencySelectionSearchInput; diff --git a/src/navigation/wallet/screens/AddWallet.tsx b/src/navigation/wallet/screens/AddWallet.tsx index 2e43bf9a08..1f8e35a45b 100644 --- a/src/navigation/wallet/screens/AddWallet.tsx +++ b/src/navigation/wallet/screens/AddWallet.tsx @@ -1,4 +1,4 @@ -import React, {useCallback, useEffect, useLayoutEffect, useState} from 'react'; +import React, {useCallback, useEffect, useState} from 'react'; import { BaseText, H4, @@ -261,7 +261,7 @@ const AddWallet: React.FC = ({navigation, route}) => { const withinReceiveSettings = isWithinReceiveSettings(navigation.getParent()); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => { return ( diff --git a/src/navigation/wallet/screens/AddingOptions.tsx b/src/navigation/wallet/screens/AddingOptions.tsx index f8924fec57..a35072cb22 100644 --- a/src/navigation/wallet/screens/AddingOptions.tsx +++ b/src/navigation/wallet/screens/AddingOptions.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import { ActiveOpacity, OptionContainer, @@ -34,7 +34,7 @@ const AddingOptions: React.FC = () => { const {key} = route.params; const [showMultisigOptions, setShowMultisigOptions] = useState(false); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Select Wallet Type')}, headerTitleAlign: 'center', diff --git a/src/navigation/wallet/screens/AmountScreen.tsx b/src/navigation/wallet/screens/AmountScreen.tsx index 6887ce4af5..f15fda1c5d 100644 --- a/src/navigation/wallet/screens/AmountScreen.tsx +++ b/src/navigation/wallet/screens/AmountScreen.tsx @@ -1,5 +1,5 @@ import {StackScreenProps} from '@react-navigation/stack'; -import React, {useLayoutEffect, useRef, useState} from 'react'; +import React, {useEffect, useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; import styled from 'styled-components/native'; import Amount from '../../../components/amount/Amount'; @@ -63,7 +63,7 @@ const AmountScreen: React.VFC< const onSendMaxPressedRef = useRef(onSendMaxPressed); onSendMaxPressedRef.current = onSendMaxPressed; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ ...(headerTitle && {headerTitle}), headerRight: sendMaxEnabled diff --git a/src/navigation/wallet/screens/Backup.tsx b/src/navigation/wallet/screens/Backup.tsx index af0beefad7..d2937ad75c 100644 --- a/src/navigation/wallet/screens/Backup.tsx +++ b/src/navigation/wallet/screens/Backup.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import styled from 'styled-components/native'; import {H3, Paragraph, TextAlign} from '../../../components/styled/Text'; import { @@ -121,7 +121,7 @@ const BackupScreen: React.FC = ({route}) => { }); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ gestureEnabled: false, headerLeft: () => null, diff --git a/src/navigation/wallet/screens/Copayers.tsx b/src/navigation/wallet/screens/Copayers.tsx index d2572d9e58..4e758f537a 100644 --- a/src/navigation/wallet/screens/Copayers.tsx +++ b/src/navigation/wallet/screens/Copayers.tsx @@ -1,4 +1,4 @@ -import React, {useState, useLayoutEffect} from 'react'; +import React, {useState, useEffect} from 'react'; import {StackNavigationProp} from '@react-navigation/stack'; import {TouchableOpacity} from 'react-native-gesture-handler'; import Clipboard from '@react-native-community/clipboard'; @@ -75,7 +75,7 @@ const Copayers: React.FC = props => { const theme = useTheme(); const [refreshing, setRefreshing] = useState(false); - useLayoutEffect(() => { + useEffect(() => { const walletName = wallet?.walletName || wallet?.credentials?.walletName || diff --git a/src/navigation/wallet/screens/CreateEncryptionPassword.tsx b/src/navigation/wallet/screens/CreateEncryptionPassword.tsx index d37d47121e..26cbd13ac0 100644 --- a/src/navigation/wallet/screens/CreateEncryptionPassword.tsx +++ b/src/navigation/wallet/screens/CreateEncryptionPassword.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useRef, useState} from 'react'; +import React, {useEffect, useRef, useState} from 'react'; import {BaseText, HeaderTitle} from '../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import {RouteProp} from '@react-navigation/core'; @@ -126,7 +126,7 @@ const CreateEncryptionPassword = () => { } }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( {t('Create Encryption Password')} diff --git a/src/navigation/wallet/screens/CreationOptions.tsx b/src/navigation/wallet/screens/CreationOptions.tsx index 02bc7f16b0..fd71aa4046 100644 --- a/src/navigation/wallet/screens/CreationOptions.tsx +++ b/src/navigation/wallet/screens/CreationOptions.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import { ActiveOpacity, OptionContainer, @@ -31,7 +31,7 @@ const CreationOptions: React.FC = () => { const dispatch = useAppDispatch(); const [showMultisigOptions, setShowMultisigOptions] = useState(false); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ gestureEnabled: false, headerTitle: () => {t('Select an option')}, diff --git a/src/navigation/wallet/screens/CurrencySelection.tsx b/src/navigation/wallet/screens/CurrencySelection.tsx index 11f000bdac..05b0683dba 100644 --- a/src/navigation/wallet/screens/CurrencySelection.tsx +++ b/src/navigation/wallet/screens/CurrencySelection.tsx @@ -1,11 +1,4 @@ -import React, { - useCallback, - useEffect, - useLayoutEffect, - useMemo, - useRef, - useState, -} from 'react'; +import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react'; import styled from 'styled-components/native'; import { CtaContainer, @@ -536,7 +529,7 @@ const CurrencySelection: React.VFC = ({ contextHandler() || {}; // Configuring Header - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( {headerTitle || t('Select Currencies')} diff --git a/src/navigation/wallet/screens/CurrencyTokenSelection.tsx b/src/navigation/wallet/screens/CurrencyTokenSelection.tsx index 0f906a70e0..29439f530b 100644 --- a/src/navigation/wallet/screens/CurrencyTokenSelection.tsx +++ b/src/navigation/wallet/screens/CurrencyTokenSelection.tsx @@ -1,11 +1,5 @@ import {StackScreenProps} from '@react-navigation/stack'; -import React, { - useCallback, - useLayoutEffect, - useMemo, - useRef, - useState, -} from 'react'; +import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react'; import {useTranslation} from 'react-i18next'; import {StyleSheet} from 'react-native'; import {FlatList} from 'react-native-gesture-handler'; @@ -309,7 +303,7 @@ const CurrencyTokenSelectionScreen: React.VFC< searchFilter, ]); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( diff --git a/src/navigation/wallet/screens/DeleteKey.tsx b/src/navigation/wallet/screens/DeleteKey.tsx index b14a61f783..02e5b96784 100644 --- a/src/navigation/wallet/screens/DeleteKey.tsx +++ b/src/navigation/wallet/screens/DeleteKey.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {HeaderTitle, H5, Paragraph} from '../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import {RouteProp} from '@react-navigation/core'; @@ -59,7 +59,7 @@ const DeleteKey = () => { params: {keyId}, } = useRoute>(); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Delete Key')}, }); diff --git a/src/navigation/wallet/screens/ExportKey.tsx b/src/navigation/wallet/screens/ExportKey.tsx index 8a4b79f1e7..131e86ad82 100644 --- a/src/navigation/wallet/screens/ExportKey.tsx +++ b/src/navigation/wallet/screens/ExportKey.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import {Paragraph, HeaderTitle, H6} from '../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import styled from 'styled-components/native'; @@ -49,7 +49,7 @@ const ExportKey = () => { const navigation = useNavigation(); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Export Key')}, }); diff --git a/src/navigation/wallet/screens/ExtendedPrivateKey.tsx b/src/navigation/wallet/screens/ExtendedPrivateKey.tsx index 04e1065988..2e4a49fee6 100644 --- a/src/navigation/wallet/screens/ExtendedPrivateKey.tsx +++ b/src/navigation/wallet/screens/ExtendedPrivateKey.tsx @@ -1,5 +1,5 @@ import {useNavigation, useRoute} from '@react-navigation/native'; -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {HeaderTitle, Paragraph, H5} from '../../../components/styled/Text'; import styled from 'styled-components/native'; import {ScreenGutter} from '../../../components/styled/Containers'; @@ -36,7 +36,7 @@ const ExtendedPrivateKey = () => { const [copied, setCopied] = useState(false); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Extended Private Key')}, }); diff --git a/src/navigation/wallet/screens/Import.tsx b/src/navigation/wallet/screens/Import.tsx index 519ff39562..1b9e5057e6 100644 --- a/src/navigation/wallet/screens/Import.tsx +++ b/src/navigation/wallet/screens/Import.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import styled from 'styled-components/native'; import {createMaterialTopTabNavigator} from '@react-navigation/material-top-tabs'; import RecoveryPhrase from '../components/RecoveryPhrase'; @@ -28,7 +28,7 @@ const Import: React.FC = ({route}) => { const Tab = createMaterialTopTabNavigator(); const navigation = useNavigation(); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Import')}, headerTitleAlign: 'center', diff --git a/src/navigation/wallet/screens/KeyExplanation.tsx b/src/navigation/wallet/screens/KeyExplanation.tsx index 6d01ac6c02..e4e3e7a2db 100644 --- a/src/navigation/wallet/screens/KeyExplanation.tsx +++ b/src/navigation/wallet/screens/KeyExplanation.tsx @@ -1,7 +1,7 @@ import {useNavigation} from '@react-navigation/native'; import {StackScreenProps} from '@react-navigation/stack'; -import React, {useRef, useState} from 'react'; -import Carousel, {Pagination} from 'react-native-snap-carousel'; +import React, {useCallback, useMemo, useRef, useState} from 'react'; +import Carousel, {ICarouselInstance} from 'react-native-reanimated-carousel'; import styled from 'styled-components/native'; import Button from '../../../components/button/Button'; import haptic from '../../../components/haptic-feedback/haptic'; @@ -10,12 +10,14 @@ import { CtaContainerAbsolute, WIDTH, } from '../../../components/styled/Containers'; -import {Action} from '../../../styles/colors'; import {useThemeType} from '../../../utils/hooks/useThemeType'; import OnboardingSlide from '../../onboarding/components/OnboardingSlide'; import {OnboardingImage} from '../../onboarding/components/Containers'; import {WalletStackParamList} from '../WalletStack'; import {useTranslation} from 'react-i18next'; +import {useSharedValue} from 'react-native-reanimated'; +import PaginationDots from '../../../components/pagination-dots/PaginationDots'; +import throttle from 'lodash.throttle'; type KeyExplanationScreenProps = StackScreenProps< WalletStackParamList, @@ -85,7 +87,7 @@ const KeyExplanation: React.FC = () => { const {t} = useTranslation(); const navigation = useNavigation(); const themeType = useThemeType(); - const ref = useRef(null); + const ref = useRef(null); const [activeSlideIndex, setActiveSlideIndex] = useState(0); const keyExplanationSlides = [ @@ -112,46 +114,52 @@ const KeyExplanation: React.FC = () => { }, ]; + const throttleOnActiveSlideChange = useMemo( + () => + throttle((index: number) => { + setActiveSlideIndex(Math.round(index)); + }, 300), + [], + ); + + const progressValue = useSharedValue(0); + return ( } + pagingEnabled={true} + snapEnabled={true} ref={ref} - sliderWidth={WIDTH} - itemWidth={Math.round(WIDTH)} - onScrollIndexChanged={(index: number) => { - haptic('impactLight'); - setActiveSlideIndex(index); + scrollAnimationDuration={1000} + onProgressChange={(_, index) => { + if (Math.round(index) !== activeSlideIndex) { + throttleOnActiveSlideChange(index); + } + progressValue.value = index; }} - // @ts-ignore - disableIntervalMomentum={true} + renderItem={slideProps => } /> - + {[...Array(keyExplanationSlides.length)].map((_, index) => { + return ( + + ); + })} - - ), - }); - }, [navigation, t]); - useFocusEffect(() => { - dispatch( - Analytics.track('Bill Pay — Viewed Confirm Page', baseEventParams), + const memoizedKeysAndWalletsList = useMemo( + () => + dispatch( + BuildPayProWalletSelectorList({ + keys, + network: APP_NETWORK, + invoice, + skipThreshold: true, + }), + ), + [dispatch, invoice, keys], ); - }); - const openWalletSelector = async (delay?: number) => { - if (delay) { - await sleep(delay); - } - setWalletSelectorVisible(true); - dispatch( - Analytics.track('Bill Pay - Viewed Wallet Selector', baseEventParams), - ); - }; + useEffect(() => { + return () => { + dispatch(ShopActions.deletedUnsoldGiftCards()); + }; + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); - const createBillPayInvoice = async ({ - transactionCurrency, - }: { - clientId: string; - transactionCurrency: string; - }) => { - dispatch(startOnGoingProcessModal('FETCHING_PAYMENT_INFO')); - const invoiceCreationParams = { - transactionCurrency, - payments: [ - { - amount, - currency: 'USD', - accountId: billPayAccount.id, - }, - ], - }; - return dispatch( - ShopEffects.startCreateBillPayInvoice(invoiceCreationParams), - ); - }; + useEffect(() => { + navigation.setOptions({ + gestureEnabled: false, + headerRight: () => ( + + + + ), + }); + }, [navigation, t]); - const handleBillPayInvoiceOrTxpError = async (err: any) => { - await sleep(400); - dispatch(dismissOnGoingProcessModal()); - const [errorConfig] = await Promise.all([ - dispatch(handleCreateTxProposalError(err)), - sleep(500), - ]); - showError({ - defaultErrorMessage: - err.response?.data?.message || err.message || errorConfig.message, - onDismiss: () => openWalletSelector(400), + useFocusEffect(() => { + dispatch( + Analytics.track('Bill Pay — Viewed Confirm Page', baseEventParams), + ); }); - }; - const onCoinbaseAccountSelect = async (walletRowProps: WalletRowProps) => { - const selectedCoinbaseAccount = walletRowProps.coinbaseAccount!; - const transactionCurrency = dispatch( - getTransactionCurrencyForPayInvoice( - selectedCoinbaseAccount.currency.code, - ), - ); - try { - const { - invoice: newInvoice, - invoiceId, - payments, - } = await createBillPayInvoice({ - clientId: selectedCoinbaseAccount.id, - transactionCurrency, - }); - const {totalBillAmount, serviceFee} = payments.reduce( - (totals, payment) => { - return { - totalBillAmount: totals.totalBillAmount + payment.amount, - serviceFee: totals.serviceFee + payment.convenienceFee, - }; - }, - {totalBillAmount: 0, serviceFee: 0}, + const openWalletSelector = async (delay?: number) => { + if (delay) { + await sleep(delay); + } + setWalletSelectorVisible(true); + dispatch( + Analytics.track('Bill Pay - Viewed Wallet Selector', baseEventParams), ); - const rates = await dispatch(startGetRates({})); - const newTxDetails = dispatch( - buildTxDetails({ - invoice: newInvoice, - wallet: walletRowProps, - rates, - defaultAltCurrencyIsoCode: 'USD', - }), + }; + + const createBillPayInvoice = async ({ + transactionCurrency, + }: { + clientId: string; + transactionCurrency: string; + }) => { + dispatch(startOnGoingProcessModal('FETCHING_PAYMENT_INFO')); + const invoiceCreationParams = { + transactionCurrency, + payments: [ + { + amount, + currency: 'USD', + accountId: billPayAccount.id, + }, + ], + }; + return dispatch( + ShopEffects.startCreateBillPayInvoice(invoiceCreationParams), ); - updateTxDetails(newTxDetails); - setInvoice(newInvoice); - setCoinbaseAccount(selectedCoinbaseAccount); - setConvenienceFee(serviceFee); - setSubtotal(totalBillAmount); - dispatch(dismissOnGoingProcessModal()); - await sleep(1000); - dispatch(Analytics.track('Bill Pay — Selected Wallet', baseEventParams)); - } catch (err) { - handleBillPayInvoiceOrTxpError(err); - } - }; + }; - const onWalletSelect = async (selectedWallet: Wallet) => { - try { - const { - invoice: newInvoice, - invoiceId, - payments, - } = await createBillPayInvoice({ - clientId: selectedWallet.id, - transactionCurrency: selectedWallet.currencyAbbreviation.toUpperCase(), + const handleBillPayInvoiceOrTxpError = async (err: any) => { + await sleep(400); + dispatch(dismissOnGoingProcessModal()); + const [errorConfig] = await Promise.all([ + dispatch(handleCreateTxProposalError(err)), + sleep(500), + ]); + showError({ + defaultErrorMessage: + err.response?.data?.message || err.message || errorConfig.message, + onDismiss: () => openWalletSelector(400), }); - const {totalBillAmount, serviceFee} = payments.reduce( - (totals, payment) => { - return { - totalBillAmount: totals.totalBillAmount + payment.amount, - serviceFee: totals.serviceFee + payment.convenienceFee, - }; - }, - {totalBillAmount: 0, serviceFee: 0}, + }; + + const onCoinbaseAccountSelect = async (walletRowProps: WalletRowProps) => { + const selectedCoinbaseAccount = walletRowProps.coinbaseAccount!; + const transactionCurrency = dispatch( + getTransactionCurrencyForPayInvoice( + selectedCoinbaseAccount.currency.code, + ), ); - const baseUrl = BASE_BITPAY_URLS[APP_NETWORK]; - const paymentUrl = `${baseUrl}/i/${invoiceId}`; - const {txDetails: newTxDetails, txp: newTxp} = await dispatch( - await createPayProTxProposal({ - wallet: selectedWallet, - paymentUrl, + try { + const { invoice: newInvoice, - invoiceID: invoiceId, - message: `${formatFiatAmount(amount, 'USD')} to ${ - billPayAccount[billPayAccount.type].merchantName - } ****${billPayAccount[billPayAccount.type].mask}`, - customData: { - billPayMerchantIds: [ - billPayAccount[billPayAccount.type].merchantId, - ], - service: 'billpay', + invoiceId, + payments, + } = await createBillPayInvoice({ + clientId: selectedCoinbaseAccount.id, + transactionCurrency, + }); + const {totalBillAmount, serviceFee} = payments.reduce( + (totals, payment) => { + return { + totalBillAmount: totals.totalBillAmount + payment.amount, + serviceFee: totals.serviceFee + payment.convenienceFee, + }; }, - }), - ); - setWallet(selectedWallet); - setKey(keys[selectedWallet.keyId]); - updateTxDetails(newTxDetails); - updateTxp(newTxp); - setRecipient({address: newTxDetails.sendingTo.recipientAddress} as { - address: string; - }); - setConvenienceFee(serviceFee); - setSubtotal(totalBillAmount); - dispatch(dismissOnGoingProcessModal()); - await sleep(1000); - dispatch(Analytics.track('Bill Pay — Selected Wallet', baseEventParams)); - } catch (err: any) { - handleBillPayInvoiceOrTxpError(err); - } - }; - - const sendPayment = async (twoFactorCode?: string) => { - dispatch(startOnGoingProcessModal('SENDING_PAYMENT')); - return txp && wallet && recipient - ? await dispatch(startSendPayment({txp, key, wallet, recipient})) - : await dispatch( - coinbasePayInvoice( - invoice!.id, - coinbaseAccount!.currency.code, - twoFactorCode, - ), + {totalBillAmount: 0, serviceFee: 0}, ); - }; + const rates = await dispatch(startGetRates({})); + const newTxDetails = dispatch( + buildTxDetails({ + invoice: newInvoice, + wallet: walletRowProps, + rates, + defaultAltCurrencyIsoCode: 'USD', + }), + ); + updateTxDetails(newTxDetails); + setInvoice(newInvoice); + setCoinbaseAccount(selectedCoinbaseAccount); + setConvenienceFee(serviceFee); + setSubtotal(totalBillAmount); + dispatch(dismissOnGoingProcessModal()); + await sleep(1000); + dispatch( + Analytics.track('Bill Pay — Selected Wallet', baseEventParams), + ); + } catch (err) { + handleBillPayInvoiceOrTxpError(err); + } + }; - const handlePaymentSuccess = async () => { - await sleep(400); - dispatch(dismissOnGoingProcessModal()); - await sleep(400); - setShowPaymentSentModal(true); - dispatch(ShopEffects.startFindBillPayments()).catch(_ => {}); - dispatch( - Analytics.track('Bill Pay — Successful Bill Paid', baseEventParams), - ); - }; + const onWalletSelect = async (selectedWallet: Wallet) => { + try { + const { + invoice: newInvoice, + invoiceId, + payments, + } = await createBillPayInvoice({ + clientId: selectedWallet.id, + transactionCurrency: + selectedWallet.currencyAbbreviation.toUpperCase(), + }); + const {totalBillAmount, serviceFee} = payments.reduce( + (totals, payment) => { + return { + totalBillAmount: totals.totalBillAmount + payment.amount, + serviceFee: totals.serviceFee + payment.convenienceFee, + }; + }, + {totalBillAmount: 0, serviceFee: 0}, + ); + const baseUrl = BASE_BITPAY_URLS[APP_NETWORK]; + const paymentUrl = `${baseUrl}/i/${invoiceId}`; + const {txDetails: newTxDetails, txp: newTxp} = await dispatch( + await createPayProTxProposal({ + wallet: selectedWallet, + paymentUrl, + invoice: newInvoice, + invoiceID: invoiceId, + message: `${formatFiatAmount(amount, 'USD')} to ${ + billPayAccount[billPayAccount.type].merchantName + } ****${billPayAccount[billPayAccount.type].mask}`, + customData: { + billPayMerchantIds: [ + billPayAccount[billPayAccount.type].merchantId, + ], + service: 'billpay', + }, + }), + ); + setWallet(selectedWallet); + setKey(keys[selectedWallet.keyId]); + updateTxDetails(newTxDetails); + updateTxp(newTxp); + setRecipient({address: newTxDetails.sendingTo.recipientAddress} as { + address: string; + }); + setConvenienceFee(serviceFee); + setSubtotal(totalBillAmount); + dispatch(dismissOnGoingProcessModal()); + await sleep(1000); + dispatch( + Analytics.track('Bill Pay — Selected Wallet', baseEventParams), + ); + } catch (err: any) { + handleBillPayInvoiceOrTxpError(err); + } + }; - const showError = ({ - error, - defaultErrorMessage, - onDismiss, - }: { - error?: any; - defaultErrorMessage: string; - onDismiss?: () => Promise; - }) => { - dispatch( - AppActions.showBottomNotificationModal( - CustomErrorMessage({ - title: t('Error'), - errMsg: error?.message || defaultErrorMessage, - action: () => onDismiss && onDismiss(), - }), - ), - ); - }; + const sendPayment = async (twoFactorCode?: string) => { + dispatch(startOnGoingProcessModal('SENDING_PAYMENT')); + return txp && wallet && recipient + ? await dispatch(startSendPayment({txp, key, wallet, recipient})) + : await dispatch( + coinbasePayInvoice( + invoice!.id, + coinbaseAccount!.currency.code, + twoFactorCode, + ), + ); + }; - const handlePaymentFailure = async (error: any) => { - if (wallet && txp) { - await removeTxp(wallet, txp).catch(removeErr => - console.error('error deleting txp', removeErr), + const handlePaymentSuccess = async () => { + await sleep(400); + dispatch(dismissOnGoingProcessModal()); + await sleep(400); + setShowPaymentSentModal(true); + dispatch(ShopEffects.startFindBillPayments()).catch(_ => {}); + dispatch( + Analytics.track('Bill Pay — Successful Bill Paid', baseEventParams), ); - } - updateTxDetails(undefined); - updateTxp(undefined); - setWallet(undefined); - setInvoice(undefined); - setCoinbaseAccount(undefined); - showError({ + }; + + const showError = ({ error, - defaultErrorMessage: t('Could not send transaction'), - onDismiss: () => openWalletSelector(400), - }); - await sleep(400); - setResetSwipeButton(true); - dispatch(Analytics.track('Bill Pay — Failed Bill Paid', baseEventParams)); - }; + defaultErrorMessage, + onDismiss, + }: { + error?: any; + defaultErrorMessage: string; + onDismiss?: () => Promise; + }) => { + dispatch( + AppActions.showBottomNotificationModal( + CustomErrorMessage({ + title: t('Error'), + errMsg: error?.message || defaultErrorMessage, + action: () => onDismiss && onDismiss(), + }), + ), + ); + }; - const request2FA = async () => { - navigator.navigate('Wallet', { - screen: WalletScreens.PAY_PRO_CONFIRM_TWO_FACTOR, - params: { - onSubmit: async twoFactorCode => { - try { - await sendPayment(twoFactorCode); - await handlePaymentSuccess(); - } catch (error: any) { - dispatch(dismissOnGoingProcessModal()); - const invalid2faMessage = CoinbaseErrorMessages.twoFactorInvalid; - error?.message?.includes(CoinbaseErrorMessages.twoFactorInvalid) - ? showError({defaultErrorMessage: invalid2faMessage}) - : handlePaymentFailure(error); - throw error; - } + const handlePaymentFailure = async (error: any) => { + if (wallet && txp) { + await removeTxp(wallet, txp).catch(removeErr => + console.error('error deleting txp', removeErr), + ); + } + updateTxDetails(undefined); + updateTxp(undefined); + setWallet(undefined); + setInvoice(undefined); + setCoinbaseAccount(undefined); + showError({ + error, + defaultErrorMessage: t('Could not send transaction'), + onDismiss: () => openWalletSelector(400), + }); + await sleep(400); + setResetSwipeButton(true); + dispatch(Analytics.track('Bill Pay — Failed Bill Paid', baseEventParams)); + }; + + const request2FA = async () => { + navigator.navigate('Wallet', { + screen: WalletScreens.PAY_PRO_CONFIRM_TWO_FACTOR, + params: { + onSubmit: async twoFactorCode => { + try { + await sendPayment(twoFactorCode); + await handlePaymentSuccess(); + } catch (error: any) { + dispatch(dismissOnGoingProcessModal()); + const invalid2faMessage = CoinbaseErrorMessages.twoFactorInvalid; + error?.message?.includes(CoinbaseErrorMessages.twoFactorInvalid) + ? showError({defaultErrorMessage: invalid2faMessage}) + : handlePaymentFailure(error); + throw error; + } + }, }, - }, - }); - await sleep(400); - setResetSwipeButton(true); - }; + }); + await sleep(400); + setResetSwipeButton(true); + }; - useEffect(() => { - openWalletSelector(100); - }, []); + useEffect(() => { + openWalletSelector(100); + }, []); - return ( - - - <> -
Summary
- ( - - ), - }} - hr - /> - - {wallet || coinbaseAccount ? ( + return ( + + <> - - Summary + ( + + ), }} - fiatOnly - hr - /> - - {fee && fee.fiatAmount !== '$0.00' ? ( - - ) : null} - + {wallet || coinbaseAccount ? ( + <> + + + + {fee && fee.fiatAmount !== '$0.00' ? ( + + ) : null} + + + + + ) : null} + + {wallet || coinbaseAccount ? ( + <> + { + dispatch( + Analytics.track( + 'Bill Pay — Clicked Slide to Confirm', + baseEventParams, + ), + ); + try { + await sendPayment(); + await handlePaymentSuccess(); + } catch (err: any) { + dispatch(dismissOnGoingProcessModal()); + await sleep(400); + const twoFactorRequired = + coinbaseAccount && + err?.message?.includes( + CoinbaseErrorMessages.twoFactorRequired, + ); + twoFactorRequired + ? await request2FA() + : await handlePaymentFailure(err); + } }} - fiatOnly - hr /> - - ) : null} -
- {wallet || coinbaseAccount ? ( - <> - { - dispatch( - Analytics.track( - 'Bill Pay — Clicked Slide to Confirm', - baseEventParams, - ), - ); - try { - await sendPayment(); - await handlePaymentSuccess(); - } catch (err: any) { - dispatch(dismissOnGoingProcessModal()); - await sleep(400); - const twoFactorRequired = - coinbaseAccount && - err?.message?.includes( - CoinbaseErrorMessages.twoFactorRequired, - ); - twoFactorRequired - ? await request2FA() - : await handlePaymentFailure(err); - } - }} - /> - - ) : null} - { - setWalletSelectorVisible(false); - if (!wallet && !coinbaseAccount) { - await sleep(100); - navigation.goBack(); - } - }} - /> + { + setWalletSelectorVisible(false); + if (!wallet && !coinbaseAccount) { + await sleep(100); + navigation.goBack(); + } + }} + /> - { - navigation.dispatch(StackActions.popToTop()); - navigation.dispatch(StackActions.pop()); - navigator.navigate('Bill', { - screen: BillScreens.PAYMENTS, - params: {}, - }); - await sleep(0); - setShowPaymentSentModal(false); - }} - /> -
- ); -}; + { + navigation.dispatch(StackActions.popToTop()); + navigation.dispatch(StackActions.pop()); + navigator.navigate('Bill', { + screen: BillScreens.PAYMENTS, + params: {}, + }); + await sleep(0); + setShowPaymentSentModal(false); + }} + /> + + ); + }; export default Confirm; diff --git a/src/navigation/wallet/screens/send/confirm/Confirm.tsx b/src/navigation/wallet/screens/send/confirm/Confirm.tsx index 4b03482fc0..1c3f2232c2 100644 --- a/src/navigation/wallet/screens/send/confirm/Confirm.tsx +++ b/src/navigation/wallet/screens/send/confirm/Confirm.tsx @@ -1,4 +1,4 @@ -import React, {useState, useEffect, useCallback, useLayoutEffect} from 'react'; +import React, {useState, useEffect, useCallback} from 'react'; import {useNavigation, useRoute, CommonActions} from '@react-navigation/native'; import {RouteProp, StackActions} from '@react-navigation/core'; import {WalletStackParamList} from '../../../WalletStack'; @@ -183,7 +183,7 @@ const Confirm = () => { const feeOptions = GetFeeOptions(chain); const {unitToSatoshi} = dispatch(GetPrecision(currencyAbbreviation, chain)) || {}; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => ( diff --git a/src/navigation/wallet/screens/wallet-settings/Addresses.tsx b/src/navigation/wallet/screens/wallet-settings/Addresses.tsx index 3afd087599..6dbf0cdd84 100644 --- a/src/navigation/wallet/screens/wallet-settings/Addresses.tsx +++ b/src/navigation/wallet/screens/wallet-settings/Addresses.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import { BaseText, H7, @@ -122,7 +122,7 @@ const Addresses = () => { return () => clearTimeout(timer); }, [copiedUnusedAddress]); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Addresses')}, }); diff --git a/src/navigation/wallet/screens/wallet-settings/AllAddresses.tsx b/src/navigation/wallet/screens/wallet-settings/AllAddresses.tsx index f794366948..7478dc44f9 100644 --- a/src/navigation/wallet/screens/wallet-settings/AllAddresses.tsx +++ b/src/navigation/wallet/screens/wallet-settings/AllAddresses.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {BaseText, H7, HeaderTitle} from '../../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import styled from 'styled-components/native'; @@ -98,7 +98,7 @@ const AllAddresses = () => { return () => clearTimeout(timer); }, [copiedUnusedAddress]); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('All Addresses')}, }); diff --git a/src/navigation/wallet/screens/wallet-settings/ClearTransactionHistoryCache.tsx b/src/navigation/wallet/screens/wallet-settings/ClearTransactionHistoryCache.tsx index 20df730ac3..9514de16f0 100644 --- a/src/navigation/wallet/screens/wallet-settings/ClearTransactionHistoryCache.tsx +++ b/src/navigation/wallet/screens/wallet-settings/ClearTransactionHistoryCache.tsx @@ -41,95 +41,94 @@ type ClearTransactionHistoryCacheProps = StackScreenProps< >; const BWC = BwcProvider.getInstance(); -const ClearTransactionHistoryCache: React.FC< - ClearTransactionHistoryCacheProps -> = ({navigation, route}) => { - const {t} = useTranslation(); - const dispatch = useAppDispatch(); - const [buttonState, setButtonState] = useState(); +const ClearTransactionHistoryCache: React.FC = + ({navigation, route}) => { + const {t} = useTranslation(); + const dispatch = useAppDispatch(); + const [buttonState, setButtonState] = useState(); - const {wallet, key} = route.params; + const {wallet, key} = route.params; - const clearCache = async () => { - setButtonState('loading'); + const clearCache = async () => { + setButtonState('loading'); - const walletClient = BWC.getClient(JSON.stringify(wallet.credentials)); + const walletClient = BWC.getClient(JSON.stringify(wallet.credentials)); - walletClient.clearCache(async (err: any) => { - if (err) { - setButtonState('failed'); - showErrorMessage( - CustomErrorMessage({ - errMsg: BWCErrorMessage(err), - title: t('Uh oh, something went wrong'), - action: () => { - setButtonState(undefined); - }, - }), - ); - } else { - setButtonState('success'); - dispatch( - updateWalletTxHistory({ - walletId: wallet.id, - keyId: key.id, - transactionHistory: { - transactions: [], - loadMore: true, - hasConfirmingTxs: false, - }, - }), - ); - navigation.dispatch( - CommonActions.reset({ - index: 1, - routes: [ - { - name: 'KeyOverview', - params: { - id: key.id, - }, + walletClient.clearCache(async (err: any) => { + if (err) { + setButtonState('failed'); + showErrorMessage( + CustomErrorMessage({ + errMsg: BWCErrorMessage(err), + title: t('Uh oh, something went wrong'), + action: () => { + setButtonState(undefined); }, - { - name: 'WalletDetails', - params: { - walletId: wallet.id, - key, - skipInitializeHistory: false, - }, + }), + ); + } else { + setButtonState('success'); + dispatch( + updateWalletTxHistory({ + walletId: wallet.id, + keyId: key.id, + transactionHistory: { + transactions: [], + loadMore: true, + hasConfirmingTxs: false, }, - ], - }), - ); - } - }); - }; + }), + ); + navigation.dispatch( + CommonActions.reset({ + index: 1, + routes: [ + { + name: 'KeyOverview', + params: { + id: key.id, + }, + }, + { + name: 'WalletDetails', + params: { + walletId: wallet.id, + key, + skipInitializeHistory: false, + }, + }, + ], + }), + ); + } + }); + }; - const showErrorMessage = useCallback( - async (msg: BottomNotificationConfig) => { - await sleep(500); - dispatch(showBottomNotificationModal(msg)); - }, - [dispatch], - ); + const showErrorMessage = useCallback( + async (msg: BottomNotificationConfig) => { + await sleep(500); + dispatch(showBottomNotificationModal(msg)); + }, + [dispatch], + ); - return ( - - - - {t( - 'The transaction history and every new incoming transaction are cached in the app. Clearing the cache cleans up the transaction history and synchronizes again from the server.', - )} - + return ( + + + + {t( + 'The transaction history and every new incoming transaction are cached in the app. Clearing the cache cleans up the transaction history and synchronizes again from the server.', + )} + - - - - - - ); -}; + + + + + + ); + }; export default ClearTransactionHistoryCache; diff --git a/src/navigation/wallet/screens/wallet-settings/ExportWallet.tsx b/src/navigation/wallet/screens/wallet-settings/ExportWallet.tsx index 1ddae847fe..30282443b0 100644 --- a/src/navigation/wallet/screens/wallet-settings/ExportWallet.tsx +++ b/src/navigation/wallet/screens/wallet-settings/ExportWallet.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {HeaderTitle, Paragraph} from '../../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import styled from 'styled-components/native'; @@ -104,7 +104,7 @@ const ExportWallet = () => { const [copyButtonState, setCopyButtonState] = useState(); const [sendButtonState, setSendButtonState] = useState(); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Export Wallet')}, }); diff --git a/src/navigation/wallet/screens/wallet-settings/WalletInformation.tsx b/src/navigation/wallet/screens/wallet-settings/WalletInformation.tsx index 3128aa38bd..ddaee03a29 100644 --- a/src/navigation/wallet/screens/wallet-settings/WalletInformation.tsx +++ b/src/navigation/wallet/screens/wallet-settings/WalletInformation.tsx @@ -1,4 +1,4 @@ -import React, {useEffect, useLayoutEffect, useState} from 'react'; +import React, {useEffect, useState} from 'react'; import {H5, H7, HeaderTitle} from '../../../../components/styled/Text'; import {useNavigation, useRoute} from '@react-navigation/native'; import {RouteProp} from '@react-navigation/core'; @@ -116,7 +116,7 @@ const WalletInformation = () => { const [copiedXPubKey, setCopiedXPubKey] = useState(''); const [copiedAddress, setCopiedAddress] = useState(''); - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerTitle: () => {t('Wallet Information')}, }); diff --git a/src/navigation/zenledger/screens/ZenLedgerIntro.tsx b/src/navigation/zenledger/screens/ZenLedgerIntro.tsx index e2a49294a6..e933e992f9 100644 --- a/src/navigation/zenledger/screens/ZenLedgerIntro.tsx +++ b/src/navigation/zenledger/screens/ZenLedgerIntro.tsx @@ -1,4 +1,4 @@ -import React, {useLayoutEffect} from 'react'; +import React, {useEffect} from 'react'; import styled from 'styled-components/native'; import { ActiveOpacity, @@ -22,7 +22,7 @@ import { } from '../../../store/app/app.actions'; import haptic from '../../../components/haptic-feedback/haptic'; import {Analytics} from '../../../store/analytics/analytics.effects'; -import LinearGradient from 'react-native-linear-gradient'; +import {LinearGradient} from 'rnx-gradient/src'; import {useNavigation} from '@react-navigation/native'; import ZenLedgerLogo from '../components/ZenLedgerLogo'; import Back from '../../../components/back/Back'; @@ -111,7 +111,7 @@ const ZenLedgerIntro: React.VFC = () => { ); }; - useLayoutEffect(() => { + useEffect(() => { navigation.setOptions({ headerStyle: { backgroundColor: theme.dark ? Black : 'rgba(0, 133, 102, 0.05)', diff --git a/src/store/app/app.effects.ts b/src/store/app/app.effects.ts index 064c6d82fb..fe2c8eb519 100644 --- a/src/store/app/app.effects.ts +++ b/src/store/app/app.effects.ts @@ -82,10 +82,8 @@ import { getAvailableGiftCards, getCategoriesWithIntegrations, } from '../shop/shop.selectors'; -import {SettingsScreens} from '../../navigation/tabs/settings/SettingsStack'; import {MerchantScreens} from '../../navigation/tabs/shop/merchant/MerchantStack'; import {ShopTabs} from '../../navigation/tabs/shop/ShopHome'; -import {ShopScreens} from '../../navigation/tabs/shop/ShopStack'; import QuickActions, {ShortcutItem} from 'react-native-quick-actions'; import {ShortcutList} from '../../constants/shortcuts'; import {goToBuyCrypto} from '../buy-crypto/buy-crypto.effects'; @@ -974,8 +972,8 @@ export const incomingShopLink = }, }); } else { - navigationRef.navigate('Shop', { - screen: ShopScreens.HOME, + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.SHOP, params: { screen: ShopTabs.GIFT_CARDS, }, @@ -1005,16 +1003,16 @@ export const incomingShopLink = }, }); } else { - navigationRef.navigate('Shop', { - screen: ShopScreens.HOME, + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.SHOP, params: { screen: ShopTabs.SHOP_ONLINE, }, }); } } else if (route.name === 'billpay') { - navigationRef.navigate('Shop', { - screen: ShopScreens.HOME, + navigationRef.navigate(RootStacks.TABS, { + screen: TabsScreens.SHOP, params: { screen: ShopTabs.BILLS, }, @@ -1066,10 +1064,7 @@ export const incomingLink = navigationRef.navigate(RootStacks.TABS, { screen: TabsScreens.SETTINGS, params: { - screen: SettingsScreens.Root, - params: { - redirectTo: redirectTo as any, - }, + redirectTo: redirectTo as any, }, }); }; @@ -1082,6 +1077,15 @@ export const incomingLink = }); }; } + } else if (pathSegments[0] === 'wallet-card') { + const cardPath = pathSegments[1]; + + if (cardPath === 'pairing') { + navigationRef.navigate(RootStacks.CARD, { + screen: CardScreens.PAIRING, + params, + }); + } } else if (pathSegments[0] === 'card') { const cardPath = pathSegments[1]; const createCardHandler = (cb: (cards: Card[]) => void) => { @@ -1094,9 +1098,6 @@ export const incomingLink = } else { navigationRef.navigate(RootStacks.TABS, { screen: TabsScreens.CARD, - params: { - screen: CardScreens.HOME, - }, }); } }; @@ -1113,13 +1114,10 @@ export const incomingLink = }); } else if (cardPath === 'offers') { handler = createCardHandler(cards => { - navigationRef.navigate(RootStacks.TABS, { - screen: TabsScreens.CARD, + navigationRef.navigate(RootStacks.CARD, { + screen: CardScreens.SETTINGS, params: { - screen: CardScreens.SETTINGS, - params: { - id: cards[0].id, - }, + id: cards[0].id, }, }); @@ -1127,13 +1125,10 @@ export const incomingLink = }); } else if (cardPath === 'referral') { handler = createCardHandler(cards => { - navigationRef.navigate(RootStacks.TABS, { - screen: TabsScreens.CARD, + navigationRef.navigate(RootStacks.CARD, { + screen: CardScreens.REFERRAL, params: { - screen: CardScreens.REFERRAL, - params: { - card: cards[0], - }, + card: cards[0], }, }); }); diff --git a/src/store/shop/shop.selectors.ts b/src/store/shop/shop.selectors.ts index 7654e6bb44..6f91e6bbcf 100644 --- a/src/store/shop/shop.selectors.ts +++ b/src/store/shop/shop.selectors.ts @@ -21,11 +21,10 @@ export const selectAvailableGiftCards = createSelector( availableCardMap => getAvailableGiftCards(availableCardMap), ); -export const selectCategoriesAndCurations: AppSelector< - CategoriesAndCurations -> = ({SHOP}) => { - return SHOP.categoriesAndCurations; -}; +export const selectCategoriesAndCurations: AppSelector = + ({SHOP}) => { + return SHOP.categoriesAndCurations; + }; export const selectCategories = createSelector( [selectCategoriesAndCurations], diff --git a/src/store/wallet/effects/paypro/paypro.ts b/src/store/wallet/effects/paypro/paypro.ts index 7d4603c2b7..00072e8062 100644 --- a/src/store/wallet/effects/paypro/paypro.ts +++ b/src/store/wallet/effects/paypro/paypro.ts @@ -72,7 +72,9 @@ export const GetPayProDetails = payload, }; - const payDetails = await bwc.selectPaymentOption(options).catch(async err => { + const payDetails = await bwc + .selectPaymentOption(options) + .catch(async err => { let errorStr; if (err instanceof Error) { errorStr = err.message; @@ -82,13 +84,15 @@ export const GetPayProDetails = dispatch(LogActions.error(`PayPro Details ERR: ${errorStr}`)); if (attempt <= 3) { await new Promise(resolve => setTimeout(resolve, 5000 * attempt)); - return dispatch(GetPayProDetails({ - paymentUrl, - coin, - chain, - payload, - attempt: ++attempt, - })); + return dispatch( + GetPayProDetails({ + paymentUrl, + coin, + chain, + payload, + attempt: ++attempt, + }), + ); } else { throw err; } diff --git a/src/utils/hooks/useDeeplinks.ts b/src/utils/hooks/useDeeplinks.ts index 2c35a2b2ca..92e9023ac2 100644 --- a/src/utils/hooks/useDeeplinks.ts +++ b/src/utils/hooks/useDeeplinks.ts @@ -2,7 +2,6 @@ import { getActionFromState, getStateFromPath, LinkingOptions, - PathConfig, } from '@react-navigation/native'; import {useMemo, useRef} from 'react'; import {Linking} from 'react-native'; @@ -14,12 +13,10 @@ import { APP_UNIVERSAL_LINK_DOMAINS, } from '../../constants/config'; import {BitpayIdScreens} from '../../navigation/bitpay-id/BitpayIdStack'; -import {CardScreens} from '../../navigation/card/CardStack'; import {BuyCryptoScreens} from '../../navigation/services/buy-crypto/BuyCryptoStack'; import {SwapCryptoScreens} from '../../navigation/services/swap-crypto/SwapCryptoStack'; import {CoinbaseScreens} from '../../navigation/coinbase/CoinbaseStack'; import {navigationRef, RootStackParamList, RootStacks} from '../../Root'; -import {TabsScreens, TabsStackParamList} from '../../navigation/tabs/TabsStack'; import {incomingData} from '../../store/scan/scan.effects'; import {showBlur} from '../../store/app/app.actions'; import {incomingLink} from '../../store/app/app.effects'; @@ -40,17 +37,6 @@ const getLinkingConfig = (): LinkingOptions['config'] => ({ [BitpayIdScreens.RECEIVE_SETTINGS]: 'receive-settings', }, }, - [RootStacks.TABS]: { - screens: { - [TabsScreens.CARD]: { - path: 'wallet-card', - initialRouteName: CardScreens.HOME, - screens: { - [CardScreens.PAIRING]: 'pairing', - }, - }, - }, - } as PathConfig, [RootStacks.GIFT_CARD_DEEPLINK]: 'giftcard', [RootStacks.BUY_CRYPTO]: { screens: { diff --git a/tsconfig.json b/tsconfig.json index 13fc130f53..668b42951b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,5 +1,6 @@ { + "extends": "@tsconfig/react-native/tsconfig.json", "compilerOptions": { /* Basic Options */ "target": "esnext", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ @@ -41,7 +42,7 @@ // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ // "typeRoots": [], /* List of folders to include type definitions from. */ - // "types": [], /* Type declaration files to be included in compilation. */ + "types": ["react-native", "jest", "styled-components-react-native"], /* Type declaration files to be included in compilation. */ "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ diff --git a/yarn.lock b/yarn.lock index 6c5167ba24..f0c35b8096 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,41 +7,62 @@ resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.2.0.tgz#e1a84fca468f4b337816fcb7f0964beb620ba855" integrity sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA== -"@ampproject/remapping@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" - integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== +"@ampproject/remapping@^2.1.0", "@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== dependencies: - "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" - integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39" + integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g== dependencies: "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.5": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.0.tgz#c241dc454e5b5917e40d37e525e2f4530c399298" - integrity sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g== +"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.1", "@babel/compat-data@^7.20.5", "@babel/compat-data@^7.21.5": + version "7.21.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.7.tgz#61caffb60776e49a57ba61a88f02bedd8714f6bc" + integrity sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA== -"@babel/core@7.21.0", "@babel/core@^7.1.6", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.20.0", "@babel/core@^7.4.5": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.0.tgz#1341aefdcc14ccc7553fcc688dd8986a2daffc13" - integrity sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA== +"@babel/core@7.20.12": + version "7.20.12" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" + integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== dependencies: - "@ampproject/remapping" "^2.2.0" + "@ampproject/remapping" "^2.1.0" "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.21.0" + "@babel/generator" "^7.20.7" "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-module-transforms" "^7.21.0" - "@babel/helpers" "^7.21.0" - "@babel/parser" "^7.21.0" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helpers" "^7.20.7" + "@babel/parser" "^7.20.7" "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.0" - "@babel/types" "^7.21.0" + "@babel/traverse" "^7.20.12" + "@babel/types" "^7.20.7" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.2" + semver "^6.3.0" + +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.20.0", "@babel/core@^7.4.5": + version "7.21.8" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.8.tgz#2a8c7f0f53d60100ba4c32470ba0281c92aa9aa4" + integrity sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.21.4" + "@babel/generator" "^7.21.5" + "@babel/helper-compilation-targets" "^7.21.5" + "@babel/helper-module-transforms" "^7.21.5" + "@babel/helpers" "^7.21.5" + "@babel/parser" "^7.21.8" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.5" + "@babel/types" "^7.21.5" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -49,20 +70,20 @@ semver "^6.3.0" "@babel/eslint-parser@^7.18.2": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz#4f68f6b0825489e00a24b41b6a1ae35414ecd2f4" - integrity sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ== + version "7.21.8" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.21.8.tgz#59fb6fc4f3b017ab86987c076226ceef7b2b2ef2" + integrity sha512-HLhI+2q+BP3sf78mFUZNCGc10KEmoUqtUT1OCdMZsN+qr4qFeLUod62/zAnF3jNQstwyasDkZnVXwfK2Bml7MQ== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.19.0", "@babel/generator@^7.19.6", "@babel/generator@^7.20.0", "@babel/generator@^7.21.0", "@babel/generator@^7.7.2": - version "7.21.1" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.1.tgz#951cc626057bc0af2c35cd23e9c64d384dea83dd" - integrity sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA== +"@babel/generator@^7.19.0", "@babel/generator@^7.19.6", "@babel/generator@^7.20.0", "@babel/generator@^7.20.7", "@babel/generator@^7.21.5", "@babel/generator@^7.7.2": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.5.tgz#c0c0e5449504c7b7de8236d99338c3e2a340745f" + integrity sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w== dependencies: - "@babel/types" "^7.21.0" + "@babel/types" "^7.21.5" "@jridgewell/gen-mapping" "^0.3.2" "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" @@ -74,38 +95,47 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" - integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz#817f73b6c59726ab39f6ba18c234268a519e5abb" + integrity sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g== dependencies: - "@babel/compat-data" "^7.20.5" - "@babel/helper-validator-option" "^7.18.6" + "@babel/types" "^7.21.5" + +"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz#631e6cc784c7b660417421349aac304c94115366" + integrity sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w== + dependencies: + "@babel/compat-data" "^7.21.5" + "@babel/helper-validator-option" "^7.21.0" browserslist "^4.21.3" lru-cache "^5.1.1" semver "^6.3.0" "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz#64f49ecb0020532f19b1d014b03bccaa1ab85fb9" - integrity sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ== + version "7.21.8" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz#205b26330258625ef8869672ebca1e0dee5a0f02" + integrity sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-environment-visitor" "^7.21.5" "@babel/helper-function-name" "^7.21.0" - "@babel/helper-member-expression-to-functions" "^7.21.0" + "@babel/helper-member-expression-to-functions" "^7.21.5" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-replace-supers" "^7.21.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/helper-split-export-declaration" "^7.18.6" + semver "^6.3.0" "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.20.5": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz#53ff78472e5ce10a52664272a239787107603ebb" - integrity sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg== + version "7.21.8" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz#a7886f61c2e29e21fd4aaeaf1e473deba6b571dc" + integrity sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" regexpu-core "^5.3.1" + semver "^6.3.0" "@babel/helper-define-polyfill-provider@^0.3.3": version "0.3.3" @@ -119,10 +149,10 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-environment-visitor@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" - integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== +"@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz#c769afefd41d171836f7cb63e295bedf689d48ba" + integrity sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ== "@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.21.0": version "7.21.0" @@ -139,33 +169,33 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-member-expression-to-functions@^7.20.7", "@babel/helper-member-expression-to-functions@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz#319c6a940431a133897148515877d2f3269c3ba5" - integrity sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q== +"@babel/helper-member-expression-to-functions@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz#3b1a009af932e586af77c1030fba9ee0bde396c0" + integrity sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg== dependencies: - "@babel/types" "^7.21.0" + "@babel/types" "^7.21.5" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.0", "@babel/helper-module-imports@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.0", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz#ac88b2f76093637489e718a90cec6cf8a9b029af" + integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg== dependencies: - "@babel/types" "^7.18.6" + "@babel/types" "^7.21.4" -"@babel/helper-module-transforms@^7.21.0", "@babel/helper-module-transforms@^7.21.2": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz#160caafa4978ac8c00ac66636cb0fa37b024e2d2" - integrity sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ== +"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@babel/helper-module-transforms@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz#d937c82e9af68d31ab49039136a222b17ac0b420" + integrity sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw== dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-environment-visitor" "^7.21.5" + "@babel/helper-module-imports" "^7.21.4" + "@babel/helper-simple-access" "^7.21.5" "@babel/helper-split-export-declaration" "^7.18.6" "@babel/helper-validator-identifier" "^7.19.1" "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.2" - "@babel/types" "^7.21.2" + "@babel/traverse" "^7.21.5" + "@babel/types" "^7.21.5" "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" @@ -174,10 +204,10 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" - integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.21.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz#345f2377d05a720a4e5ecfa39cbf4474a4daed56" + integrity sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg== "@babel/helper-remap-async-to-generator@^7.18.9": version "7.18.9" @@ -189,24 +219,24 @@ "@babel/helper-wrap-function" "^7.18.9" "@babel/types" "^7.18.9" -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" - integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7", "@babel/helper-replace-supers@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz#a6ad005ba1c7d9bc2973dfde05a1bba7065dde3c" + integrity sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg== dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-member-expression-to-functions" "^7.20.7" + "@babel/helper-environment-visitor" "^7.21.5" + "@babel/helper-member-expression-to-functions" "^7.21.5" "@babel/helper-optimise-call-expression" "^7.18.6" "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.7" - "@babel/types" "^7.20.7" + "@babel/traverse" "^7.21.5" + "@babel/types" "^7.21.5" -"@babel/helper-simple-access@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" - integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== +"@babel/helper-simple-access@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz#d697a7971a5c39eac32c7e63c0921c06c8a249ee" + integrity sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg== dependencies: - "@babel/types" "^7.20.2" + "@babel/types" "^7.21.5" "@babel/helper-skip-transparent-expression-wrappers@^7.16.0", "@babel/helper-skip-transparent-expression-wrappers@^7.20.0": version "7.20.0" @@ -222,10 +252,10 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-string-parser@^7.19.4": - version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" - integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== +"@babel/helper-string-parser@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz#2b3eea65443c6bdc31c22d037c65f6d323b6b2bd" + integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w== "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" @@ -247,14 +277,14 @@ "@babel/traverse" "^7.20.5" "@babel/types" "^7.20.5" -"@babel/helpers@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" - integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== +"@babel/helpers@^7.20.7", "@babel/helpers@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.5.tgz#5bac66e084d7a4d2d9696bdf0175a93f7fb63c08" + integrity sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA== dependencies: "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.0" - "@babel/types" "^7.21.0" + "@babel/traverse" "^7.21.5" + "@babel/types" "^7.21.5" "@babel/highlight@^7.18.6": version "7.18.6" @@ -265,12 +295,28 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.19.0", "@babel/parser@^7.19.6", "@babel/parser@^7.20.0", "@babel/parser@^7.20.7", "@babel/parser@^7.21.0": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.2.tgz#dacafadfc6d7654c3051a66d6fe55b6cb2f2a0b3" - integrity sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ== +"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.19.0", "@babel/parser@^7.19.6", "@babel/parser@^7.20.0", "@babel/parser@^7.20.7", "@babel/parser@^7.21.8": + version "7.21.8" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.8.tgz#642af7d0333eab9c0ad70b14ac5e76dbde7bfdf8" + integrity sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA== + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" + integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-async-generator-functions@^7.0.0": +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz#d9c85589258539a22a901033853101a6198d4ef1" + integrity sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-proposal-optional-chaining" "^7.20.7" + +"@babel/plugin-proposal-async-generator-functions@^7.0.0", "@babel/plugin-proposal-async-generator-functions@^7.20.1": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz#bfb7276d2d573cb67ba379984a2334e262ba5326" integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== @@ -280,7 +326,7 @@ "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.13.0": +"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -288,6 +334,23 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz#77bdd66fb7b605f3a61302d224bdfacf5547977d" + integrity sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-proposal-dynamic-import@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" + integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-proposal-export-default-from@^7.0.0": version "7.18.10" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.18.10.tgz#091f4794dbce4027c03cf4ebc64d3fb96b75c206" @@ -304,6 +367,30 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" +"@babel/plugin-proposal-export-namespace-from@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" + integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + +"@babel/plugin-proposal-json-strings@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" + integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-json-strings" "^7.8.3" + +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-proposal-nullish-coalescing-operator@7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz#141fc20b6857e59459d430c850a0011e36561d99" @@ -312,7 +399,7 @@ "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.1.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8": +"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== @@ -320,7 +407,15 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-object-rest-spread@^7.0.0": +"@babel/plugin-proposal-numeric-separator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" + integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== @@ -331,7 +426,7 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.20.7" -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": +"@babel/plugin-proposal-optional-catch-binding@^7.0.0", "@babel/plugin-proposal-optional-catch-binding@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== @@ -348,7 +443,7 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.0.0", "@babel/plugin-proposal-optional-chaining@^7.1.0", "@babel/plugin-proposal-optional-chaining@^7.13.12": +"@babel/plugin-proposal-optional-chaining@^7.0.0", "@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== @@ -357,6 +452,32 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" +"@babel/plugin-proposal-private-methods@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" + integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-proposal-private-property-in-object@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz#19496bd9883dd83c23c7d7fc45dcd9ad02dfa1dc" + integrity sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + +"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" + integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" @@ -371,14 +492,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-syntax-dynamic-import@^7.0.0": +"@babel/plugin-syntax-class-static-block@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/plugin-syntax-dynamic-import@^7.0.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== @@ -400,11 +528,18 @@ "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz#774d825256f2379d06139be0c723c4dd444f3ca1" - integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.21.4.tgz#3e37fca4f06d93567c1cd9b75156422e90a67107" + integrity sha512-l9xd3N+XG4fZRxEP3vXdK6RW7vN1Uf5dxzRC/09wV86wqZ/YYQooBIGNsiRdfNR3/q2/5pPzV4B54J/9ctX5jw== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-syntax-import-assertions@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -420,14 +555,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.18.6", "@babel/plugin-syntax-jsx@^7.7.2": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" - integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== +"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.21.4", "@babel/plugin-syntax-jsx@^7.7.2": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2" + integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -441,7 +576,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.8.3": +"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== @@ -469,7 +604,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-private-property-in-object@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== @@ -477,11 +619,11 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.20.0", "@babel/plugin-syntax-typescript@^7.7.2": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" - integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.21.4.tgz#2751948e9b7c6d771a8efa59340c15d4a2891ff8" + integrity sha512-xz0D39NvhQn4t4RNsHmDnnsaQizIlUkdtYvLs8La1BlfjQ6JEwxkJGeqJMW2tAXx+q6H+WFuUTXNdYVpEya0YA== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-arrow-functions@7.16.7": version "7.16.7" @@ -490,14 +632,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" - integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.18.6": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz#9bb42a53de447936a57ba256fbf537fc312b6929" + integrity sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA== dependencies: - "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-plugin-utils" "^7.21.5" -"@babel/plugin-transform-async-to-generator@^7.0.0": +"@babel/plugin-transform-async-to-generator@^7.0.0", "@babel/plugin-transform-async-to-generator@^7.18.6": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354" integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== @@ -506,21 +648,21 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-remap-async-to-generator" "^7.18.9" -"@babel/plugin-transform-block-scoped-functions@^7.0.0": +"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-block-scoping@^7.0.0": +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.20.2": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02" integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ== dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-classes@^7.0.0": +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.20.2": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665" integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ== @@ -535,22 +677,45 @@ "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.0.0": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz#704cc2fd155d1c996551db8276d55b9d46e4d0aa" - integrity sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ== +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.18.9": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz#3a2d8bb771cd2ef1cd736435f6552fe502e11b44" + integrity sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q== dependencies: - "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-plugin-utils" "^7.21.5" "@babel/template" "^7.20.7" -"@babel/plugin-transform-destructuring@^7.0.0": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz#8bda578f71620c7de7c93af590154ba331415454" - integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.20.2": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz#73b46d0fd11cd6ef57dea8a381b1215f4959d401" + integrity sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA== dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.18.6": +"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" + integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-duplicate-keys@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" + integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-exponentiation-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" + integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.21.0.tgz#6aeca0adcb81dc627c8986e770bfaa4d9812aff5" integrity sha512-FlFA2Mj87a6sDkW4gfGrQQqwY/dLlBAyJa2dJEZ+FHXUVHBflO2wyKvg+OOEzXfrKYIa4HWl0mgmbCzt0cMb7w== @@ -558,14 +723,14 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-flow" "^7.18.6" -"@babel/plugin-transform-for-of@^7.0.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz#964108c9988de1a60b4be2354a7d7e245f36e86e" - integrity sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ== +"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.18.8": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz#e890032b535f5a2e237a18535f56a9fdaa7b83fc" + integrity sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ== dependencies: - "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-plugin-utils" "^7.21.5" -"@babel/plugin-transform-function-name@^7.0.0": +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== @@ -574,30 +739,56 @@ "@babel/helper-function-name" "^7.18.9" "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-literals@^7.0.0": +"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== dependencies: "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-member-expression-literals@^7.0.0": +"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.1.0", "@babel/plugin-transform-modules-commonjs@^7.13.8": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz#6ff5070e71e3192ef2b7e39820a06fb78e3058e7" - integrity sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA== +"@babel/plugin-transform-modules-amd@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a" + integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== + dependencies: + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6", "@babel/plugin-transform-modules-commonjs@^7.21.5": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz#d69fb947eed51af91de82e4708f676864e5e47bc" + integrity sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ== dependencies: - "@babel/helper-module-transforms" "^7.21.2" + "@babel/helper-module-transforms" "^7.21.5" + "@babel/helper-plugin-utils" "^7.21.5" + "@babel/helper-simple-access" "^7.21.5" + +"@babel/plugin-transform-modules-systemjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz#467ec6bba6b6a50634eea61c9c232654d8a4696e" + integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== + dependencies: + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-module-transforms" "^7.20.11" "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-validator-identifier" "^7.19.1" -"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0": +"@babel/plugin-transform-modules-umd@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" + integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== + dependencies: + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": version "7.20.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== @@ -605,6 +796,13 @@ "@babel/helper-create-regexp-features-plugin" "^7.20.5" "@babel/helper-plugin-utils" "^7.20.2" +"@babel/plugin-transform-new-target@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" + integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-object-assign@^7.16.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.18.6.tgz#7830b4b6f83e1374a5afb9f6111bcfaea872cdd2" @@ -612,7 +810,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-object-super@^7.0.0": +"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== @@ -620,14 +818,14 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz#0ee349e9d1bc96e78e3b37a7af423a4078a7083f" - integrity sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz#18fc4e797cf6d6d972cb8c411dbe8a809fa157db" + integrity sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ== dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-property-literals@^7.0.0": +"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== @@ -656,22 +854,37 @@ "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-transform-react-jsx@^7.0.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz#656b42c2fdea0a6d8762075d58ef9d4e3c4ab8a2" - integrity sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg== + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.5.tgz#bd98f3b429688243e4fa131fe1cbb2ef31ce6f38" + integrity sha512-ELdlq61FpoEkHO6gFRpfj0kUgSwQTGoaEU8eMRoS8Dv3v6e7BjEAj5WMtIBRdHUeAioMhKP5HyxNzNnP+heKbA== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.21.0" + "@babel/helper-module-imports" "^7.21.4" + "@babel/helper-plugin-utils" "^7.21.5" + "@babel/plugin-syntax-jsx" "^7.21.4" + "@babel/types" "^7.21.5" + +"@babel/plugin-transform-regenerator@^7.18.6": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz#576c62f9923f94bcb1c855adc53561fd7913724e" + integrity sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w== + dependencies: + "@babel/helper-plugin-utils" "^7.21.5" + regenerator-transform "^0.15.1" + +"@babel/plugin-transform-reserved-words@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" + integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-runtime@^7.0.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz#2a884f29556d0a68cd3d152dcc9e6c71dfb6eee8" - integrity sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.4.tgz#2e1da21ca597a7d01fc96b699b21d8d2023191aa" + integrity sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA== dependencies: - "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-module-imports" "^7.21.4" "@babel/helper-plugin-utils" "^7.20.2" babel-plugin-polyfill-corejs2 "^0.3.3" babel-plugin-polyfill-corejs3 "^0.6.0" @@ -685,14 +898,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-shorthand-properties@^7.0.0": +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-spread@^7.0.0": +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.19.0": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== @@ -700,7 +913,7 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" -"@babel/plugin-transform-sticky-regex@^7.0.0": +"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== @@ -714,23 +927,38 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-template-literals@^7.0.0": +"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== dependencies: "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-typescript@^7.16.7", "@babel/plugin-transform-typescript@^7.21.0", "@babel/plugin-transform-typescript@^7.5.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz#f0956a153679e3b377ae5b7f0143427151e4c848" - integrity sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg== +"@babel/plugin-transform-typeof-symbol@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" + integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-typescript@^7.16.7", "@babel/plugin-transform-typescript@^7.21.3", "@babel/plugin-transform-typescript@^7.5.0": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.3.tgz#316c5be579856ea890a57ebc5116c5d064658f2b" + integrity sha512-RQxPz6Iqt8T0uw/WsJNReuBpWpBqs/n7mNo18sKLoTbMp+UrEekhH+pKSVC7gWz+DNjo9gryfV8YzCiT45RgMw== dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-create-class-features-plugin" "^7.21.0" "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-typescript" "^7.20.0" -"@babel/plugin-transform-unicode-regex@^7.0.0": +"@babel/plugin-transform-unicode-escapes@^7.18.10": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz#1e55ed6195259b0e9061d81f5ef45a9b009fb7f2" + integrity sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg== + dependencies: + "@babel/helper-plugin-utils" "^7.21.5" + +"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== @@ -738,14 +966,106 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/preset-flow@^7.0.0", "@babel/preset-flow@^7.13.13": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" - integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== +"@babel/preset-env@7.20.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" + integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/compat-data" "^7.20.1" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-transform-flow-strip-types" "^7.18.6" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-async-generator-functions" "^7.20.1" + "@babel/plugin-proposal-class-properties" "^7.18.6" + "@babel/plugin-proposal-class-static-block" "^7.18.6" + "@babel/plugin-proposal-dynamic-import" "^7.18.6" + "@babel/plugin-proposal-export-namespace-from" "^7.18.9" + "@babel/plugin-proposal-json-strings" "^7.18.6" + "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" + "@babel/plugin-proposal-numeric-separator" "^7.18.6" + "@babel/plugin-proposal-object-rest-spread" "^7.20.2" + "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" + "@babel/plugin-proposal-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-private-methods" "^7.18.6" + "@babel/plugin-proposal-private-property-in-object" "^7.18.6" + "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-class-properties" "^7.12.13" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-import-assertions" "^7.20.0" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-transform-arrow-functions" "^7.18.6" + "@babel/plugin-transform-async-to-generator" "^7.18.6" + "@babel/plugin-transform-block-scoped-functions" "^7.18.6" + "@babel/plugin-transform-block-scoping" "^7.20.2" + "@babel/plugin-transform-classes" "^7.20.2" + "@babel/plugin-transform-computed-properties" "^7.18.9" + "@babel/plugin-transform-destructuring" "^7.20.2" + "@babel/plugin-transform-dotall-regex" "^7.18.6" + "@babel/plugin-transform-duplicate-keys" "^7.18.9" + "@babel/plugin-transform-exponentiation-operator" "^7.18.6" + "@babel/plugin-transform-for-of" "^7.18.8" + "@babel/plugin-transform-function-name" "^7.18.9" + "@babel/plugin-transform-literals" "^7.18.9" + "@babel/plugin-transform-member-expression-literals" "^7.18.6" + "@babel/plugin-transform-modules-amd" "^7.19.6" + "@babel/plugin-transform-modules-commonjs" "^7.19.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.6" + "@babel/plugin-transform-modules-umd" "^7.18.6" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" + "@babel/plugin-transform-new-target" "^7.18.6" + "@babel/plugin-transform-object-super" "^7.18.6" + "@babel/plugin-transform-parameters" "^7.20.1" + "@babel/plugin-transform-property-literals" "^7.18.6" + "@babel/plugin-transform-regenerator" "^7.18.6" + "@babel/plugin-transform-reserved-words" "^7.18.6" + "@babel/plugin-transform-shorthand-properties" "^7.18.6" + "@babel/plugin-transform-spread" "^7.19.0" + "@babel/plugin-transform-sticky-regex" "^7.18.6" + "@babel/plugin-transform-template-literals" "^7.18.9" + "@babel/plugin-transform-typeof-symbol" "^7.18.9" + "@babel/plugin-transform-unicode-escapes" "^7.18.10" + "@babel/plugin-transform-unicode-regex" "^7.18.6" + "@babel/preset-modules" "^0.1.5" + "@babel/types" "^7.20.2" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" + core-js-compat "^3.25.1" + semver "^6.3.0" + +"@babel/preset-flow@^7.13.13": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.21.4.tgz#a5de2a1cafa61f0e0b3af9b30ff0295d38d3608f" + integrity sha512-F24cSq4DIBmhq4OzK3dE63NHagb27OPE3eWR+HLekt4Z3Y5MzIIUGF3LlLgV0gN8vzbDViSY7HnrReNVCJXTeA== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.21.0" + "@babel/plugin-transform-flow-strip-types" "^7.21.0" + +"@babel/preset-modules@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" + integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/types" "^7.4.4" + esutils "^2.0.2" "@babel/preset-typescript@7.16.7": version "7.16.7" @@ -756,16 +1076,18 @@ "@babel/helper-validator-option" "^7.16.7" "@babel/plugin-transform-typescript" "^7.16.7" -"@babel/preset-typescript@^7.1.0", "@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.16.7", "@babel/preset-typescript@^7.17.12": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz#bcbbca513e8213691fe5d4b23d9251e01f00ebff" - integrity sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg== +"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.16.7", "@babel/preset-typescript@^7.17.12": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.21.5.tgz#68292c884b0e26070b4d66b202072d391358395f" + integrity sha512-iqe3sETat5EOrORXiQ6rWfoOg2y68Cs75B9wNxdPW4kixJxh7aXQE1KPdWLDniC24T/6dSnguF33W9j/ZZQcmA== dependencies: - "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-plugin-utils" "^7.21.5" "@babel/helper-validator-option" "^7.21.0" - "@babel/plugin-transform-typescript" "^7.21.0" + "@babel/plugin-syntax-jsx" "^7.21.4" + "@babel/plugin-transform-modules-commonjs" "^7.21.5" + "@babel/plugin-transform-typescript" "^7.21.3" -"@babel/register@^7.0.0", "@babel/register@^7.13.16": +"@babel/register@^7.13.16": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.21.0.tgz#c97bf56c2472e063774f31d344c592ebdcefa132" integrity sha512-9nKsPmYDi5DidAqJaQooxIhsLJiNMkGr8ypQ8Uic7cIox7UCDsM7HuUGxdGT7mSDTYbqzIdsOWzfBton/YJrMw== @@ -781,10 +1103,17 @@ resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@7.21.0", "@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.17.2", "@babel/runtime@^7.20.6", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673" - integrity sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw== +"@babel/runtime@7.20.13": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" + integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== + dependencies: + regenerator-runtime "^0.13.11" + +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.17.2", "@babel/runtime@^7.20.6", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.5.tgz#8492dddda9644ae3bda3b45eabe87382caee7200" + integrity sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q== dependencies: regenerator-runtime "^0.13.11" @@ -797,7 +1126,7 @@ "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/traverse@7.19", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2", "@babel/traverse@^7.7.4": +"@babel/traverse@7.19", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.5", "@babel/traverse@^7.21.5", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2", "@babel/traverse@^7.7.4": version "7.19.6" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.6.tgz#7b4c865611df6d99cb131eec2e8ac71656a490dc" integrity sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ== @@ -829,12 +1158,12 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.4", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.2.tgz#92246f6e00f91755893c2876ad653db70c8310d1" - integrity sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw== +"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.4", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.21.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.5.tgz#18dfbd47c39d3904d5db3d3dc2cc80bedb60e5b6" + integrity sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q== dependencies: - "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-string-parser" "^7.21.5" "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" @@ -974,16 +1303,16 @@ integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== "@eslint-community/eslint-utils@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz#a831e6e468b4b2b5ae42bf658bea015bf10bc518" - integrity sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ== + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== dependencies: eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.4.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.4.0.tgz#3e61c564fcd6b921cb789838631c5ee44df09403" - integrity sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ== + version "4.5.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884" + integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ== "@eslint/eslintrc@^1.3.0": version "1.4.1" @@ -1502,7 +1831,7 @@ slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/core@^29.2.1", "@jest/core@^29.5.0": +"@jest/core@^29.2.2", "@jest/core@^29.5.0": version "29.5.0" resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.5.0.tgz#76674b96904484e8214614d17261cc491e5f1f03" integrity sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ== @@ -1788,7 +2117,7 @@ slash "^3.0.0" write-file-atomic "^4.0.1" -"@jest/transform@^29.2.1", "@jest/transform@^29.5.0": +"@jest/transform@^29.2.2", "@jest/transform@^29.5.0": version "29.5.0" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.5.0.tgz#cf9c872d0965f0cbd32f1458aa44a2b1988b00f9" integrity sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw== @@ -2145,46 +2474,48 @@ "@babel/runtime" "^7.7.2" regenerator-runtime "^0.13.3" -"@jridgewell/gen-mapping@^0.1.0": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" - integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== - dependencies: - "@jridgewell/set-array" "^1.0.0" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" - integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": +"@jridgewell/resolve-uri@3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== "@jridgewell/source-map@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" - integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda" + integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@1.4.14": version "1.4.14" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + "@jridgewell/trace-mapping@0.3.9": version "0.3.9" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" @@ -2194,9 +2525,9 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.13", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.17" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" - integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== + version "0.3.18" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" + integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== dependencies: "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" @@ -2216,102 +2547,102 @@ "@json-rpc-tools/types" "^1.7.6" "@pedrouid/environment" "^1.0.1" -"@moralisweb3/api-utils@^2.14.3", "@moralisweb3/api-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/api-utils/-/api-utils-2.18.4.tgz#ca873324c414d86a6aacd8508b21f3d7b75f8ab7" - integrity sha512-lUc5DOOlDdibSfRBhxxZFCHR1yTZhMEkj7Iw234PUh6ZLfnO4JV5XmTFKHUSZ8Nkxf6KBJZpdYqBjvSLq66ncA== +"@moralisweb3/api-utils@^2.14.3", "@moralisweb3/api-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/api-utils/-/api-utils-2.20.0.tgz#3ac65847c9d3727d63cab28c8840931dcf46c4e2" + integrity sha512-FDbPc0VQa75N5Ek1KsRvATMdHCB3k/y4eDVmPvP0ZXj6j1AMLWxYeM44IQpOphVFQVvIskq6KuaG/A+V2atThw== dependencies: - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" axios "^1.2.1" "@moralisweb3/auth@^2.14.3": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/auth/-/auth-2.18.4.tgz#2409a8da53a3c6f2f471a1802e11a176de56bf25" - integrity sha512-Gs9k1Gkuwx985NFu+9Nu9XJMER8b7MQw2IuUlbBk5IpNKqzYs5qeoryUc0H1YGReM77lSrDlIvEtltgSjziYpg== - dependencies: - "@moralisweb3/api-utils" "^2.18.4" - "@moralisweb3/common-aptos-utils" "^2.18.4" - "@moralisweb3/common-auth-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" - "@moralisweb3/common-sol-utils" "^2.18.4" - -"@moralisweb3/common-aptos-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-aptos-utils/-/common-aptos-utils-2.18.4.tgz#78e3c44e8d677ee2ea6ff4c0bc348ee9cf0b157e" - integrity sha512-lM+5zB3momePSGtMHm107GRJHWabQCSD0YHz2B6pywEuolimHu5Or6t5xIPs8iwa8xQwx8b2IKQJNd+7CSi9Tw== - dependencies: - "@moralisweb3/common-core" "^2.18.4" + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/auth/-/auth-2.20.0.tgz#2d2cc4bc9987034f719f08fe1801e38fabeca47b" + integrity sha512-VNCHturyvFWU84wBZv7FrvXEZF2Rj6BKYYiNGiKqAElCfrwwjxTFxp89Mo3CpjNmge1LvIlI9k89m5vVXhMDXQ== + dependencies: + "@moralisweb3/api-utils" "^2.20.0" + "@moralisweb3/common-aptos-utils" "^2.20.0" + "@moralisweb3/common-auth-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" + "@moralisweb3/common-sol-utils" "^2.20.0" + +"@moralisweb3/common-aptos-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-aptos-utils/-/common-aptos-utils-2.20.0.tgz#1ef4a23789ba8ad26be559cebb153fd1d68e5c91" + integrity sha512-sCn60LBh6Nv3Wmrsf+76SamjbqFmgTX6LnARkL85B5zDghgFq7gLkiJIOYqilvYogvewdlxLIm5EphubYwKaEQ== + dependencies: + "@moralisweb3/common-core" "^2.20.0" "@noble/hashes" "^1.2.0" -"@moralisweb3/common-auth-utils@^2.14.3", "@moralisweb3/common-auth-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-auth-utils/-/common-auth-utils-2.18.4.tgz#54804c6fc02e12ecf017e9c6ace0c29d80979dc5" - integrity sha512-SRxh6NNxDjYdgxOPUswwr6PV9Z+GTQHNeyewJHq9cVyFJQAQOwE3YGmeUB8otVgyyd0TTdrJcUSUMnJbNsg+UA== +"@moralisweb3/common-auth-utils@^2.14.3", "@moralisweb3/common-auth-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-auth-utils/-/common-auth-utils-2.20.0.tgz#cdc7c2aa11cad9eb41ebb6c3cdaa64c0edea449b" + integrity sha512-D4EHlJ9CGL7XKckw4W7cEa/6oiviGEyHZilHoTo/jnVMOKkz/IYvnZ5v6b80xIW+kwXhr56VMIPxJO/eXvSXhA== dependencies: "@ethersproject/abi" "^5.7.0" - "@moralisweb3/common-aptos-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" - "@moralisweb3/common-sol-utils" "^2.18.4" + "@moralisweb3/common-aptos-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" + "@moralisweb3/common-sol-utils" "^2.20.0" "@moralisweb3/streams-typings" "^1.0.6" -"@moralisweb3/common-core@^2.14.3", "@moralisweb3/common-core@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-core/-/common-core-2.18.4.tgz#bfeb2e5095e62f653a2bc6c414415caf80de4926" - integrity sha512-O4dhaUnAt6xsK0MeFu/SMXGi/VHjyXqSahpR06aKQoaFBQTD7TGyY0EHYTMkKUYjlgULWBYu8S4XUzI7o2aLMA== +"@moralisweb3/common-core@^2.14.3", "@moralisweb3/common-core@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-core/-/common-core-2.20.0.tgz#6da0040aa1f4603f16a46774512c7232e9c58e8e" + integrity sha512-2eSma19b3URqKMU7lw+yAMX8Z4Q+HA3V8HhehmGWJixpfYLTA6Fx4QTkLoYOCpLCeqL8ZNgoDZ3NxCcYrdQBYg== dependencies: axios "^1.2.1" -"@moralisweb3/common-evm-utils@^2.14.3", "@moralisweb3/common-evm-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-evm-utils/-/common-evm-utils-2.18.4.tgz#8cdcf560ec194234cc5ac95b2191ddb515205344" - integrity sha512-FVgR2VkZL93oM+kJU9zBJo7RQRavf48xQKsIwVsgr/ERUEkuDnM0J36QjtCXzdtUD1NfcmiCt8VbOUwqnLH5oA== +"@moralisweb3/common-evm-utils@^2.14.3", "@moralisweb3/common-evm-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-evm-utils/-/common-evm-utils-2.20.0.tgz#36056c94d11efe4a7601dd514ca1120e924a8c97" + integrity sha512-Hf7LXMnH44DLh+9Ul1MLVZfO+eUuec9U8BlM+ZRcKA7S2KPeZucsKTjkiUzBl7q1QLTi0nEQ16yFp4zfPf8p5Q== dependencies: "@ethersproject/address" "^5.7.0" "@ethersproject/bytes" "^5.7.0" "@ethersproject/transactions" "^5.7.0" - "@moralisweb3/common-core" "^2.18.4" + "@moralisweb3/common-core" "^2.20.0" -"@moralisweb3/common-sol-utils@^2.14.3", "@moralisweb3/common-sol-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-sol-utils/-/common-sol-utils-2.18.4.tgz#a10227f7ffe408278011777ffd29bc98b2cef647" - integrity sha512-RiBQF7FfX5TMw2U0CwryR6N/KBRe+6NwonwB1uYmCRGhn3KEi7zYy1QIjIyN1qHqExledWGcKOFiqiooosjUEA== +"@moralisweb3/common-sol-utils@^2.14.3", "@moralisweb3/common-sol-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-sol-utils/-/common-sol-utils-2.20.0.tgz#77ab23c28d0344152fca702c0adc41fa46492d94" + integrity sha512-n3xbqJuOaXtmsyCN8/eSlsgKzjKlJxWM0M0dHCPYrkUTKQa1YsjpKuDZBIVXR4gEX7jGVXZ7/qiDCNEqfKaUgQ== dependencies: - "@moralisweb3/common-core" "^2.18.4" + "@moralisweb3/common-core" "^2.20.0" bn.js "^5.2.1" bs58 "^5.0.0" buffer "^6.0.3" -"@moralisweb3/common-streams-utils@^2.14.3", "@moralisweb3/common-streams-utils@^2.18.4": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/common-streams-utils/-/common-streams-utils-2.18.4.tgz#a8e7c6472c35eff269bb8e0970f250af46637121" - integrity sha512-RlLRspgMhbQsP5N/jmoTPKmUi+GkorDO8IhnDDzgT9/EvThANjCBJNNb3+JIq40TbpF4JPsvAG0J101JtJwy6w== +"@moralisweb3/common-streams-utils@^2.14.3", "@moralisweb3/common-streams-utils@^2.20.0": + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/common-streams-utils/-/common-streams-utils-2.20.0.tgz#3fde154833bf118333864cbcd228a37bc255c9f6" + integrity sha512-M6ueSPc7pKyx5I5uPtaQAlMzuJo6PEdFZjNdEHoFCfQU43TQnvbmpgqUmeh0KUgxLgD+7R2W4153Iy11OLEOXg== dependencies: "@ethersproject/abi" "^5.7.0" - "@moralisweb3/common-aptos-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" + "@moralisweb3/common-aptos-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" "@moralisweb3/streams-typings" "^1.0.7" "@moralisweb3/evm-api@^2.14.3": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/evm-api/-/evm-api-2.18.4.tgz#df145c1b4c387ec4edf70065c6ec0bfa3aeef66c" - integrity sha512-rpoHJfVhDnTzDDJDxuk18qFu5mWkAO6987pwbyRnuzt5r8Sg+7T8vIfMPMXcovDKAyyRhh7ZUbf94A9T9DS/0g== + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/evm-api/-/evm-api-2.20.0.tgz#a2c74ec0c6ca75ec0d1a8186874080fcc7c2d6e0" + integrity sha512-D34cufq0TLp3bFvpdcMsnGgu86KYnPh6PN7Q64NxLis2P6y0SGV+et5csvtdWGZzGW/SqawmsYP4/s1TUQnDlw== dependencies: - "@moralisweb3/api-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" + "@moralisweb3/api-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" "@moralisweb3/sol-api@^2.14.3": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/sol-api/-/sol-api-2.18.4.tgz#118a5f8214f920b093d3a742c60bb201c38cefd5" - integrity sha512-BUhfErEllot+zKzpABEDn+GhfVJWKc4DQO2XFXXnP28ki4V0WuU+YCoihgfxYQ+dvkt7fev9u4zhv4M2XO5xPA== + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/sol-api/-/sol-api-2.20.0.tgz#ff071a7abf495e9b28267982d08087d0693d591c" + integrity sha512-vXMKug6cPIU7hm1tXIoVvi9TR01ckNe98AVHeeSKl9XRAVjc/8INz0ze7pU0xR61QfMGlTM0vbWpk2b9JKQirw== dependencies: - "@moralisweb3/api-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-sol-utils" "^2.18.4" + "@moralisweb3/api-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-sol-utils" "^2.20.0" "@moralisweb3/streams-typings@^1.0.6", "@moralisweb3/streams-typings@^1.0.7": version "1.0.7" @@ -2319,18 +2650,18 @@ integrity sha512-ShbVqil0KLOTyTjO6z9JewPcVVE3S6kzkQFnW2flGBRsGdKucpkUdOx1HijOLoaikz/9gH92n+lzTvRFIj0AoA== "@moralisweb3/streams@^2.14.3": - version "2.18.4" - resolved "https://registry.yarnpkg.com/@moralisweb3/streams/-/streams-2.18.4.tgz#7764c4e71caacd372335c0b2f4769a6f910c3e6b" - integrity sha512-pQZuLFr5w8c/3yr0IRQib5hc3ldo54ht8eGh1JikA/wLXBMgG5NDPvTzCHlMC5f/HXbh5goNGLNxlp4NphrlQA== + version "2.20.0" + resolved "https://registry.yarnpkg.com/@moralisweb3/streams/-/streams-2.20.0.tgz#895d7bd0ecbdb6d628bc65453b25d55e2ff937ec" + integrity sha512-k6gdariuO+RYQKGmj4R3PRMD0jGP5Q3YFqncAWloMAClwqsxNep1pjQX2UNCJhXOxh3upveSzrSRUWXQ1c/lHA== dependencies: "@ethersproject/abi" "^5.7.0" "@ethersproject/bignumber" "^5.7.0" "@ethersproject/sha2" "^5.7.0" "@ethersproject/strings" "^5.7.0" - "@moralisweb3/api-utils" "^2.18.4" - "@moralisweb3/common-core" "^2.18.4" - "@moralisweb3/common-evm-utils" "^2.18.4" - "@moralisweb3/common-streams-utils" "^2.18.4" + "@moralisweb3/api-utils" "^2.20.0" + "@moralisweb3/common-core" "^2.20.0" + "@moralisweb3/common-evm-utils" "^2.20.0" + "@moralisweb3/common-streams-utils" "^2.20.0" "@moralisweb3/streams-typings" "^1.0.7" ethereumjs-util "^7.1.0" web3-eth-abi "^1.8.0" @@ -2391,18 +2722,16 @@ merge-options "^3.0.4" "@react-native-async-storage/async-storage@^1.15.15", "@react-native-async-storage/async-storage@^1.15.17": - version "1.17.11" - resolved "https://registry.yarnpkg.com/@react-native-async-storage/async-storage/-/async-storage-1.17.11.tgz#7ec329c1b9f610e344602e806b04d7c928a2341d" - integrity sha512-bzs45n5HNcDq6mxXnSsOHysZWn1SbbebNxldBXCQs8dSvF8Aor9KCdpm+TpnnGweK3R6diqsT8lFhX77VX0NFw== + version "1.18.1" + resolved "https://registry.yarnpkg.com/@react-native-async-storage/async-storage/-/async-storage-1.18.1.tgz#b1aea4f07fb1dba3325b857b770671517ddab221" + integrity sha512-70aFW8fVCKl+oA1AKPFDpE6s4t9pulj2QeLX+MabEmzfT3urd/3cckv45WJvtocdoIH/oXA3Y+YcCRJCcNa8mA== dependencies: merge-options "^3.0.4" -"@react-native-community/blur@3.6.0": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@react-native-community/blur/-/blur-3.6.0.tgz#31c9e0f2770519c9b5c4f99418f192246f0d4db8" - integrity sha512-GtDBhpX2pQcjl4VopOC8FktrVufrEfYRwVeMQ2WWckqKIv2BdwvlvWvj88L1WmEdBr9UNcm3rtgz+d+YXkmirA== - dependencies: - prop-types "^15.5.10" +"@react-native-community/blur@4.3.0": + version "4.3.0" + resolved "https://registry.yarnpkg.com/@react-native-community/blur/-/blur-4.3.0.tgz#e5018b3b0bd6de9632ac6cf34e9f8e0f1a9a28ec" + integrity sha512-d6phh39kKcbZ4IluDftiVWqfeFOgjl1AbQWzN47x+hLKQ5GvQJ6QhRvgAuDZ+xbJksrbXgNpMjVYkjsbcVehxg== "@react-native-community/cli-clean@^10.1.1": version "10.1.1" @@ -2433,7 +2762,7 @@ dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@^10.2.0": +"@react-native-community/cli-doctor@^10.2.2": version "10.2.2" resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-10.2.2.tgz#b1893604fa9fc8971064e7c00042350f96868bfe" integrity sha512-49Ep2aQOF0PkbAR/TcyMjOm9XwBa8VQr+/Zzf4SJeYwiYLCT1NZRAVAVjYRXl0xqvq5S5mAGZZShS4AQl4WsZw== @@ -2477,19 +2806,7 @@ glob "^7.1.3" logkitty "^0.7.1" -"@react-native-community/cli-platform-ios@10.2.0": - version "10.2.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.2.0.tgz#be21c0e3bbf17358d540cc23e5556bf679f6322e" - integrity sha512-hIPK3iL/mL+0ChXmQ9uqqzNOKA48H+TAzg+hrxQLll/6dNMxDeK9/wZpktcsh8w+CyhqzKqVernGcQs7tPeKGw== - dependencies: - "@react-native-community/cli-tools" "^10.1.1" - chalk "^4.1.2" - execa "^1.0.0" - fast-xml-parser "^4.0.12" - glob "^7.1.3" - ora "^5.4.1" - -"@react-native-community/cli-platform-ios@^10.2.1": +"@react-native-community/cli-platform-ios@10.2.1", "@react-native-community/cli-platform-ios@^10.2.1": version "10.2.1" resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.2.1.tgz#2e6bd2cb6d48cbb8720d7b7265bb1bab80745f72" integrity sha512-hz4zu4Y6eyj7D0lnZx8Mf2c2si8y+zh/zUTgCTaPPLzQD8jSZNNBtUUiA1cARm2razpe8marCZ1QbTMAGbf3mg== @@ -2501,7 +2818,7 @@ glob "^7.1.3" ora "^5.4.1" -"@react-native-community/cli-plugin-metro@^10.2.0": +"@react-native-community/cli-plugin-metro@^10.2.2": version "10.2.2" resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-10.2.2.tgz#766914e3c8007dfe52b253544c4f6cd8549919ac" integrity sha512-sTGjZlD3OGqbF9v1ajwUIXhGmjw9NyJ/14Lo0sg7xH8Pv4qUd5ZvQ6+DWYrQn3IKFUMfGFWYyL81ovLuPylrpw== @@ -2555,17 +2872,17 @@ dependencies: joi "^17.2.1" -"@react-native-community/cli@10.2.0": - version "10.2.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.2.0.tgz#bcb65bb3dcb03b0fc4e49619d51e12d23396b301" - integrity sha512-QH7AFBz5FX2zTZRH/o3XehHrZ0aZZEL5Sh+23nSEFgSj3bLFfvjjZhuoiRSAo7iiBdvAoXrfxQ8TXgg4Xf/7fw== +"@react-native-community/cli@10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.2.2.tgz#3fa438ba7f19f83e07bc337765fc1cabdcf2cac2" + integrity sha512-aZVcVIqj+OG6CrliR/Yn8wHxrvyzbFBY9cj7n0MvRw/P54QUru2nNqUTSSbqv0Qaa297yHJbe6kFDojDMSTM8Q== dependencies: "@react-native-community/cli-clean" "^10.1.1" "@react-native-community/cli-config" "^10.1.1" "@react-native-community/cli-debugger-ui" "^10.0.0" - "@react-native-community/cli-doctor" "^10.2.0" + "@react-native-community/cli-doctor" "^10.2.2" "@react-native-community/cli-hermes" "^10.2.0" - "@react-native-community/cli-plugin-metro" "^10.2.0" + "@react-native-community/cli-plugin-metro" "^10.2.2" "@react-native-community/cli-server-api" "^10.1.1" "@react-native-community/cli-tools" "^10.1.1" "@react-native-community/cli-types" "^10.0.0" @@ -2607,10 +2924,10 @@ resolved "https://registry.yarnpkg.com/@react-native-community/eslint-plugin/-/eslint-plugin-1.3.0.tgz#9e558170c106bbafaa1ef502bd8e6d4651012bf9" integrity sha512-+zDZ20NUnSWghj7Ku5aFphMzuM9JulqCW+aPXT6IfIXFbb8tzYTTOSeRFOtuekJ99ibW2fUCSsjuKNlwDIbHFg== -"@react-native-community/slider@4.2.4": - version "4.2.4" - resolved "https://registry.yarnpkg.com/@react-native-community/slider/-/slider-4.2.4.tgz#8d88adceeb32f7997a122feba48d7186fca80346" - integrity sha512-uY51UoipQW4ELnFWMU6rTHRc4EUYaW+Z1O9Teijej6NYVYdUcUKq+t7WeBGjMAEc1ipyooMeBqRXToWO5zAU2Q== +"@react-native-community/slider@4.4.2": + version "4.4.2" + resolved "https://registry.yarnpkg.com/@react-native-community/slider/-/slider-4.4.2.tgz#1fea0eb3ae31841fe87bd6c4fc67569066e9cf4b" + integrity sha512-D9bv+3Vd2gairAhnRPAghwccgEmoM7g562pm8i4qB3Esrms5mggF81G3UvCyc0w3jjtFHh8dpQkfEoKiP0NW/Q== "@react-native-masked-view/masked-view@0.2.6": version "0.2.6" @@ -2653,7 +2970,7 @@ react-is "^16.13.0" use-latest-callback "^0.1.5" -"@react-navigation/elements@^1.2.1": +"@react-navigation/elements@^1.2.1", "@react-navigation/elements@^1.3.6": version "1.3.17" resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.17.tgz#9cb95765940f2841916fc71686598c22a3e4067e" integrity sha512-sui8AzHm6TxeEvWT/NEXlz3egYvCUog4tlXA4Xlb2Vxvy3purVXDq/XsM56lJl344U5Aj/jDzkVanOTMWyk4UA== @@ -2682,13 +2999,13 @@ dependencies: nanoid "^3.1.23" -"@react-navigation/stack@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@react-navigation/stack/-/stack-6.0.11.tgz#9a94089da7a6bb6b41084c2b9e88ef542d41345d" - integrity sha512-Osc2mXi0Zh/u92HRCceDqVfVnypTa2sZgYMJDU+vDhHz38negtbCG+cjje6nApSjwC5WTVhYP4OoD5WBSh51+g== +"@react-navigation/stack@6.3.4": + version "6.3.4" + resolved "https://registry.yarnpkg.com/@react-navigation/stack/-/stack-6.3.4.tgz#c3b7a479aea609c0de609f91be7b2539dbae37c2" + integrity sha512-f4vQcbaDPSFHF1i6CnEYbA0Bnk5jRGMoCIs2/Tq0HwsUI62Mui1q5vvIlRDIi5QomJoHzhfTBp9IzMQ/sUQJlg== dependencies: - "@react-navigation/elements" "^1.2.1" - color "^3.1.3" + "@react-navigation/elements" "^1.3.6" + color "^4.2.3" warn-once "^0.1.0" "@segment/analytics-react-native-plugin-appsflyer@0.4.0": @@ -2786,19 +3103,19 @@ dependencies: type-detect "4.0.8" -"@sinonjs/commons@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" - integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== +"@sinonjs/commons@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72" + integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^10.0.2": - version "10.0.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" - integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== + version "10.1.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.1.0.tgz#3595e42b3f0a7df80a9681cf58d8cb418eac1e99" + integrity sha512-w1qd368vtrwttm1PRJWPW1QHlbmHrVDGs1eBH/jZvRPUFS4MNXV9Q33EQdjOdeAxZ7O8+3wM7zxztm2nfUSyKw== dependencies: - "@sinonjs/commons" "^2.0.0" + "@sinonjs/commons" "^3.0.0" "@sinonjs/fake-timers@^9.1.2": version "9.1.2" @@ -2909,7 +3226,7 @@ "@stablelib/binary" "^1.0.1" "@stablelib/wipe" "^1.0.1" -"@stablelib/sha256@1.0.1": +"@stablelib/sha256@1.0.1", "@stablelib/sha256@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@stablelib/sha256/-/sha256-1.0.1.tgz#77b6675b67f9b0ea081d2e31bda4866297a3ae4f" integrity sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ== @@ -3363,9 +3680,14 @@ integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "@tsconfig/node16@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" - integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== + version "1.0.4" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" + integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== + +"@tsconfig/react-native@2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/react-native/-/react-native-2.0.3.tgz#79ad8efc6d3729152da6cb23725b6c364a7349b2" + integrity sha512-jE58snEKBd9DXfyR4+ssZmYJ/W2mOSnNrvljR0aLyQJL9JKX6vlWELHkRjb3HBbcM9Uy0hZGijXbqEAjOERW2A== "@types/babel__core@^7.1.14": version "7.20.0" @@ -3394,9 +3716,9 @@ "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.18.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" - integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== + version "7.18.5" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.5.tgz#c107216842905afafd3b6e774f6f935da6f5db80" + integrity sha512-enCvTL8m/EHS/zIvJno9nE+ndYPh1/oNFzRYRmtUqJICG2VnCSBzMLW5VN2KCQU91f23tsNKR8v7VJJQMatl7Q== dependencies: "@babel/types" "^7.3.0" @@ -3498,13 +3820,14 @@ integrity sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g== "@types/express-serve-static-core@^4.17.33": - version "4.17.33" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz#de35d30a9d637dc1450ad18dd583d75d5733d543" - integrity sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA== + version "4.17.35" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz#c95dd4424f0d32e525d23812aa8ab8e4d3906c4f" + integrity sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg== dependencies: "@types/node" "*" "@types/qs" "*" "@types/range-parser" "*" + "@types/send" "*" "@types/express@*": version "4.17.17" @@ -3565,10 +3888,10 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@29.4.0": - version "29.4.0" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.4.0.tgz#a8444ad1704493e84dbf07bb05990b275b3b9206" - integrity sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ== +"@types/jest@29.2.6": + version "29.2.6" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.2.6.tgz#1d43c8e533463d0437edef30b2d45d5aa3d95b0a" + integrity sha512-XEUC/Tgw3uMh6Ho8GkUtQ2lPhY5Fmgyp3TdlkTJs1W9VgNxs+Ow/x3Elh8lHQKqCbZL0AubQuqWjHVT033Hhrw== dependencies: expect "^29.0.0" pretty-format "^29.0.0" @@ -3642,24 +3965,29 @@ "@types/lodash" "*" "@types/lodash@*", "@types/lodash@^4.14.136", "@types/lodash@^4.14.175": - version "4.14.191" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.191.tgz#09511e7f7cba275acd8b419ddac8da9a6a79e2fa" - integrity sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ== + version "4.14.194" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.194.tgz#b71eb6f7a0ff11bff59fc987134a093029258a76" + integrity sha512-r22s9tAS7imvBt2lyHC9B8AGwWnXaYb1tY09oyLkXDs4vArpYJzw09nj8MLx5VfciBPGIb+ZwG0ssYnEPJxn/g== "@types/mime@*": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10" integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== +"@types/mime@^1": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" + integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== + "@types/minimatch@^3.0.3": version "3.0.5" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== "@types/node@*": - version "18.14.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.14.6.tgz#ae1973dd2b1eeb1825695bb11ebfb746d27e3e93" - integrity sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA== + version "20.1.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.1.4.tgz#83f148d2d1f5fe6add4c53358ba00d97fc4cdb71" + integrity sha512-At4pvmIOki8yuwLtd7BNHl3CiWNbtclUbNtScGx4OHfBd4/oWoJC8KRCIxXwkdndzhxOsPXihrsOoydxBjlE9Q== "@types/node@16.9.1": version "16.9.1" @@ -3671,11 +3999,6 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -"@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== - "@types/papaparse@5.3.7": version "5.3.7" resolved "https://registry.yarnpkg.com/@types/papaparse/-/papaparse-5.3.7.tgz#8d3bf9e62ac2897df596f49d9ca59a15451aa247" @@ -3727,13 +4050,6 @@ dependencies: "@types/react" "*" -"@types/react-addons-shallow-compare@^0.14.22": - version "0.14.22" - resolved "https://registry.yarnpkg.com/@types/react-addons-shallow-compare/-/react-addons-shallow-compare-0.14.22.tgz#25177d8ab88aedfc2937b434b09b1fcbc9c2eccd" - integrity sha512-krgFRorWtbVJLzpJsJD6O27Lew3YHuemVZbL9RFvq8TF1w9DbrHjiiLuIyWIL6AjunBkUrQlErfbUv1TYKiK9w== - dependencies: - "@types/react" "*" - "@types/react-color@^3.0.1": version "3.0.6" resolved "https://registry.yarnpkg.com/@types/react-color/-/react-color-3.0.6.tgz#602fed023802b2424e7cd6ff3594ccd3d5055f9a" @@ -3747,15 +4063,7 @@ resolved "https://registry.yarnpkg.com/@types/react-native-dotenv/-/react-native-dotenv-0.2.0.tgz#32c58422a422c1adf68acce363ed791314d5a8e7" integrity sha512-ZxX+dU/yoQc0jTk+/NWttkiuXceJyN5FpOSqDl0WynN5GDzxwH7OMruQ47qcY8llo2RD3irjvzJ9BwC8gDiq0A== -"@types/react-native-snap-carousel@3.8.5": - version "3.8.5" - resolved "https://registry.yarnpkg.com/@types/react-native-snap-carousel/-/react-native-snap-carousel-3.8.5.tgz#5b3cb208119e3599d5537b5fc83653a155c6275d" - integrity sha512-EMBwQo/om2HZM/J6u8Bvz7i0BEO/v6frrpmlvUQ579CMsgYQPlYzQ1ne4KDdRq08+yDSG8/8AwIi1R+185ROsg== - dependencies: - "@types/react" "*" - "@types/react-native" "*" - -"@types/react-native@*", "@types/react-native@0.71.3": +"@types/react-native@0.71.3": version "0.71.3" resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.71.3.tgz#537f669ed6b38b5ae47444bd9d253c4cff23bed7" integrity sha512-0Uqw1YZ0qbVla0MMWFTANFm6W8KYWNvGQmYfucdecbXivLMcQ2v4PovuYFKr7bE6Bc5nDCUEaga962Y8gcDF7A== @@ -3763,9 +4071,9 @@ "@types/react" "*" "@types/react-native@^0.70": - version "0.70.11" - resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.70.11.tgz#50c3d81e1351aac0562c3341c9bd57885651a2fe" - integrity sha512-FobPtzoNPNHugBKMfzs4Li0Q9ei4tgU8SI1M5Ayg7+t5/+noCm2sknI8uwij22wMkcHcefv8RFx4q28nNVJtCQ== + version "0.70.13" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.70.13.tgz#a38a1378e68dc25fe5911b09c49b8afffe191316" + integrity sha512-VnC/ny8Eynk3fvY4cnNKXpo/0zUhA2gO64RX51yzVofblOP6TR6jciga0kIjI4c+2eUyWNGrahmiolNm+QU6Cw== dependencies: "@types/react" "*" @@ -3800,10 +4108,19 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@18.0.28", "@types/react@^18": - version "18.0.28" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.28.tgz#accaeb8b86f4908057ad629a26635fe641480065" - integrity sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew== +"@types/react@*", "@types/react@^18": + version "18.2.6" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.6.tgz#5cd53ee0d30ffc193b159d3516c8c8ad2f19d571" + integrity sha512-wRZClXn//zxCFW+ye/D2qY65UsYP1Fpex2YXorHc8awoNamkMZSvBxwxdYVInsHOZZd2Ppq8isnSzJL5Mpf8OA== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + +"@types/react@18.0.38": + version "18.0.38" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.38.tgz#02a23bef8848b360a0d1dceef4432c15c21c600c" + integrity sha512-ExsidLLSzYj4cvaQjGnQCk4HFfVT9+EZ9XZsQ8Hsrcn8QNgXtpZ3m9vSIC2MWtx7jHictK6wYhQgGh6ic58oOw== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -3831,9 +4148,9 @@ "@types/node" "*" "@types/scheduler@*": - version "0.16.2" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" - integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== + version "0.16.3" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5" + integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== "@types/secp256k1@^4.0.1": version "4.0.3" @@ -3843,9 +4160,17 @@ "@types/node" "*" "@types/semver@^7.3.12": - version "7.3.13" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" - integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a" + integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw== + +"@types/send@*": + version "0.17.1" + resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.1.tgz#ed4932b8a2a805f1fe362a70f4e62d0ac994e301" + integrity sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q== + dependencies: + "@types/mime" "^1" + "@types/node" "*" "@types/serve-static@*": version "1.15.1" @@ -3929,21 +4254,21 @@ "@types/yargs-parser" "*" "@types/yargs@^17.0.8": - version "17.0.22" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" - integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== + version "17.0.24" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902" + integrity sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw== dependencies: "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^5.30.5": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.55.0.tgz#bc2400c3a23305e8c9a9c04aa40933868aaaeb47" - integrity sha512-IZGc50rtbjk+xp5YQoJvmMPmJEYoC53SiKPXyqWfv15XoD2Y5Kju6zN0DwlmaGJp1Iw33JsWJcQ7nw0lGCGjVg== + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.6.tgz#a350faef1baa1e961698240f922d8de1761a9e2b" + integrity sha512-sXtOgJNEuRU5RLwPUb1jxtToZbgvq3M6FPpY4QENxoOggK+UpTxUBpj6tD8+Qh2g46Pi9We87E+eHnUw8YcGsw== dependencies: "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.55.0" - "@typescript-eslint/type-utils" "5.55.0" - "@typescript-eslint/utils" "5.55.0" + "@typescript-eslint/scope-manager" "5.59.6" + "@typescript-eslint/type-utils" "5.59.6" + "@typescript-eslint/utils" "5.59.6" debug "^4.3.4" grapheme-splitter "^1.0.4" ignore "^5.2.0" @@ -3952,93 +4277,93 @@ tsutils "^3.21.0" "@typescript-eslint/parser@^5.30.5": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.55.0.tgz#8c96a0b6529708ace1dcfa60f5e6aec0f5ed2262" - integrity sha512-ppvmeF7hvdhUUZWSd2EEWfzcFkjJzgNQzVST22nzg958CR+sphy8A6K7LXQZd6V75m1VKjp+J4g/PCEfSCmzhw== + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.6.tgz#bd36f71f5a529f828e20b627078d3ed6738dbb40" + integrity sha512-7pCa6al03Pv1yf/dUg/s1pXz/yGMUBAw5EeWqNTFiSueKvRNonze3hma3lhdsOrQcaOXhbk5gKu2Fludiho9VA== dependencies: - "@typescript-eslint/scope-manager" "5.55.0" - "@typescript-eslint/types" "5.55.0" - "@typescript-eslint/typescript-estree" "5.55.0" + "@typescript-eslint/scope-manager" "5.59.6" + "@typescript-eslint/types" "5.59.6" + "@typescript-eslint/typescript-estree" "5.59.6" debug "^4.3.4" -"@typescript-eslint/scope-manager@5.55.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.55.0.tgz#e863bab4d4183ddce79967fe10ceb6c829791210" - integrity sha512-OK+cIO1ZGhJYNCL//a3ROpsd83psf4dUJ4j7pdNVzd5DmIk+ffkuUIX2vcZQbEW/IR41DYsfJTB19tpCboxQuw== +"@typescript-eslint/scope-manager@5.59.6": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.6.tgz#d43a3687aa4433868527cfe797eb267c6be35f19" + integrity sha512-gLbY3Le9Dxcb8KdpF0+SJr6EQ+hFGYFl6tVY8VxLPFDfUZC7BHFw+Vq7bM5lE9DwWPfx4vMWWTLGXgpc0mAYyQ== dependencies: - "@typescript-eslint/types" "5.55.0" - "@typescript-eslint/visitor-keys" "5.55.0" + "@typescript-eslint/types" "5.59.6" + "@typescript-eslint/visitor-keys" "5.59.6" -"@typescript-eslint/type-utils@5.55.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.55.0.tgz#74bf0233523f874738677bb73cb58094210e01e9" - integrity sha512-ObqxBgHIXj8rBNm0yh8oORFrICcJuZPZTqtAFh0oZQyr5DnAHZWfyw54RwpEEH+fD8suZaI0YxvWu5tYE/WswA== +"@typescript-eslint/type-utils@5.59.6": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.6.tgz#37c51d2ae36127d8b81f32a0a4d2efae19277c48" + integrity sha512-A4tms2Mp5yNvLDlySF+kAThV9VTBPCvGf0Rp8nl/eoDX9Okun8byTKoj3fJ52IJitjWOk0fKPNQhXEB++eNozQ== dependencies: - "@typescript-eslint/typescript-estree" "5.55.0" - "@typescript-eslint/utils" "5.55.0" + "@typescript-eslint/typescript-estree" "5.59.6" + "@typescript-eslint/utils" "5.59.6" debug "^4.3.4" tsutils "^3.21.0" -"@typescript-eslint/types@5.55.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.55.0.tgz#9830f8d3bcbecf59d12f821e5bc6960baaed41fd" - integrity sha512-M4iRh4AG1ChrOL6Y+mETEKGeDnT7Sparn6fhZ5LtVJF1909D5O4uqK+C5NPbLmpfZ0XIIxCdwzKiijpZUOvOug== +"@typescript-eslint/types@5.59.6": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.6.tgz#5a6557a772af044afe890d77c6a07e8c23c2460b" + integrity sha512-tH5lBXZI7T2MOUgOWFdVNUILsI02shyQvfzG9EJkoONWugCG77NDDa1EeDGw7oJ5IvsTAAGVV8I3Tk2PNu9QfA== -"@typescript-eslint/typescript-estree@5.55.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.55.0.tgz#8db7c8e47ecc03d49b05362b8db6f1345ee7b575" - integrity sha512-I7X4A9ovA8gdpWMpr7b1BN9eEbvlEtWhQvpxp/yogt48fy9Lj3iE3ild/1H3jKBBIYj5YYJmS2+9ystVhC7eaQ== +"@typescript-eslint/typescript-estree@5.59.6": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.6.tgz#2fb80522687bd3825504925ea7e1b8de7bb6251b" + integrity sha512-vW6JP3lMAs/Tq4KjdI/RiHaaJSO7IUsbkz17it/Rl9Q+WkQ77EOuOnlbaU8kKfVIOJxMhnRiBG+olE7f3M16DA== dependencies: - "@typescript-eslint/types" "5.55.0" - "@typescript-eslint/visitor-keys" "5.55.0" + "@typescript-eslint/types" "5.59.6" + "@typescript-eslint/visitor-keys" "5.59.6" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/utils@5.55.0", "@typescript-eslint/utils@^5.10.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.55.0.tgz#34e97322e7ae5b901e7a870aabb01dad90023341" - integrity sha512-FkW+i2pQKcpDC3AY6DU54yl8Lfl14FVGYDgBTyGKB75cCwV3KpkpTMFi9d9j2WAJ4271LR2HeC5SEWF/CZmmfw== +"@typescript-eslint/utils@5.59.6", "@typescript-eslint/utils@^5.10.0": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.6.tgz#82960fe23788113fc3b1f9d4663d6773b7907839" + integrity sha512-vzaaD6EXbTS29cVH0JjXBdzMt6VBlv+hE31XktDRMX1j3462wZCJa7VzO2AxXEXcIl8GQqZPcOPuW/Z1tZVogg== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@types/json-schema" "^7.0.9" "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.55.0" - "@typescript-eslint/types" "5.55.0" - "@typescript-eslint/typescript-estree" "5.55.0" + "@typescript-eslint/scope-manager" "5.59.6" + "@typescript-eslint/types" "5.59.6" + "@typescript-eslint/typescript-estree" "5.59.6" eslint-scope "^5.1.1" semver "^7.3.7" -"@typescript-eslint/visitor-keys@5.55.0": - version "5.55.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.55.0.tgz#01ad414fca8367706d76cdb94adf788dc5b664a2" - integrity sha512-q2dlHHwWgirKh1D3acnuApXG+VNXpEY5/AwRxDVuEQpxWaB0jCDe0jFMVMALJ3ebSfuOVE8/rMS+9ZOYGg1GWw== +"@typescript-eslint/visitor-keys@5.59.6": + version "5.59.6" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.6.tgz#673fccabf28943847d0c8e9e8d008e3ada7be6bb" + integrity sha512-zEfbFLzB9ETcEJ4HZEEsCR9HHeNku5/Qw1jSS5McYJv5BR+ftYXwFFAH5Al+xkGaZEqowMwl7uoJjQb1YSPF8Q== dependencies: - "@typescript-eslint/types" "5.55.0" + "@typescript-eslint/types" "5.59.6" eslint-visitor-keys "^3.3.0" "@walletconnect/auth-client@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@walletconnect/auth-client/-/auth-client-2.0.3.tgz#c75687d00f57797b0a1620bf8b12dea91341721f" - integrity sha512-PU28c1xmx27arRcd675/CdJrK5QHntdPaMLkqOKmrFmtgi5L/kS1vPFPJ3txT/eXyuIf3cQDsore6G4gr/iajw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/@walletconnect/auth-client/-/auth-client-2.1.0.tgz#47b794cf807d6211fe3a87531f7fca7c6838fd3c" + integrity sha512-k6zZLEdlBpYIvbOL5tBWd+3DUJ2R4VFDyHpdp4TuRzC//njRkIzRSksEnsr8gN8P+IKuoJTLPsDy2sWR4qVTNQ== dependencies: "@ethersproject/hash" "^5.7.0" "@ethersproject/transactions" "^5.7.0" "@stablelib/random" "1.0.2" - "@walletconnect/core" "^2.2.1" - "@walletconnect/events" "1.0.0" - "@walletconnect/heartbeat" "1.0.0" - "@walletconnect/jsonrpc-provider" "^1.0.6" - "@walletconnect/jsonrpc-utils" "^1.0.4" + "@stablelib/sha256" "^1.0.1" + "@walletconnect/core" "^2.7.2" + "@walletconnect/events" "^1.0.1" + "@walletconnect/heartbeat" "^1.2.0" + "@walletconnect/jsonrpc-utils" "^1.0.7" "@walletconnect/logger" "^2.0.1" "@walletconnect/time" "^1.0.2" - "@walletconnect/utils" "^2.2.1" + "@walletconnect/utils" "^2.7.2" events "^3.3.0" isomorphic-unfetch "^3.1.0" -"@walletconnect/core@2.4.10", "@walletconnect/core@^2.2.1", "@walletconnect/core@^2.4.6": +"@walletconnect/core@2.4.10", "@walletconnect/core@^2.4.6": version "2.4.10" resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.4.10.tgz#8975996b5c47d0d11a1187b3793215678c3ea3af" integrity sha512-3ZVS07NS9+zG+Mw4MOxYhoJHwCSuIOrq+HuhaTLZZ+NswscZ+GwguF2fTsRNgk4jXkMJodaqUFxfPJeCVVcwHQ== @@ -4060,6 +4385,28 @@ pino "7.11.0" uint8arrays "^3.1.0" +"@walletconnect/core@2.9.1", "@walletconnect/core@^2.7.2": + version "2.9.1" + resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.9.1.tgz#1a333933750f5f933d9b7788a8dae44ce1173063" + integrity sha512-xyWeP0eLhEEDQAVJSmqs4n/AClKUM+8os2ZFe7BTuw1tFYjeLNVDtKCHziVOSTh8wEChMsKSGKA4zerQoH8mAQ== + dependencies: + "@walletconnect/heartbeat" "1.2.1" + "@walletconnect/jsonrpc-provider" "1.0.13" + "@walletconnect/jsonrpc-types" "1.0.3" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/jsonrpc-ws-connection" "1.0.13" + "@walletconnect/keyvaluestorage" "^1.0.2" + "@walletconnect/logger" "^2.0.1" + "@walletconnect/relay-api" "^1.0.9" + "@walletconnect/relay-auth" "^1.0.4" + "@walletconnect/safe-json" "^1.0.2" + "@walletconnect/time" "^1.0.2" + "@walletconnect/types" "2.9.1" + "@walletconnect/utils" "2.9.1" + events "^3.3.0" + lodash.isequal "4.5.0" + uint8arrays "^3.1.0" + "@walletconnect/encoding@^1.0.1": version "1.0.2" resolved "https://registry.yarnpkg.com/@walletconnect/encoding/-/encoding-1.0.2.tgz#cb3942ad038d6a6bf01158f66773062dd25724da" @@ -4076,14 +4423,7 @@ dependencies: tslib "1.14.1" -"@walletconnect/events@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@walletconnect/events/-/events-1.0.0.tgz#000033a52a618345713d5bd43e8780d120c5accc" - integrity sha512-LLf8krnHo+PsObwMZbGhVaG24SvGTJM0MEtPNhrlQmp27CRV+LwYpHLh7fhABcnUon4aeo7dojCJMmx5jBNWuQ== - dependencies: - keyvaluestorage-interface "^1.0.0" - -"@walletconnect/events@^1.0.0", "@walletconnect/events@^1.0.1": +"@walletconnect/events@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@walletconnect/events/-/events-1.0.1.tgz#2b5f9c7202019e229d7ccae1369a9e86bda7816c" integrity sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ== @@ -4091,14 +4431,6 @@ keyvaluestorage-interface "^1.0.0" tslib "1.14.1" -"@walletconnect/heartbeat@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@walletconnect/heartbeat/-/heartbeat-1.0.0.tgz#d77d10aab467aafc45a09e25547d2158da630198" - integrity sha512-WMWbUNHVkVd7FS38P0DMDlvR38P/kSZcda94t54h8XtC1CfI2M/Cn9TGS6mC6MNuDkZZm+cOdkekibQc+9sNdQ== - dependencies: - "@walletconnect/events" "^1.0.0" - "@walletconnect/time" "^1.0.1" - "@walletconnect/heartbeat@1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@walletconnect/heartbeat/-/heartbeat-1.2.0.tgz#1e87dd234cb72b0587b84f95c4f942f2b4bd0c79" @@ -4111,7 +4443,25 @@ ts-node "^10.9.1" tslib "1.14.1" -"@walletconnect/jsonrpc-provider@1.0.9", "@walletconnect/jsonrpc-provider@^1.0.6": +"@walletconnect/heartbeat@1.2.1", "@walletconnect/heartbeat@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@walletconnect/heartbeat/-/heartbeat-1.2.1.tgz#afaa3a53232ae182d7c9cff41c1084472d8f32e9" + integrity sha512-yVzws616xsDLJxuG/28FqtZ5rzrTA4gUjdEMTbWB5Y8V1XHRmqq4efAxCw5ie7WjbXFSUyBHaWlMR+2/CpQC5Q== + dependencies: + "@walletconnect/events" "^1.0.1" + "@walletconnect/time" "^1.0.2" + tslib "1.14.1" + +"@walletconnect/jsonrpc-provider@1.0.13": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.13.tgz#9a74da648d015e1fffc745f0c7d629457f53648b" + integrity sha512-K73EpThqHnSR26gOyNEL+acEex3P7VWZe6KE12ZwKzAt2H4e5gldZHbjsu2QR9cLeJ8AXuO7kEMOIcRv1QEc7g== + dependencies: + "@walletconnect/jsonrpc-utils" "^1.0.8" + "@walletconnect/safe-json" "^1.0.2" + tslib "1.14.1" + +"@walletconnect/jsonrpc-provider@1.0.9": version "1.0.9" resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.9.tgz#ce5ab64dce6a739110aef204ffeedd668ad343d8" integrity sha512-8CwmiDW42F+F8Qct13lX2x4lJOsi0mNBtUln3VS6TpWioTaL1VfforC/8ULc3tHXv+SNWwAXn2lCZbDcYhdRcA== @@ -4128,6 +4478,23 @@ keyvaluestorage-interface "^1.0.0" tslib "1.14.1" +"@walletconnect/jsonrpc-types@1.0.3", "@walletconnect/jsonrpc-types@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.3.tgz#65e3b77046f1a7fa8347ae02bc1b841abe6f290c" + integrity sha512-iIQ8hboBl3o5ufmJ8cuduGad0CQm3ZlsHtujv9Eu16xq89q+BG7Nh5VLxxUgmtpnrePgFkTwXirCTkwJH1v+Yw== + dependencies: + keyvaluestorage-interface "^1.0.0" + tslib "1.14.1" + +"@walletconnect/jsonrpc-utils@1.0.8", "@walletconnect/jsonrpc-utils@^1.0.7", "@walletconnect/jsonrpc-utils@^1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz#82d0cc6a5d6ff0ecc277cb35f71402c91ad48d72" + integrity sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw== + dependencies: + "@walletconnect/environment" "^1.0.1" + "@walletconnect/jsonrpc-types" "^1.0.3" + tslib "1.14.1" + "@walletconnect/jsonrpc-utils@^1.0.1", "@walletconnect/jsonrpc-utils@^1.0.4", "@walletconnect/jsonrpc-utils@^1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.6.tgz#7fa58e6671247e64e189828103282e6258f5330f" @@ -4148,6 +4515,17 @@ tslib "1.14.1" ws "^7.5.1" +"@walletconnect/jsonrpc-ws-connection@1.0.13": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.13.tgz#23b0cdd899801bfbb44a6556936ec2b93ef2adf4" + integrity sha512-mfOM7uFH4lGtQxG+XklYuFBj6dwVvseTt5/ahOkkmpcAEgz2umuzu7fTR+h5EmjQBdrmYyEBOWADbeaFNxdySg== + dependencies: + "@walletconnect/jsonrpc-utils" "^1.0.6" + "@walletconnect/safe-json" "^1.0.2" + events "^3.3.0" + tslib "1.14.1" + ws "^7.5.1" + "@walletconnect/keyvaluestorage@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.0.2.tgz#92f5ca0f54c1a88a093778842ce0c874d86369c8" @@ -4220,7 +4598,14 @@ dependencies: tslib "1.14.1" -"@walletconnect/sign-client@2.4.10", "@walletconnect/sign-client@^2.4.6": +"@walletconnect/safe-json@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.2.tgz#7237e5ca48046e4476154e503c6d3c914126fa77" + integrity sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA== + dependencies: + tslib "1.14.1" + +"@walletconnect/sign-client@2.4.10": version "2.4.10" resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.4.10.tgz#727072fcbf0c1f84c5370155f0feb7e711733ca4" integrity sha512-8yNpRUVvkoFY5sdj7QbW1+g6QWgP8VLy1xVAqWkjLIiPieMA6IQcOpaEih9Bbq55oTOxjeWO9+E+V8/0bNXVvQ== @@ -4236,14 +4621,29 @@ events "^3.3.0" pino "7.11.0" -"@walletconnect/time@^1.0.1", "@walletconnect/time@^1.0.2": +"@walletconnect/sign-client@^2.4.6": + version "2.9.1" + resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.9.1.tgz#e4aa9c7b15849f450fdd1b03754a7517cb5c8811" + integrity sha512-Z7tFRrJ9btA1vU427vsjUS6cPlHQVcTWdKH90khEc2lv3dB6mU8FNO0VJsw+I2D7CW7WaMWF3nnj6Z1FfotbDg== + dependencies: + "@walletconnect/core" "2.9.1" + "@walletconnect/events" "^1.0.1" + "@walletconnect/heartbeat" "1.2.1" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/logger" "^2.0.1" + "@walletconnect/time" "^1.0.2" + "@walletconnect/types" "2.9.1" + "@walletconnect/utils" "2.9.1" + events "^3.3.0" + +"@walletconnect/time@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@walletconnect/time/-/time-1.0.2.tgz#6c5888b835750ecb4299d28eecc5e72c6d336523" integrity sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g== dependencies: tslib "1.14.1" -"@walletconnect/types@2.4.10", "@walletconnect/types@^2.4.6": +"@walletconnect/types@2.4.10": version "2.4.10" resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.4.10.tgz#7f85a761b9d65e192d2f510ce858383f19a340f7" integrity sha512-AvT3ynXXDXty94SadbjGrqqQA8vB1g9AchHZOakCY/Cfo5etpUFG3PfubWMC1FKe2FPk020nLkc2ghjNxHGGtw== @@ -4255,7 +4655,19 @@ "@walletconnect/logger" "^2.0.1" events "^3.3.0" -"@walletconnect/utils@2.4.10", "@walletconnect/utils@^2.2.1", "@walletconnect/utils@^2.4.6": +"@walletconnect/types@2.9.1", "@walletconnect/types@^2.4.6": + version "2.9.1" + resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.9.1.tgz#cb32ff396cc8880a7395f28716d1e82f407e1372" + integrity sha512-xbGgTPuD6xsb7YMvCESBIH55cjB86QAnnVL50a/ED42YkQzDsOdJ0VGTbrm0tG5cxUOF933rpxZQjxGdP+ovww== + dependencies: + "@walletconnect/events" "^1.0.1" + "@walletconnect/heartbeat" "1.2.1" + "@walletconnect/jsonrpc-types" "1.0.3" + "@walletconnect/keyvaluestorage" "^1.0.2" + "@walletconnect/logger" "^2.0.1" + events "^3.3.0" + +"@walletconnect/utils@2.4.10", "@walletconnect/utils@^2.4.6": version "2.4.10" resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.4.10.tgz#1fbae7973008c06209ccf79797f732e44e97ac1c" integrity sha512-mg01uaGY+DoT5yMVb7eL9zXdXZLRfkz85b63URa6QyfWD0Jbstmviutc5NU2YzzbIuekT3miL4cwPvi0MRklWA== @@ -4276,6 +4688,26 @@ query-string "7.1.1" uint8arrays "^3.1.0" +"@walletconnect/utils@2.9.1", "@walletconnect/utils@^2.7.2": + version "2.9.1" + resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.9.1.tgz#92abc24b3af3ead42a3864e019dbf2f651ab2e47" + integrity sha512-tXeQVebF5oPBvhdmuUyVSkSIBYx/egIi4czav1QrnUpwrUS1LsrFhyWBxSbhN7TXY287ULWkEf6aFpWOHdp5EA== + dependencies: + "@stablelib/chacha20poly1305" "1.0.1" + "@stablelib/hkdf" "1.0.1" + "@stablelib/random" "^1.0.2" + "@stablelib/sha256" "1.0.1" + "@stablelib/x25519" "^1.0.3" + "@walletconnect/relay-api" "^1.0.9" + "@walletconnect/safe-json" "^1.0.2" + "@walletconnect/time" "^1.0.2" + "@walletconnect/types" "2.9.1" + "@walletconnect/window-getters" "^1.0.1" + "@walletconnect/window-metadata" "^1.0.1" + detect-browser "5.3.0" + query-string "7.1.3" + uint8arrays "^3.1.0" + "@walletconnect/web3wallet@1.4.0": version "1.4.0" resolved "https://registry.yarnpkg.com/@walletconnect/web3wallet/-/web3wallet-1.4.0.tgz#40755fc7b20f91c3c38dc827714ecfb8b822bfff" @@ -4387,7 +4819,7 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" -ajv-keywords@^5.0.0: +ajv-keywords@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== @@ -4414,7 +4846,7 @@ ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.8.0: +ajv@^8.0.0, ajv@^8.9.0: version "8.12.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -4541,6 +4973,14 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== +array-buffer-byte-length@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" + integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== + dependencies: + call-bind "^1.0.2" + is-array-buffer "^3.0.1" + array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -4610,7 +5050,7 @@ array.prototype.tosorted@^1.1.1: es-shim-unscopables "^1.0.0" get-intrinsic "^1.1.3" -asap@~2.0.3, asap@~2.0.6: +asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== @@ -4740,9 +5180,9 @@ axios@0.21.1: follow-redirects "^1.10.0" axios@^1.2.1: - version "1.3.6" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.3.6.tgz#1ace9a9fb994314b5f6327960918406fa92c6646" - integrity sha512-PEcdkk7JcdPiMDkvM4K6ZBRYq9keuVJsToxm2zQIM70Qqo2WHTdJZMXcG9X+RmRp2VPNUQC8W1RAGbgt6b1yMg== + version "1.4.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f" + integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA== dependencies: follow-redirects "^1.15.0" form-data "^4.0.0" @@ -4753,12 +5193,12 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-jest@29.2.1: - version "29.2.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.2.1.tgz#213c47e28072de11bdb98c9d29b89f2ab99664f1" - integrity sha512-gQJwArok0mqoREiCYhXKWOgUhElJj9DpnssW6GL8dG7ARYqHEhrM9fmPHTjdqEGRVXZAd6+imo3/Vwa8TjLcsw== +babel-jest@29.2.2: + version "29.2.2" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.2.2.tgz#2c15abd8c2081293c9c3f4f80a4ed1d51542fee5" + integrity sha512-kkq2QSDIuvpgfoac3WZ1OOcHsQQDU5xYk2Ql7tLdJ8BVAYbefEXal+NfS45Y5LVZA7cxC8KYcQMObpCt1J025w== dependencies: - "@jest/transform" "^29.2.1" + "@jest/transform" "^29.2.2" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.1.1" babel-preset-jest "^29.2.0" @@ -4881,14 +5321,14 @@ babel-plugin-polyfill-regenerator@^0.4.1: "@babel/helper-define-polyfill-provider" "^0.3.3" "babel-plugin-styled-components@>= 1.12.0": - version "2.0.7" - resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz#c81ef34b713f9da2b7d3f5550df0d1e19e798086" - integrity sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA== + version "2.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.1.tgz#cd977cc0ff8410d5cbfdd142e42576e9c8794b87" + integrity sha512-c8lJlszObVQPguHkI+akXv8+Jgb9Ccujx0EetL7oIvwU100LxO6XAGe45qry37wUL40a5U9f23SYrivro2XKhA== dependencies: "@babel/helper-annotate-as-pure" "^7.16.0" "@babel/helper-module-imports" "^7.16.0" babel-plugin-syntax-jsx "^6.18.0" - lodash "^4.17.11" + lodash "^4.17.21" picomatch "^2.3.0" babel-plugin-syntax-jsx@^6.18.0: @@ -5005,7 +5445,7 @@ base-x@3.0.4: dependencies: safe-buffer "^5.0.1" -base-x@3.0.9, base-x@^3.0.2, base-x@^3.0.8: +base-x@^3.0.2, base-x@^3.0.8, base-x@^3.0.9: version "3.0.9" resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== @@ -5666,9 +6106,9 @@ can-use-dom@^0.1.0: integrity sha512-ceOhN1DL7Y4O6M0j9ICgmTYziV89WMd96SvSl0REd8PMgrY0B/WBOPoed5S1KUmJqXgUXh8gzSe6E3ae27upsQ== caniuse-lite@^1.0.30001449: - version "1.0.30001462" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001462.tgz#b2e801e37536d453731286857c8520d3dcee15fe" - integrity sha512-PDd20WuOBPiasZ7KbFnmQRyuLE7cFXW2PVd7dmALzbkUXEP46upAuCDm9eY9vho8fgNMGmbAX92QBZHzcnWIqw== + version "1.0.30001487" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001487.tgz#d882d1a34d89c11aea53b8cdc791931bdab5fe1b" + integrity sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA== caseless@~0.12.0: version "0.12.0" @@ -5840,9 +6280,9 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" - integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== + version "2.9.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.0.tgz#5881d0ad96381e117bbe07ad91f2008fe6ffd8db" + integrity sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g== clipboard@^2.0.0: version "2.0.11" @@ -6000,7 +6440,7 @@ color-name@^1.0.0, color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.6.0: +color-string@^1.6.0, color-string@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== @@ -6016,12 +6456,20 @@ color@^3.1.3: color-convert "^1.9.3" color-string "^1.6.0" +color@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" + integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== + dependencies: + color-convert "^2.0.1" + color-string "^1.9.0" + colorette@^1.0.7: version "1.4.0" resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== -colors@1.4.0, colors@^1.1.2: +colors@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== @@ -6205,9 +6653,9 @@ copy-to-clipboard@^3.0.8: toggle-selection "^1.0.6" core-js-compat@^3.25.1: - version "3.29.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.29.0.tgz#1b8d9eb4191ab112022e7f6364b99b65ea52f528" - integrity sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ== + version "3.30.2" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.30.2.tgz#83f136e375babdb8c80ad3c22d67c69098c1dd8b" + integrity sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA== dependencies: browserslist "^4.21.5" @@ -6222,9 +6670,9 @@ core-js@^2.4.0: integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== core-js@^3.0.1: - version "3.29.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.29.0.tgz#0273e142b67761058bcde5615c503c7406b572d6" - integrity sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg== + version "3.30.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.30.2.tgz#6528abfda65e5ad728143ea23f7a14f0dcf503fc" + integrity sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg== core-util-is@1.0.2: version "1.0.2" @@ -6465,14 +6913,14 @@ csstype@^2.5.7: integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w== csstype@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" - integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== "d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6: - version "3.2.2" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.2.tgz#f8ac4705c5b06914a7e0025bbf8d5f1513f6a86e" - integrity sha512-yEEyEAbDrF8C6Ob2myOBLjwBLck1Z89jMGFee0oPsn95GqjerpaOA4ch+vc2l0FNFFwMD5N7OCSEN5eAlsUbgQ== + version "3.2.3" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.3.tgz#39f1f4954e4a09ff69ac597c2d61906b04e84740" + integrity sha512-JRHwbQQ84XuAESWhvIPaUV4/1UYTBOLiOPGWqgFDHZS1D5QN9c57FbH3QpEnQMYiOXNzKUQyGTZf+EVO7RT5TQ== dependencies: internmap "1 - 2" @@ -6668,9 +7116,9 @@ deepmerge@^3.2.0: integrity sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA== deepmerge@^4.2.2: - version "4.3.0" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.0.tgz#65491893ec47756d44719ae520e0e2609233b59b" - integrity sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og== + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== defaults@^1.0.3: version "1.0.4" @@ -6696,7 +7144,7 @@ deferred-leveldown@~0.2.0: dependencies: abstract-leveldown "~0.12.1" -define-properties@^1.1.3, define-properties@^1.1.4: +define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== @@ -6830,9 +7278,9 @@ diffie-hellman@^5.0.0: randombytes "^2.0.0" dijkstrajs@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/dijkstrajs/-/dijkstrajs-1.0.2.tgz#2e48c0d3b825462afe75ab4ad5e829c8ece36257" - integrity sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg== + version "1.0.3" + resolved "https://registry.yarnpkg.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz#4c8dbdea1f0f6478bff94d9c49c784d623e4fc23" + integrity sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA== dir-glob@^3.0.1: version "3.0.1" @@ -6895,7 +7343,7 @@ domelementtype@^2.0.1, domelementtype@^2.3.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: +domhandler@^5.0.2, domhandler@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== @@ -6911,13 +7359,13 @@ domutils@^1.7.0: domelementtype "1" domutils@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c" - integrity sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q== + version "3.1.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" + integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== dependencies: dom-serializer "^2.0.0" domelementtype "^2.3.0" - domhandler "^5.0.1" + domhandler "^5.0.3" dotenv@16.0.1: version "16.0.1" @@ -7000,9 +7448,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.284: - version "1.4.322" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.322.tgz#e0afa1d115b66c1d47869db40d8f2f3729cecc16" - integrity sha512-KovjizNC9XB7dno/2GjxX8VS0SlfPpCjtyoKft+bCO+UfD8bFy16hY4Sh9s0h9BDxbRH2U0zX5VBjpM1LTcNlg== + version "1.4.395" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.395.tgz#0d1abcd410a28737145bd4c117f26ea8195bf671" + integrity sha512-r8IgVPlJsCs7yezgmuBTaOMuu8lgU0mzg+wcLLo0xVy5s+rpuFTI9tEKhHVaMIPgeJPjxwTDHUZqoBEsNMDbCQ== elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.4.1, elliptic@^6.5.2, elliptic@^6.5.3, elliptic@^6.5.4: version "6.5.4" @@ -7056,13 +7504,6 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -encoding@^0.1.11: - version "0.1.13" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" - integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== - dependencies: - iconv-lite "^0.6.2" - end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" @@ -7080,10 +7521,10 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== -entities@^4.2.0, entities@^4.3.0, entities@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" - integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== +entities@^4.2.0, entities@^4.4.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== entities@~2.0.0: version "2.0.3" @@ -7134,18 +7575,18 @@ errr@2.x: resolved "https://registry.yarnpkg.com/errr/-/errr-2.7.0.tgz#a0f718b91b6d4b2e77e1018df612a58c54587137" integrity sha512-SKUoJdXzQsrNoxvp2iGDId6Kpbtw1zghDl+8wK02ijjrLbYJ+q4xznpaVPrKbu5h4fd9xT5k89jGNcj9o1QzMw== -es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4: - version "1.21.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.1.tgz#e6105a099967c08377830a0c9cb589d570dd86c6" - integrity sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg== +es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4, es-abstract@^1.21.2: + version "1.21.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff" + integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg== dependencies: + array-buffer-byte-length "^1.0.0" available-typed-arrays "^1.0.5" call-bind "^1.0.2" es-set-tostringtag "^2.0.1" es-to-primitive "^1.2.1" - function-bind "^1.1.1" function.prototype.name "^1.1.5" - get-intrinsic "^1.1.3" + get-intrinsic "^1.2.0" get-symbol-description "^1.0.0" globalthis "^1.0.3" gopd "^1.0.1" @@ -7153,8 +7594,8 @@ es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4: has-property-descriptors "^1.0.0" has-proto "^1.0.1" has-symbols "^1.0.3" - internal-slot "^1.0.4" - is-array-buffer "^3.0.1" + internal-slot "^1.0.5" + is-array-buffer "^3.0.2" is-callable "^1.2.7" is-negative-zero "^2.0.2" is-regex "^1.1.4" @@ -7162,11 +7603,12 @@ es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4: is-string "^1.0.7" is-typed-array "^1.1.10" is-weakref "^1.0.2" - object-inspect "^1.12.2" + object-inspect "^1.12.3" object-keys "^1.1.1" object.assign "^4.1.4" regexp.prototype.flags "^1.4.3" safe-regex-test "^1.0.0" + string.prototype.trim "^1.2.7" string.prototype.trimend "^1.0.6" string.prototype.trimstart "^1.0.6" typed-array-length "^1.0.4" @@ -7275,9 +7717,9 @@ escape-string-regexp@^1.0.5: integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== eslint-config-prettier@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.7.0.tgz#f1cc58a8afebc50980bd53475451df146c13182d" - integrity sha512-HHVXLSlVUhMSmyW4ZzEuvjpwqamgmlfkutD53cYXLikh4pt/modINRcCIApJ84czDxM4GZInwUrromsDdTImTA== + version "8.8.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz#bfda738d412adc917fd7b038857110efe98c9348" + integrity sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA== eslint-plugin-eslint-comments@^3.2.0: version "3.2.0" @@ -7287,7 +7729,7 @@ eslint-plugin-eslint-comments@^3.2.0: escape-string-regexp "^1.0.5" ignore "^5.0.5" -eslint-plugin-ft-flow@^2.0.1: +eslint-plugin-ft-flow@^2.0.1, eslint-plugin-ft-flow@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/eslint-plugin-ft-flow/-/eslint-plugin-ft-flow-2.0.3.tgz#3b3c113c41902bcbacf0e22b536debcfc3c819e8" integrity sha512-Vbsd/b+LYA99jUbsL6viEUWShFaYQt2YQs3QN3f+aeszOhh2sgdcU0mjzDyD4yyBvMc8qy2uwvBBWfMzEX06tg== @@ -7357,9 +7799,9 @@ eslint-scope@5.1.1, eslint-scope@^5.1.1: estraverse "^4.1.1" eslint-scope@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" - integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== + version "7.2.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.0.tgz#f21ebdafda02352f103634b96dd47d9f81ca117b" + integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" @@ -7376,10 +7818,10 @@ eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint-visitor-keys@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" - integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994" + integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== eslint@8.19.0: version "8.19.0" @@ -7423,13 +7865,13 @@ eslint@8.19.0: v8-compile-cache "^2.0.3" espree@^9.3.2, espree@^9.4.0: - version "9.4.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.1.tgz#51d6092615567a2c2cff7833445e37c28c0065bd" - integrity sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg== + version "9.5.2" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.5.2.tgz#e994e7dc33a082a7a82dceaf12883a829353215b" + integrity sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw== dependencies: acorn "^8.8.0" acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.3.0" + eslint-visitor-keys "^3.4.1" esprima@^4.0.0, esprima@~4.0.0: version "4.0.1" @@ -7865,9 +8307,9 @@ fast-levenshtein@^2.0.6: integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fast-redact@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" - integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== + version "3.2.0" + resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.2.0.tgz#b1e2d39bc731376d28bde844454fa23e26919987" + integrity sha512-zaTadChr+NekyzallAMXATXLOR8MNx3zqpZ0MUF2aGf4EathnG0f32VLODNlY8IuGY3HoRO2L6/6fSzNsLaHIw== fast-safe-stringify@^2.0.7: version "2.1.1" @@ -7880,9 +8322,9 @@ fast-text-encoding@^1.0.6: integrity sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w== fast-xml-parser@^4.0.12: - version "4.1.3" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.1.3.tgz#0254ad0d4d27f07e6b48254b068c0c137488dd97" - integrity sha512-LsNDahCiCcJPe8NO7HijcnukHB24tKbfDDA5IILx9dmW3Frb52lhbeX6MPNUSvyGNfav2VTYpJ/OqkRoVLrh2Q== + version "4.2.2" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.2.2.tgz#cb7310d1e9cf42d22c687b0fae41f3c926629368" + integrity sha512-DLzIPtQqmvmdq3VUKR7T6omPK/VCRNqgFlGtbESfyhcH2R4I8EzK1/K6E8PkRCK2EabWrUHK32NjYRbEFnnz0Q== dependencies: strnum "^1.0.5" @@ -7907,19 +8349,6 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -fbjs@^0.8.4: - version "0.8.18" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.18.tgz#9835e0addb9aca2eff53295cd79ca1cfc7c9662a" - integrity sha512-EQaWFK+fEPSoibjNy8IxUtaFOMXcWsY0JaVrQoZR9zC8N2Ygf9iDITPWjUTVIax95b6I742JFLqASHfsag/vKA== - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.30" - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -8071,14 +8500,9 @@ flatted@^3.1.0: integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== flow-parser@0.*: - version "0.201.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.201.0.tgz#d2005d4dae6fddf60d30f9ae0fb49a13c9c51cfe" - integrity sha512-G4oeDNpNGyIrweF9EnoHatncAihMT0tQgV6NMdyM5I7fhrz9Pr13PJ2KLQ673O4wj9KooTdBpeeYHdDNAQoyyw== - -flow-parser@^0.121.0: - version "0.121.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.121.0.tgz#9f9898eaec91a9f7c323e9e992d81ab5c58e618f" - integrity sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg== + version "0.206.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.206.0.tgz#f4f794f8026535278393308e01ea72f31000bfef" + integrity sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w== flow-parser@^0.185.0: version "0.185.2" @@ -8305,7 +8729,7 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== -functions-have-names@^1.2.2: +functions-have-names@^1.2.2, functions-have-names@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== @@ -8333,12 +8757,13 @@ get-func-name@^2.0.0: integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig== get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" - integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== + version "1.2.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" + integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== dependencies: function-bind "^1.1.1" has "^1.0.3" + has-proto "^1.0.1" has-symbols "^1.0.3" get-package-type@^0.1.0: @@ -8554,9 +8979,9 @@ got@^11.8.5: responselike "^2.0.0" graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: - version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" - integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== grapheme-splitter@^1.0.4: version "1.0.4" @@ -8762,11 +9187,6 @@ hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0, hoist-non-react- dependencies: react-is "^16.7.0" -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" @@ -8780,14 +9200,14 @@ html-parse-stringify@^3.0.1: void-elements "3.1.0" htmlparser2@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.1.tgz#abaa985474fcefe269bc761a779b544d7196d010" - integrity sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA== + version "8.0.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21" + integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA== dependencies: domelementtype "^2.3.0" - domhandler "^5.0.2" + domhandler "^5.0.3" domutils "^3.0.1" - entities "^4.3.0" + entities "^4.4.0" http-cache-semantics@^4.0.0: version "4.1.1" @@ -8888,14 +9308,7 @@ iconv-lite@0.4.24: resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@^0.6.2: - version "0.6.3" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" - integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" + safer-buffer ">= 2.1.2 < 3" idna-uts46-hx@^2.3.1: version "2.3.1" @@ -8995,7 +9408,7 @@ ini@^1.3.4: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -internal-slot@^1.0.3, internal-slot@^1.0.4: +internal-slot@^1.0.3, internal-slot@^1.0.4, internal-slot@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== @@ -9074,7 +9487,7 @@ is-arguments@^1.0.4, is-arguments@^1.1.1: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-array-buffer@^3.0.1: +is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== @@ -9132,10 +9545,10 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-core-module@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" - integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== +is-core-module@^2.11.0, is-core-module@^2.9.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.0.tgz#36ad62f6f73c8253fd6472517a12483cf03e7ec4" + integrity sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ== dependencies: has "^1.0.3" @@ -9370,7 +9783,7 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" -is-stream@^1.0.1, is-stream@^1.1.0: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== @@ -9503,14 +9916,6 @@ isobject@^4.0.0: resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha512-9c4TNAKYXM5PRyVcwUZrF3W09nQ+sO7+jydgs4ZGW9dhsLG2VOlISJABombdQqQRXCwuYG3sYV/puGf5rp0qmA== - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - isomorphic-unfetch@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" @@ -9664,7 +10069,7 @@ jest-cli@^28.1.1: prompts "^2.0.1" yargs "^17.3.1" -jest-cli@^29.2.1: +jest-cli@^29.2.2: version "29.5.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.5.0.tgz#b34c20a6d35968f3ee47a7437ff8e53e086b4a67" integrity sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw== @@ -10341,15 +10746,15 @@ jest-worker@^29.5.0: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@29.2.1: - version "29.2.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.2.1.tgz#352ec0b81a0e436691d546d984cd7d8f72ffd26a" - integrity sha512-K0N+7rx+fv3Us3KhuwRSJt55MMpZPs9Q3WSO/spRZSnsalX8yEYOTQ1PiSN7OvqzoRX4JEUXCbOJRlP4n8m5LA== +jest@29.2.2: + version "29.2.2" + resolved "https://registry.yarnpkg.com/jest/-/jest-29.2.2.tgz#24da83cbbce514718acd698926b7679109630476" + integrity sha512-r+0zCN9kUqoON6IjDdjbrsWobXM/09Nd45kIPRD8kloaRh1z5ZCMdVsgLXGxmlL7UpAJsvCYOQNO+NjvG/gqiQ== dependencies: - "@jest/core" "^29.2.1" + "@jest/core" "^29.2.2" "@jest/types" "^29.2.1" import-local "^3.0.2" - jest-cli "^29.2.1" + jest-cli "^29.2.2" jimp@^0.16.1: version "0.16.13" @@ -10363,9 +10768,9 @@ jimp@^0.16.1: regenerator-runtime "^0.13.3" joi@^17.2.1: - version "17.8.3" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.8.3.tgz#d772fe27a87a5cda21aace5cf11eee8671ca7e6f" - integrity sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w== + version "17.9.2" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.9.2.tgz#8b2e4724188369f55451aebd1d0b1d9482470690" + integrity sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" @@ -10438,31 +10843,6 @@ jsc-android@^250231.0.0: resolved "https://registry.yarnpkg.com/jsc-android/-/jsc-android-250231.0.0.tgz#91720f8df382a108872fa4b3f558f33ba5e95262" integrity sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw== -jscodeshift@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.11.0.tgz#4f95039408f3f06b0e39bb4d53bc3139f5330e2f" - integrity sha512-SdRK2C7jjs4k/kT2mwtO07KJN9RnjxtKn03d9JVj6c3j9WwaLcFYsICYDnLAzY0hp+wG2nxl+Cm2jWLiNVYb8g== - dependencies: - "@babel/core" "^7.1.6" - "@babel/parser" "^7.1.6" - "@babel/plugin-proposal-class-properties" "^7.1.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.1.0" - "@babel/plugin-proposal-optional-chaining" "^7.1.0" - "@babel/plugin-transform-modules-commonjs" "^7.1.0" - "@babel/preset-flow" "^7.0.0" - "@babel/preset-typescript" "^7.1.0" - "@babel/register" "^7.0.0" - babel-core "^7.0.0-bridge.0" - colors "^1.1.2" - flow-parser "0.*" - graceful-fs "^4.2.4" - micromatch "^3.1.10" - neo-async "^2.5.0" - node-dir "^0.1.17" - recast "^0.20.3" - temp "^0.8.1" - write-file-atomic "^2.3.0" - jscodeshift@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.13.1.tgz#69bfe51e54c831296380585c6d9e733512aecdef" @@ -10916,7 +11296,7 @@ lodash@4.17.20: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== -lodash@4.x, lodash@^4.0.1, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4: +lodash@4.x, lodash@^4.0.1, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -11150,16 +11530,6 @@ methods@^1.1.2, methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -metro-babel-transformer@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.73.8.tgz#521374cb9234ba126f3f8d63588db5901308b4ed" - integrity sha512-GO6H/W2RjZ0/gm1pIvdO9EP34s3XN6kzoeyxqmfqKfYhJmYZf1SzXbyiIHyMbJNwJVrsKuHqu32+GopTlKscWw== - dependencies: - "@babel/core" "^7.20.0" - hermes-parser "0.8.0" - metro-source-map "0.73.8" - nullthrows "^1.1.1" - metro-babel-transformer@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.73.9.tgz#bec8aaaf1bbdc2e469fde586fde455f8b2a83073" @@ -11253,50 +11623,6 @@ metro-minify-uglify@0.73.9: dependencies: uglify-es "^3.1.9" -metro-react-native-babel-preset@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.8.tgz#04908f264f5d99c944ae20b5b11f659431328431" - integrity sha512-spNrcQJTbQntEIqJnCA6yL4S+dzV9fXCk7U+Rm7yJasZ4o4Frn7jP23isu7FlZIp1Azx1+6SbP7SgQM+IP5JgQ== - dependencies: - "@babel/core" "^7.20.0" - "@babel/plugin-proposal-async-generator-functions" "^7.0.0" - "@babel/plugin-proposal-class-properties" "^7.0.0" - "@babel/plugin-proposal-export-default-from" "^7.0.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-optional-chaining" "^7.0.0" - "@babel/plugin-syntax-dynamic-import" "^7.0.0" - "@babel/plugin-syntax-export-default-from" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.18.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-syntax-optional-chaining" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-flow-strip-types" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - "@babel/plugin-transform-runtime" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.5.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - "@babel/template" "^7.0.0" - react-refresh "^0.4.0" - metro-react-native-babel-preset@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.9.tgz#ef54637dd20f025197beb49e71309a9c539e73e2" @@ -11341,19 +11667,6 @@ metro-react-native-babel-preset@0.73.9: "@babel/template" "^7.0.0" react-refresh "^0.4.0" -metro-react-native-babel-transformer@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.73.8.tgz#cbcd4b243216878431dc4311ce46f02a928e3991" - integrity sha512-oH/LCCJPauteAE28c0KJAiSrkV+1VJbU0PwA9UwaWnle+qevs/clpKQ8LrIr33YbBj4CiI1kFoVRuNRt5h4NFg== - dependencies: - "@babel/core" "^7.20.0" - babel-preset-fbjs "^3.4.0" - hermes-parser "0.8.0" - metro-babel-transformer "0.73.8" - metro-react-native-babel-preset "0.73.8" - metro-source-map "0.73.8" - nullthrows "^1.1.1" - metro-react-native-babel-transformer@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.73.9.tgz#4f4f0cfa5119bab8b53e722fabaf90687d0cbff0" @@ -11374,14 +11687,6 @@ metro-resolver@0.73.9: dependencies: absolute-path "^0.0.0" -metro-runtime@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.73.8.tgz#dadae7c154fbbde24390cf7f7e7d934a2768cd18" - integrity sha512-M+Bg9M4EN5AEpJ8NkiUsawD75ifYvYfHi05w6QzHXaqOrsTeaRbbeLuOGCYxU2f/tPg17wQV97/rqUQzs9qEtA== - dependencies: - "@babel/runtime" "^7.0.0" - react-refresh "^0.4.0" - metro-runtime@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.73.9.tgz#0b24c0b066b8629ee855a6e5035b65061fef60d5" @@ -11390,20 +11695,6 @@ metro-runtime@0.73.9: "@babel/runtime" "^7.0.0" react-refresh "^0.4.0" -metro-source-map@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.73.8.tgz#5134174e3d43de26ad331b95f637944c6547d441" - integrity sha512-wozFXuBYMAy7b8BCYwC+qoXsvayVJBHWtSTlSLva99t+CoUSG9JO9kg1umzbOz28YYPxKmvb/wbnLMkHdas2cA== - dependencies: - "@babel/traverse" "^7.20.0" - "@babel/types" "^7.20.0" - invariant "^2.2.4" - metro-symbolicate "0.73.8" - nullthrows "^1.1.1" - ob1 "0.73.8" - source-map "^0.5.6" - vlq "^1.0.0" - metro-source-map@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.73.9.tgz#89ca41f6346aeb12f7f23496fa363e520adafebe" @@ -11418,18 +11709,6 @@ metro-source-map@0.73.9: source-map "^0.5.6" vlq "^1.0.0" -metro-symbolicate@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.73.8.tgz#96920f607bce484283d822ee5fe18d932f69c03d" - integrity sha512-xkBAcceYYp0GGdCCuMzkCF1ejHsd0lYlbKBkjSRgM0Nlj80VapPaSwumYoAvSaDxcbkvS7/sCjURGp5DsSFgRQ== - dependencies: - invariant "^2.2.4" - metro-source-map "0.73.8" - nullthrows "^1.1.1" - source-map "^0.5.6" - through2 "^2.0.1" - vlq "^1.0.0" - metro-symbolicate@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.73.9.tgz#cb452299a36e5b86b2826e7426d51221635c48bf" @@ -11687,9 +11966,9 @@ mkdirp-promise@^5.0.1: mkdirp "*" mkdirp@*: - version "2.1.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-2.1.5.tgz#78d7eaf15e069ba7b6b47d76dd94cfadf7a4062f" - integrity sha512-jbjfql+shJtAPrFoKxHOXip4xS+kul9W3OzfzzrqueWK2QMGon2bFH2opl6W9EagBThjEz+iysyi/swOoVfB/w== + version "3.0.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" + integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1: version "0.5.6" @@ -11838,9 +12117,9 @@ nanoid@3.3.3: integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w== nanoid@^3.1.23, nanoid@^3.1.25: - version "3.3.4" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" - integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== nanomatch@^1.2.9: version "1.2.13" @@ -11906,18 +12185,10 @@ node-dir@^0.1.17: dependencies: minimatch "^3.0.2" -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - node-fetch@^2.2.0, node-fetch@^2.6.0, node-fetch@^2.6.1: - version "2.6.9" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" - integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== + version "2.6.11" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.11.tgz#cde7fc71deef3131ef80a738919f999e6edfff25" + integrity sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w== dependencies: whatwg-url "^5.0.0" @@ -11948,16 +12219,6 @@ nopt@^6.0.0: dependencies: abbrev "^1.0.0" -normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -12033,11 +12294,6 @@ oauth-sign@~0.9.0: resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== -ob1@0.73.8: - version "0.73.8" - resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.73.8.tgz#c569f1a15ce2d04da6fd70293ad44b5a93b11978" - integrity sha512-1F7j+jzD+edS6ohQP7Vg5f3yiIk5i3x1uLrNIHOmLHWzWK1t3zrDpjnoXghccdVlsU+UjbyURnDynm4p0GgXeA== - ob1@0.73.9: version "0.73.9" resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.73.9.tgz#d5677a0dd3e2f16ad84231278d79424436c38c59" @@ -12057,7 +12313,7 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.12.2, object-inspect@^1.9.0: +object-inspect@^1.12.3, object-inspect@^1.9.0: version "1.12.3" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== @@ -12120,14 +12376,15 @@ object.fromentries@^2.0.6: es-abstract "^1.20.4" object.getownpropertydescriptors@^2.1.0: - version "2.1.5" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz#db5a9002489b64eef903df81d6623c07e5b4b4d3" - integrity sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw== + version "2.1.6" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.6.tgz#5e5c384dd209fa4efffead39e3a0512770ccc312" + integrity sha512-lq+61g26E/BgHv0ZTFgRvi7NMEPuAxLkFU7rukXjc/AlwH4Am5xXVnIXy3un1bg/JPbXHrixRkK1itUzzPiIjQ== dependencies: array.prototype.reduce "^1.0.5" call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" + define-properties "^1.2.0" + es-abstract "^1.21.2" + safe-array-concat "^1.0.0" object.hasown@^1.1.2: version "1.1.2" @@ -12629,6 +12886,13 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-dir@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz#a02d6aebe6ba133a928f74aec20bafdfe6b8e760" + integrity sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA== + dependencies: + find-up "^5.0.0" + plist@^3.0.1: version "3.0.6" resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.6.tgz#7cfb68a856a7834bca6dbfe3218eb9c7740145d3" @@ -12699,10 +12963,10 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@2.8.4: - version "2.8.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.4.tgz#34dd2595629bfbb79d344ac4a91ff948694463c3" - integrity sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw== +prettier@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" + integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== pretty-format@^26.5.2, pretty-format@^26.6.2: version "26.6.2" @@ -12786,13 +13050,6 @@ promise.allsettled@^1.0.5: get-intrinsic "^1.1.3" iterate-value "^1.0.2" -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - promise@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" @@ -12920,9 +13177,9 @@ punycode@^2.1.0, punycode@^2.1.1: integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== pure-rand@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.0.tgz#701996ceefa253507923a0e864c17ab421c04a7c" - integrity sha512-rLSBxJjP+4DQOgcJAx6RZHT2he2pkhQdSnofG5VWyVl6GRq/K02ISOuOLcsMOrtKDIJb8JN2zm3FFzWNbezdPw== + version "6.0.2" + resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.2.tgz#a9c2ddcae9b68d736a8163036f088a2781c8b306" + integrity sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ== q@^1.1.2: version "1.5.1" @@ -12930,9 +13187,9 @@ q@^1.1.2: integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== qrcode@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.5.1.tgz#0103f97317409f7bc91772ef30793a54cd59f0cb" - integrity sha512-nS8NJ1Z3md8uTjKtP+SGGhfqmTCs5flU/xR623oI0JX+Wepz9R8UrRVCTBTJm3qGw3rH6jJ6MUHjkDx15cxSSg== + version "1.5.3" + resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.5.3.tgz#03afa80912c0dccf12bc93f615a535aad1066170" + integrity sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg== dependencies: dijkstrajs "^1.0.1" encode-utf8 "^1.0.3" @@ -12947,9 +13204,9 @@ qs@6.11.0: side-channel "^1.0.4" qs@^6.6.0, qs@^6.9.1: - version "6.11.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" - integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== + version "6.11.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" + integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== dependencies: side-channel "^1.0.4" @@ -12968,6 +13225,16 @@ query-string@7.1.1: split-on-first "^1.0.0" strict-uri-encode "^2.0.0" +query-string@7.1.3, query-string@^7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328" + integrity sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg== + dependencies: + decode-uri-component "^0.2.2" + filter-obj "^1.1.0" + split-on-first "^1.0.0" + strict-uri-encode "^2.0.0" + query-string@^5.0.1: version "5.1.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" @@ -12987,16 +13254,6 @@ query-string@^6.13.5: split-on-first "^1.0.0" strict-uri-encode "^2.0.0" -query-string@^7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328" - integrity sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg== - dependencies: - decode-uri-component "^0.2.2" - filter-obj "^1.1.0" - split-on-first "^1.0.0" - strict-uri-encode "^2.0.0" - querystring@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" @@ -13066,14 +13323,6 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" -react-addons-shallow-compare@15.6.2: - version "15.6.2" - resolved "https://registry.yarnpkg.com/react-addons-shallow-compare/-/react-addons-shallow-compare-15.6.2.tgz#198a00b91fc37623db64a28fd17b596ba362702f" - integrity sha512-yAV9tOObmKPiohqne1jiMcx6kDjfz7GeL8K9KHgI+HvDsbrRv148uyUzrPc6GwepZnQcJ59Q3lp1ghrkyPwtjg== - dependencies: - fbjs "^0.8.4" - object-assign "^4.1.0" - react-clientside-effect@^1.2.6: version "1.2.6" resolved "https://registry.yarnpkg.com/react-clientside-effect/-/react-clientside-effect-1.2.6.tgz#29f9b14e944a376b03fb650eed2a754dd128ea3a" @@ -13095,9 +13344,9 @@ react-color@^2.17.0: tinycolor2 "^1.4.1" react-devtools-core@^4.26.1: - version "4.27.2" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.27.2.tgz#d20fc57e258c656eedabafc2c851d38b33583148" - integrity sha512-8SzmIkpO87alD7Xr6gWIEa1jHkMjawOZ+6egjazlnjB4UUcbnzGDf/vBJ4BzGuWWEM+pzrxuzsPpcMqlQkYK2g== + version "4.27.7" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.27.7.tgz#458a6541483078d60a036c75bf88f54c478086ec" + integrity sha512-12N0HrhCPbD76Z7SkyJdGdXdPGouUsgV6tlEsbSpAnLDO06tjXZP+irht4wPdYwJAJRQ85DxL48eQoz7UmrSuQ== dependencies: shell-quote "^1.6.1" ws "^7" @@ -13122,9 +13371,9 @@ react-dom@^16.8.3: scheduler "^0.19.1" react-fast-compare@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb" - integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== + version "3.2.1" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.1.tgz#53933d9e14f364281d6cba24bfed7a4afb808b5f" + integrity sha512-xTYf9zFim2pEif/Fw16dBiXpe0hoy5PxcD8+OwBnTtNLfIm3g6WxhKNurY+6OmdH1u6Ta/W/Vl6vjbYP1MFnDg== react-focus-lock@^2.1.0: version "2.9.4" @@ -13226,9 +13475,9 @@ react-native-appsflyer@6.5.20: integrity sha512-+gfsOmDev1BhhBFLE6P/eCcT0GLKDFZgQqaKcUPnTgyC8bgIWSv+igB9ziIzgBRZKSEf3YdlZ4TCfrg2w69cow== react-native-appsflyer@^6.3.50: - version "6.9.4" - resolved "https://registry.yarnpkg.com/react-native-appsflyer/-/react-native-appsflyer-6.9.4.tgz#35d8adbee93d169a7af3770739e8fe04de2d2680" - integrity sha512-GR02uyTjN08oAotVErCqE6nuqKReEskztSCcZhLZ8RbAYAu4Phj6ySvElc6cPF/KxBtR0Q9SE0RLaC1QLBM4mw== + version "6.10.3" + resolved "https://registry.yarnpkg.com/react-native-appsflyer/-/react-native-appsflyer-6.10.3.tgz#2a6e77f4a02eb2a6f88a44c2f9d1b2e37c66f6df" + integrity sha512-62IUiZa5mY1hsY9chgE755AgCpKpfHNwwIRs2NnHvIX8SdIFhm+Arn4kASvXCTfSIuZaDyKKOQT4bf0EVmBLyQ== react-native-bootsplash@3.2.6: version "3.2.6" @@ -13251,16 +13500,7 @@ react-native-clean-project@3.6.7: resolved "https://registry.yarnpkg.com/react-native-clean-project/-/react-native-clean-project-3.6.7.tgz#6d22ad22fe3a1e6efdb040eb66f9bdfb2273ac2e" integrity sha512-GSJG1oNRJKtINPMzfHgRmu7HJs7phwgtwQ6GvyGARiySqQlU/bAc5zsI9rOeNPGlpgYongQtjOGdmqSpsWMJTw== -react-native-codegen@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.0.7.tgz#86651c5c5fec67a8077ef7f4e36f7ed459043e14" - integrity sha512-dwNgR8zJ3ALr480QnAmpTiqvFo+rDtq6V5oCggKhYFlRjzOmVSFn3YD41u8ltvKS5G2nQ8gCs2vReFFnRGLYng== - dependencies: - flow-parser "^0.121.0" - jscodeshift "^0.11.0" - nullthrows "^1.1.1" - -react-native-codegen@^0.71.5: +react-native-codegen@0.71.5, react-native-codegen@^0.71.5: version "0.71.5" resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.71.5.tgz#454a42a891cd4ca5fc436440d301044dc1349c14" integrity sha512-rfsuc0zkuUuMjFnrT55I1mDZ+pBRp2zAiRwxck3m6qeGJBGK5OV5JH66eDQ4aa+3m0of316CqrJDRzVlYufzIg== @@ -13314,10 +13554,9 @@ react-native-error-boundary@1.2.1: resolved "https://registry.yarnpkg.com/react-native-error-boundary/-/react-native-error-boundary-1.2.1.tgz#795ca556fcc077794c8c77f2d449226b41dde822" integrity sha512-Ae2mjXyCI84mwSKkgVSYPv1ZDlRVTZg9DwyxCHFtEfFkjNcBS8RlEcW7Fihns13lRdpmmQx/Gr2OFf5tfkih9g== -react-native-fast-image@8.6.3: +"react-native-fast-image@https://github.com/numandev1/react-native-fast-image#feat/fabric-wolewicki": version "8.6.3" - resolved "https://registry.yarnpkg.com/react-native-fast-image/-/react-native-fast-image-8.6.3.tgz#6edc3f9190092a909d636d93eecbcc54a8822255" - integrity sha512-Sdw4ESidXCXOmQ9EcYguNY2swyoWmx53kym2zRsvi+VeFCHEdkO+WG1DK+6W81juot40bbfLNhkc63QnWtesNg== + resolved "https://github.com/numandev1/react-native-fast-image#9e0a9db7f511f89a55dc370b016dfddd565ccdb8" react-native-fit-image@^1.5.5: version "1.5.5" @@ -13352,10 +13591,10 @@ react-native-get-random-values@1.8.0: dependencies: fast-base64-decode "^1.0.0" -react-native-gradle-plugin@^0.71.16: - version "0.71.17" - resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.17.tgz#cf780a27270f0a32dca8184eff91555d7627dd00" - integrity sha512-OXXYgpISEqERwjSlaCiaQY6cTY5CH6j73gdkWpK0hedxtiWMWgH+i5TOi4hIGYitm9kQBeyDu+wim9fA8ROFJA== +react-native-gradle-plugin@^0.71.18: + version "0.71.18" + resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.18.tgz#20ef199bc85be32e45bb6cc069ec2e7dcb1a74a6" + integrity sha512-7F6bD7B8Xsn3JllxcwHhFcsl9aHIig47+3eN4IHFNqfLhZr++3ElDrcqfMzugM+niWbaMi7bJ0kAkAL8eCpdWg== react-native-haptic-feedback@1.14.0: version "1.14.0" @@ -13396,11 +13635,6 @@ react-native-level-fs@3.0.1: level-filesystem "^1.0.1" levelup "^0.18.2" -react-native-linear-gradient@2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/react-native-linear-gradient/-/react-native-linear-gradient-2.6.2.tgz#56598a76832724b2afa7889747635b5c80948f38" - integrity sha512-Z8Xxvupsex+9BBFoSYS87bilNPWcRfRsGC0cpJk72Nxb5p2nEkGSBv73xZbEHnW2mUFvP+huYxrVvjZkr/gRjQ== - react-native-localize@2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/react-native-localize/-/react-native-localize-2.2.4.tgz#3bc46ade48499ab9df61bf17a9b66633a5ba9bb9" @@ -13462,13 +13696,13 @@ react-native-pager-view@6.1.4: resolved "https://registry.yarnpkg.com/react-native-pager-view/-/react-native-pager-view-6.1.4.tgz#3a63ebd1b72f81991157ea552bb9c887e529bc8c" integrity sha512-fmTwgGwPxGCBusKAq7gHzm+s1Yp0qh5rKPoQszaCuxrb+76KgK4Qe82jJNPUp2xTZOKSw+FbJU2QahF8ncTl+w== -react-native-permissions@3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/react-native-permissions/-/react-native-permissions-3.7.2.tgz#445b3329d66d074fa88f5319b38717e5831b8fee" - integrity sha512-hoiygypCvN2KgDexrxX3cEpYb8BZWAv1783dR0ew5CRdLu2LUb4evJmz6enHUqhOutdQOUHMhJhX5M9X8DYYfg== +react-native-permissions@3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/react-native-permissions/-/react-native-permissions-3.8.0.tgz#7c1f75ae126c7d0b863eec9d2f5cd93ff8ad8310" + integrity sha512-BfZ7ksgdpGchHZH8M/kxCGZbWeACANbnPmb3hNjVOMDQusc4PWlPpobX3eBqYMSKbpi7bMECeV9BVU4QuwAf9A== dependencies: picocolors "^1.0.0" - read-pkg "^5.2.0" + pkg-dir "^5.0.0" react-native-print@0.11.0: version "0.11.0" @@ -13513,6 +13747,11 @@ react-native-rate@1.2.12: resolved "https://registry.yarnpkg.com/react-native-rate/-/react-native-rate-1.2.12.tgz#d4307b2994f9c849b987eb65599ec467db4aee04" integrity sha512-A/z3s7Zth08aXcJnru6S4p71NG8acx2w5LhIfItwTJUbQruNJugk8WrN51dLBCSDv8W33kbS5YoUT4M9jOP5gA== +react-native-reanimated-carousel@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/react-native-reanimated-carousel/-/react-native-reanimated-carousel-3.5.1.tgz#3605b9959ffc0aa1c6b8b8736d98f91f46e36b17" + integrity sha512-9BBQV6JAYSQm2lV7MFtT4mzapXmW4IZO6s38gfiJL84Jg23ivGB1UykcNQauKgtHyhtW2NuZJzItb1s42lM+hA== + react-native-reanimated@3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.0.2.tgz#8f7284fab2b0cd949779429e48f32d19a966bbd6" @@ -13536,10 +13775,10 @@ react-native-rounded-checkbox@0.3.3: resolved "https://registry.yarnpkg.com/react-native-rounded-checkbox/-/react-native-rounded-checkbox-0.3.3.tgz#05a753180604db61a074b2ef1ae7446347c3df8c" integrity sha512-CR2C21SxPyR1D4HbX+z3/fn0Bf1AqTrn4bN+fR4wZ+c9/GHgBBz8whLsckz+7kxHqjFqGXwyFiuB7CQapO4TnQ== -react-native-safe-area-context@4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.5.0.tgz#9208313236e8f49e1920ac1e2a2c975f03aed284" - integrity sha512-0WORnk9SkREGUg2V7jHZbuN5x4vcxj/1B0QOcXJjdYWrzZHgLcUzYWWIUecUPJh747Mwjt/42RZDOaFn3L8kPQ== +react-native-safe-area-context@4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.5.1.tgz#6651d216b86ce84a8e9399220a1010d3902d7a2e" + integrity sha512-bKcwk6zZvyz+VLoG6Uia1oiYU1jSbv1ysjEKSRLsLtPcDsbixsTc0UgfrPqjZxNTPzvYLMcr8ufA90UQauN4mw== react-native-screens@3.20.0: version "3.20.0" @@ -13564,14 +13803,6 @@ react-native-skeleton-placeholder@5.2.4: resolved "https://registry.yarnpkg.com/react-native-skeleton-placeholder/-/react-native-skeleton-placeholder-5.2.4.tgz#a654fa083ff274a39c763e086f8a850c556d4c95" integrity sha512-OZntVq1hU1UX33FltxK2ezT2v9vHIhV8YnEbnMWUCvxT0N9OsgD1qxiHm6qb9YRJVgq2o5z3S7dNPsPnDF/jNg== -react-native-snap-carousel@4.0.0-beta.6: - version "4.0.0-beta.6" - resolved "https://registry.yarnpkg.com/react-native-snap-carousel/-/react-native-snap-carousel-4.0.0-beta.6.tgz#cc73108f83cbcf227cd1c6367f17926e8451fd01" - integrity sha512-jr6Kesrn+/047FwL32JRwAL6/l4Soz2uw73rFM5LfoGTgZhPatUsw60eTE3bznqFewPhoFIKezYe2m3LypTnIA== - dependencies: - "@types/react-addons-shallow-compare" "^0.14.22" - react-addons-shallow-compare "15.6.2" - react-native-svg-transformer@0.14.3: version "0.14.3" resolved "https://registry.yarnpkg.com/react-native-svg-transformer/-/react-native-svg-transformer-0.14.3.tgz#43c8e176f5a11f16f39b87a64018e0ac090ffbdb" @@ -13582,10 +13813,10 @@ react-native-svg-transformer@0.14.3: path-dirname "^1.0.2" semver "^5.6.0" -react-native-svg@13.8.0: - version "13.8.0" - resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-13.8.0.tgz#b6a22cf77f8098f910490a13aeb160a37e182f97" - integrity sha512-G8Mx6W86da+vFimZBJvA93POw8yz0fgDS5biy6oIjMWVJVQSDzCyzwO/zY0yuZmCDhKSZzogl5m0wXXvW2OcTA== +react-native-svg@13.9.0: + version "13.9.0" + resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-13.9.0.tgz#8df8a690dd00362601f074dec5d3a86dd0f99c7f" + integrity sha512-Ey18POH0dA0ob/QiwCBVrxIiwflhYuw0P0hBlOHeY4J5cdbs8ngdKHeWC/Kt9+ryP6fNoEQ1PUgPYw2Bs/rp5Q== dependencies: css-select "^5.1.0" css-tree "^1.1.3" @@ -13595,10 +13826,12 @@ react-native-swipe-gestures@^1.0.4: resolved "https://registry.yarnpkg.com/react-native-swipe-gestures/-/react-native-swipe-gestures-1.0.5.tgz#a172cb0f3e7478ccd681fd36b8bfbcdd098bde7c" integrity sha512-Ns7Bn9H/Tyw278+5SQx9oAblDZ7JixyzeOczcBK8dipQk2pD7Djkcfnf1nB/8RErAmMLL9iXgW0QHqiII8AhKw== -react-native-tab-view@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.1.1.tgz#1f8d7a835ab4f5b1b1407ec8dddc1053b53fa3c6" - integrity sha512-M5pRN6utQfytKWoKlKVzg5NbkYu308qNoW1khGTtEOTs1k14p2dHJ/BWOJoJYHKbPVUyZldbG9MFT7gUl4YHnw== +react-native-tab-view@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.5.1.tgz#2ad454afc0e186b43ea8b89053f39180d480d48b" + integrity sha512-qdrS5t+AEhfuKQyuCXkwHu4IVppkuTvzWWlkSZKrPaSkjjIa32xrsGxt1UW9YDdro2w4AMw5hKn1hFmg/5mvzA== + dependencies: + use-latest-callback "^0.1.5" react-native-text-input-mask@3.1.4: version "3.1.4" @@ -13651,23 +13884,23 @@ react-native-version@4.0.0: resolve-from "^5.0.0" semver "^7.0.0" -react-native-webview@11.26.1: - version "11.26.1" - resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-11.26.1.tgz#658c09ed5162dc170b361e48c2dd26c9712879da" - integrity sha512-hC7BkxOpf+z0UKhxFSFTPAM4shQzYmZHoELa6/8a/MspcjEP7ukYKpuSUTLDywQditT8yI9idfcKvfZDKQExGw== +react-native-webview@12.0.2: + version "12.0.2" + resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-12.0.2.tgz#6f75bc74f75a7585fb06743ffc20c267048512df" + integrity sha512-vEnFOgVIYaUAQb437BOZdwTteUv3dkXkYOajalUkMDHNz91Zb35HaG6L49uUSFp4qYw46y/U3licKS1BOISDrg== dependencies: escape-string-regexp "2.0.0" invariant "2.2.4" -react-native@0.71.4: - version "0.71.4" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.4.tgz#f03f600efe68f745d19454ab17f9c1a9ef304790" - integrity sha512-3hSYqvWrOdKhpV3HpEKp1/CkWx8Sr/N/miCrmUIAsVTSJUR7JW0VvIsrV9urDhUj/s6v2WF4n7qIEEJsmTCrPw== +react-native@0.71.8: + version "0.71.8" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.8.tgz#4314145341c49448cf7465b93ced52a433a5e191" + integrity sha512-ftMAuhpgTkbHU9brrqsEyxcNrpYvXKeATY+if22Nfhhg1zW+6wn95w9otwTnA3xHkljPCbng8mUhmmERjGEl7g== dependencies: "@jest/create-cache-key-function" "^29.2.1" - "@react-native-community/cli" "10.2.0" + "@react-native-community/cli" "10.2.2" "@react-native-community/cli-platform-android" "10.2.0" - "@react-native-community/cli-platform-ios" "10.2.0" + "@react-native-community/cli-platform-ios" "10.2.1" "@react-native/assets" "1.0.0" "@react-native/normalize-color" "2.1.0" "@react-native/polyfills" "2.0.0" @@ -13680,16 +13913,16 @@ react-native@0.71.4: jest-environment-node "^29.2.1" jsc-android "^250231.0.0" memoize-one "^5.0.0" - metro-react-native-babel-transformer "0.73.8" - metro-runtime "0.73.8" - metro-source-map "0.73.8" + metro-react-native-babel-transformer "0.73.9" + metro-runtime "0.73.9" + metro-source-map "0.73.9" mkdirp "^0.5.1" nullthrows "^1.1.1" pretty-format "^26.5.2" promise "^8.3.0" react-devtools-core "^4.26.1" react-native-codegen "^0.71.5" - react-native-gradle-plugin "^0.71.16" + react-native-gradle-plugin "^0.71.18" react-refresh "^0.4.0" react-shallow-renderer "^16.15.0" regenerator-runtime "^0.13.2" @@ -13832,16 +14065,6 @@ reactcss@^1.2.0: dependencies: lodash "^4.0.1" -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - readable-stream@1.0.33: version "1.0.33" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.33.tgz#3a360dd66c1b1d7fd4705389860eda1d0f61126c" @@ -13852,10 +14075,10 @@ readable-stream@1.0.33: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@3, readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@^3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.1.tgz#f9f9b5f536920253b3d26e7660e7da4ccff9bb62" - integrity sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ== +readable-stream@3, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" @@ -13884,15 +14107,6 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.1.1: - version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" - integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - readable-stream@~1.0.26, readable-stream@~1.0.26-4: version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" @@ -13927,7 +14141,7 @@ real-require@^0.1.0: resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.1.0.tgz#736ac214caa20632847b7ca8c1056a0767df9381" integrity sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg== -recast@^0.20.3, recast@^0.20.4: +recast@^0.20.4: version "0.20.5" resolved "https://registry.yarnpkg.com/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== @@ -14013,6 +14227,13 @@ regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.2, regenerator-runtime@^ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== +regenerator-transform@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" + integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== + dependencies: + "@babel/runtime" "^7.8.4" + regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" @@ -14022,13 +14243,13 @@ regex-not@^1.0.0, regex-not@^1.0.2: safe-regex "^1.1.0" regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" - integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== + version "1.5.0" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb" + integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" - functions-have-names "^1.2.2" + define-properties "^1.2.0" + functions-have-names "^1.2.3" regexpp@^3.2.0: version "3.2.0" @@ -14036,9 +14257,9 @@ regexpp@^3.2.0: integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== regexpu-core@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.1.tgz#66900860f88def39a5cb79ebd9490e84f17bcdfb" - integrity sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ== + version "5.3.2" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" + integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ== dependencies: "@babel/regjsgen" "^0.8.0" regenerate "^1.4.2" @@ -14187,16 +14408,16 @@ resolve.exports@^1.1.0: integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== resolve.exports@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.1.tgz#cee884cd4e3f355660e501fa3276b27d7ffe5a20" - integrity sha512-OEJWVeimw8mgQuj3HfkNl4KqRevH7lzeQNaWRPfx0PPse7Jk6ozcsG4FKVgtzDsC1KUF+YlTHh17NcgHOPykLw== + version "2.0.2" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" + integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.20.0: - version "1.22.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" - integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== +resolve@^1.12.0, resolve@^1.14.2, resolve@^1.20.0: + version "1.22.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f" + integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g== dependencies: - is-core-module "^2.9.0" + is-core-module "^2.11.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" @@ -14275,12 +14496,12 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" -ripple-address-codec@^4.0.0, ripple-address-codec@^4.1.1, ripple-address-codec@^4.2.4: - version "4.2.4" - resolved "https://registry.yarnpkg.com/ripple-address-codec/-/ripple-address-codec-4.2.4.tgz#a56c2168c8bb81269ea4d15ed96d6824c5a866f8" - integrity sha512-roAOjKz94+FboTItey1XRh5qynwt4xvfBLvbbcx+FiR94Yw2x3LrKLF2GVCMCSAh5I6PkcpADg6AbYsUbGN3nA== +ripple-address-codec@^4.0.0, ripple-address-codec@^4.1.1, ripple-address-codec@^4.2.5: + version "4.2.5" + resolved "https://registry.yarnpkg.com/ripple-address-codec/-/ripple-address-codec-4.2.5.tgz#9d31b2066abd4cf1a135cd865b4e8e63269701e7" + integrity sha512-SZ96zZH+0REeyEcYVFl0vqcsGRXiFXS2RUgHupHhtVkOEk6men53vngVjJwBrSnY+oa6Cri15q1zSni3DEoxNw== dependencies: - base-x "3.0.9" + base-x "^3.0.9" create-hash "^1.1.2" ripple-binary-codec@0.2.6: @@ -14297,27 +14518,27 @@ ripple-binary-codec@0.2.6: ripple-address-codec "^4.0.0" ripple-binary-codec@^1.1.3: - version "1.4.2" - resolved "https://registry.yarnpkg.com/ripple-binary-codec/-/ripple-binary-codec-1.4.2.tgz#cdc35353e4bc7c3a704719247c82b4c4d0b57dd3" - integrity sha512-EDKIyZMa/6Ay/oNgCwjD9b9CJv0zmBreeHVQeG4BYwy+9GPnIQjNeT5e/aB6OjAnhcmpgbPeBmzwmNVwzxlt0w== + version "1.4.3" + resolved "https://registry.yarnpkg.com/ripple-binary-codec/-/ripple-binary-codec-1.4.3.tgz#4737044f2aa5da496c1d57619339f26df01cd494" + integrity sha512-P4ALjAJWBJpRApTQO+dJCrHE6mZxm7ypZot9OS0a3RCKOWTReNw0pDWfdhCGh1qXh71TeQnAk4CHdMLwR/76oQ== dependencies: assert "^2.0.0" big-integer "^1.6.48" buffer "5.6.0" create-hash "^1.2.0" decimal.js "^10.2.0" - ripple-address-codec "^4.2.4" + ripple-address-codec "^4.2.5" ripple-keypairs@^1.0.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/ripple-keypairs/-/ripple-keypairs-1.1.4.tgz#4486fca703b8a2fc4f30cfd568478f3d12c1a911" - integrity sha512-PMMjTOxZmCSBOvHPj6bA+V/HGx7oFgDtGGI8VcZYuaFO2H87UX0X0jhfHy+LA2Xy31WYlD7GaDIDDt2QO+AMtw== + version "1.1.5" + resolved "https://registry.yarnpkg.com/ripple-keypairs/-/ripple-keypairs-1.1.5.tgz#eabfc371f2ef293fdc462664e18cbba32c4f5c7e" + integrity sha512-wLJXIBsMVazn2Yp/7oP4PvgA4Gd1HtuZLftdEJFNOLgraf82phqa2AnNK3t9f3XeQnApW1jAe/FcFFOY6QUn5w== dependencies: bn.js "^5.1.1" brorand "^1.0.5" elliptic "^6.5.4" hash.js "^1.0.3" - ripple-address-codec "^4.2.4" + ripple-address-codec "^4.2.5" "ripple-keypairs@git+https://git@github.com/bitpay/ripple-keypairs.git#8d3a4643a8ddfce8222786e1e5a3e85a89a5b7f5": version "1.0.0-beta.0" @@ -14384,6 +14605,11 @@ rn-swipe-button@1.3.8: resolved "https://registry.yarnpkg.com/rn-swipe-button/-/rn-swipe-button-1.3.8.tgz#dbf305741ed56b6eaf3871e08d075459c3d8c695" integrity sha512-5xC9jBzEJ7XCSImYLFfen+YBnt3S91eOU81Uht3odTUuoWkEwtoaESYqfY7U5CLqXY2lD7yZeD6/O6YalWFyng== +rnx-gradient@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/rnx-gradient/-/rnx-gradient-0.1.1.tgz#3127c27f192975d02d041ad75d578eb056621d2a" + integrity sha512-/QZTR5v5yvQjtWtYVQTRaLdkJHboInJL5H/HraPxgwf7tuNN4/s58nig0q+KwLfzkPdz3KpyvHCZx6CmEBY2Ig== + rsvp@^4.8.2: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" @@ -14401,6 +14627,16 @@ run-parallel@^1.1.2, run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" +safe-array-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.0.tgz#2064223cba3c08d2ee05148eedbc563cd6d84060" + integrity sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.0" + has-symbols "^1.0.3" + isarray "^2.0.5" + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -14433,11 +14669,11 @@ safe-regex@^1.1.0: ret "~0.1.10" safe-stable-stringify@^2.1.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz#ec7b037768098bf65310d1d64370de0dc02353aa" - integrity sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA== + version "2.4.3" + resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz#138c84b6f6edb3db5f8ef3ef7115b8f55ccbf886" + integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -14471,14 +14707,14 @@ scheduler@^0.23.0: loose-envify "^1.1.0" schema-utils@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" - integrity sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg== + version "4.0.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.1.tgz#eb2d042df8b01f4b5c276a2dfd41ba0faab72e8d" + integrity sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ== dependencies: "@types/json-schema" "^7.0.9" - ajv "^8.8.0" + ajv "^8.9.0" ajv-formats "^2.1.1" - ajv-keywords "^5.0.0" + ajv-keywords "^5.1.0" scrypt-js@3.0.1, scrypt-js@^3.0.0, scrypt-js@^3.0.1: version "3.0.1" @@ -14525,18 +14761,18 @@ select@^1.1.2: resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== -"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.5.0, semver@^5.6.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - semver@7.x, semver@^7.0.0, semver@^7.3.5, semver@^7.3.7: - version "7.3.8" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" - integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== + version "7.5.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.1.tgz#c90c4d631cf74720e46b21c1d37ea07edfab91ec" + integrity sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw== dependencies: lru-cache "^6.0.0" +semver@^5.0.1, semver@^5.5.0, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -14689,9 +14925,9 @@ shell-quote@1.7.3: integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== shell-quote@^1.6.1, shell-quote@^1.7.3: - version "1.8.0" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.0.tgz#20d078d0eaf71d54f43bd2ba14a1b5b9bfa5c8ba" - integrity sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ== + version "1.8.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" + integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== side-channel@^1.0.4: version "1.0.4" @@ -14899,32 +15135,6 @@ space-separated-tokens@^1.0.0: resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== -spdx-correct@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" - integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.12" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" - integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== - split-on-first@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" @@ -14938,9 +15148,9 @@ split-string@^3.0.1, split-string@^3.0.2: extend-shallow "^3.0.0" split2@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" - integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== + version "4.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== sprintf-js@^1.1.1: version "1.1.2" @@ -15090,6 +15300,15 @@ string.prototype.matchall@^4.0.8: regexp.prototype.flags "^1.4.3" side-channel "^1.0.4" +string.prototype.trim@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533" + integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -15341,7 +15560,7 @@ temp@0.8.3: os-tmpdir "^1.0.0" rimraf "~2.2.6" -temp@^0.8.1, temp@^0.8.4: +temp@^0.8.4: version "0.8.4" resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.4.tgz#8c97a33a4770072e0a05f919396c7665a7dd59f2" integrity sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg== @@ -15357,9 +15576,9 @@ terminal-link@^2.0.0: supports-hyperlinks "^2.0.0" terser@^5.15.0: - version "5.16.5" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.5.tgz#1c285ca0655f467f92af1bbab46ab72d1cb08e5a" - integrity sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg== + version "5.17.3" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.3.tgz#7f908f16b3cdf3f6c0f8338e6c1c674837f90d25" + integrity sha512-AudpAZKmZHkG9jueayypz4duuCFJMMNGRMwaPvQKWfxKedh8Z2x3OCoDqIIi1xx5+iwx1u6Au8XQcc9Lke65Yg== dependencies: "@jridgewell/source-map" "^0.3.2" acorn "^8.5.0" @@ -15644,11 +15863,6 @@ type-fest@^0.21.3: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - type-fest@^0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" @@ -15713,11 +15927,6 @@ typescript@^4.2.4: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== -ua-parser-js@^0.7.30: - version "0.7.34" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.34.tgz#afb439e2e3e394bdc90080acb661a39c685b67d7" - integrity sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ== - uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" @@ -15851,9 +16060,9 @@ unset-value@^1.0.0: isobject "^3.0.0" update-browserslist-db@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" - integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== + version "1.0.11" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" + integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA== dependencies: escalade "^3.1.1" picocolors "^1.0.0" @@ -15898,9 +16107,9 @@ use-callback-ref@^1.3.0: tslib "^2.0.0" use-latest-callback@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.5.tgz#a4a836c08fa72f6608730b5b8f4bbd9c57c04f51" - integrity sha512-HtHatS2U4/h32NlkhupDsPlrbiD27gSH5swBdtXbCAlc6pfOFzaj0FehW/FO12rx8j2Vy4/lJScCiJyM01E+bQ== + version "0.1.6" + resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.6.tgz#3fa6e7babbb5f9bfa24b5094b22939e1e92ebcf6" + integrity sha512-VO/P91A/PmKH9bcN9a7O3duSuxe6M14ZoYXgA6a8dab8doWNdhiIHzEkX/jFeTTRBsX0Ubk6nG4q2NIjNsj+bg== use-sidecar@^1.1.2: version "1.1.2" @@ -15999,14 +16208,6 @@ v8-to-istanbul@^9.0.1: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - value-or-function@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" @@ -16031,179 +16232,179 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -victory-area@^36.3.0, victory-area@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-area/-/victory-area-36.6.8.tgz#6a67d6ab8cc9cff7a46f091e8722203055f99f42" - integrity sha512-aIyMuzUqiDcpTCB7FUOYDJvqiDPiluEXLOw6Lh1vrUYmV7CNqMDOIBtTau2vI41Ao0o0YJdCAcyzBib9e3UYbw== +victory-area@^36.3.0, victory-area@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-area/-/victory-area-36.6.10.tgz#062c02120e70aef6d18bc51d8fdc68d93db510a7" + integrity sha512-4SRXvxupIe04SMKD8DSbh5ns0/bVw20Ylp4bDXXHgAIo47iu+NmqNxnZ2CKDJ7vxN0nWPy0piQ5jO1ubhTGFIg== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-core "^36.6.10" + victory-vendor "^36.6.10" -victory-axis@^36.3.0, victory-axis@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-axis/-/victory-axis-36.6.8.tgz#aa565fba604d7773f7f9bf7e201605f9fc01cc5c" - integrity sha512-tClVJEay1YOJAh9rRyyLx8pei7Sr1/xTz04bJmfzFoAxFoPBtvgfFwXhfZ1YjGIl7m5Wh2CiYMY3figueLzYtg== +victory-axis@^36.3.0, victory-axis@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-axis/-/victory-axis-36.6.10.tgz#7b09a1a756e792c5e66e4892f6919bfde92a48de" + integrity sha512-QsJrETq7mcM5AVBIPx7b31cwv901YaLGRHFWCIUGJgnKmaXdgBEl8cS9+VPrPnhhWhLeau2/LM5dENl1QwK2TQ== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-bar@^36.3.0, victory-bar@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-bar/-/victory-bar-36.6.8.tgz#da94a966160de930cd2c0150ca4439b7a20e9636" - integrity sha512-jLLPm3IW8/2uSLPvQD9bxzXnTraUYBIDTkbZPZy7oHP01OVzP1sj+MMHcINCWcUbyUyLZDL3u8CvViXjS273JQ== +victory-bar@^36.3.0, victory-bar@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-bar/-/victory-bar-36.6.10.tgz#a242c9f6ecd6d9e2b369939ce36650cf9629e515" + integrity sha512-3kmFa3ZEKEx968xrobWzpPebwoDxya3Xqox088NFCopLQ24FoEPLZQboJJY5PM51gyT5GdU+rAqtFc2TG1bL/Q== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-core "^36.6.10" + victory-vendor "^36.6.10" -victory-box-plot@^36.3.0, victory-box-plot@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-box-plot/-/victory-box-plot-36.6.8.tgz#04d960daba75aaeb525f7d7e338445f0df61faad" - integrity sha512-Vf/Mvf2JnwfHqEXHrKBgfjN+4yQNbIA8k/Q8ms9do9T9YWJNB+D3U++8pVxilT+h7o5CdECQ5uyGhTCIKx9E6Q== +victory-box-plot@^36.3.0, victory-box-plot@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-box-plot/-/victory-box-plot-36.6.10.tgz#4f4cbbbfaa5b0f633cded94da48309477b2c96e9" + integrity sha512-HWjnr2ZTkXwusMryvQXSukfrc6GeXQDtaEWNC7qFaoYKL1sFGpOmng7bnwx1jtSbnGiGa90JFFj2IYXNA97yOA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-core "^36.6.10" + victory-vendor "^36.6.10" -victory-brush-container@^36.3.0, victory-brush-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-brush-container/-/victory-brush-container-36.6.8.tgz#7a0d73b0d96410a875936d800482550c87da8b19" - integrity sha512-PN5zQ6kjVwZca1qV41WlV6J2IEyQh+2hykRe6c/wERDotVVbSrX3sJVAzUbN+7x2rrK0CL6a/XUI8jDsWTMM2A== +victory-brush-container@^36.3.0, victory-brush-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-brush-container/-/victory-brush-container-36.6.10.tgz#f087bb150c59e6a34ab7698d83677bced3f53791" + integrity sha512-iDqdMm1C2uVkRRdWQMzDR0lRCK9icEjCCVHbPVxOUqThc/wiBK3GJNq4EL2lhX1F5ONxiwHzZuzK2C59fDMbAA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-brush-line@^36.3.0, victory-brush-line@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-brush-line/-/victory-brush-line-36.6.8.tgz#e1c8a94396fddc5333273e3c00da67dd9bbd84d8" - integrity sha512-Ca/rGrxe8tZW02O49SmXbnVEcAGOTZw+dVmD5bLh72SItl/Co4jLcvc6b5r8+mZJEvCWNVYRv28qDtIh8PJ0CA== +victory-brush-line@^36.3.0, victory-brush-line@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-brush-line/-/victory-brush-line-36.6.10.tgz#527853e1d87ade18b5bd3ba7e92b39b29fb27da0" + integrity sha512-DK359PMto7IH79xfmN9ccRUHQWOrWZTQa+SrpaRRJhFk+Onia0RZbThI6ASW/Lp9o683W6CrxwBpX9biuwfk2Q== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-candlestick@^36.3.0, victory-candlestick@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-candlestick/-/victory-candlestick-36.6.8.tgz#2ac5a62d879f5a2fd76d91b07cf2ff14c73c047e" - integrity sha512-/mQ/nYnfgfLAbS3fVLWIVjN/U+LKm9cwfY8/mXhA63NLvBmXryLRcUQQPky7r7M3r8zIcMDsjJO++WqiQo4Osw== +victory-candlestick@^36.3.0, victory-candlestick@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-candlestick/-/victory-candlestick-36.6.10.tgz#8305ca4f6e9bf2651b5f3b593f9ace0bf8032489" + integrity sha512-nE6acBSJG5Cxbxe2tMHGP70j28S5DCZyb51pAmuxle/W+BkEUacev7n6DTojg/JQsEZO9gJFIipjis6HTHYbbA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-canvas@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-canvas/-/victory-canvas-36.6.8.tgz#fc01df235dc800feeea45fcccb1769f1196f79a7" - integrity sha512-qSKCTzqYxbst3WmtdJuZJirBxJ49fP7nAMzRnd2alm4QrMTbxAlVgqfbNg4pfXZYccvEWPy1IDQTbRTmWNkbcw== +victory-canvas@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-canvas/-/victory-canvas-36.6.10.tgz#8e754069bce88a8d32cc8990391a7ca7cae565cd" + integrity sha512-Zi8mLL5qKy0aH82ebIJzaKmbBM3dok93WvCsiPfEaJ3wB66QEt4ZeLq/6bhzKXjNIz+dVLFBv4TCTkY4mmGQ/Q== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-bar "^36.6.8" - victory-core "^36.6.8" + victory-bar "^36.6.10" + victory-core "^36.6.10" -victory-chart@^36.3.0, victory-chart@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-chart/-/victory-chart-36.6.8.tgz#17feb0290df90fb094d7ae89a7d20857790ad096" - integrity sha512-kC1jL63PAmqUrvZNOfwAXNuaIwz4nvXYUuEPu59WRBCOIGDGRgv2wJ1O7O0xYXqDkI57EtAYf9KUK+miEn/Btg== +victory-chart@^36.3.0, victory-chart@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-chart/-/victory-chart-36.6.10.tgz#f16be4c39445c4161fd6a9750fa13695a2a9a7e7" + integrity sha512-W1yAYX16nASA8xllGkO6VvUAAGe9BehQ+558fhXeznIX+P4yXJ2v8CJG7NXD+bdh+Xwoft6GWouwp2ycANBKyw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-axis "^36.6.8" - victory-core "^36.6.8" - victory-polar-axis "^36.6.8" - victory-shared-events "^36.6.8" + victory-axis "^36.6.10" + victory-core "^36.6.10" + victory-polar-axis "^36.6.10" + victory-shared-events "^36.6.10" -victory-core@^36.3.0, victory-core@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-core/-/victory-core-36.6.8.tgz#554869ef63103556b50f0d91ad64976f7d13d45e" - integrity sha512-SkyEszZKGyxjqfptfFWYdI22CvCuE9LhkaDpikzIhT2gcE3SuOBO5fk/740XMYE2ZUsJ4Fu/Vy4+8jZi17y44A== +victory-core@^36.3.0, victory-core@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-core/-/victory-core-36.6.10.tgz#7fab943e2debbd8b9184142dc92b4ad3b4366631" + integrity sha512-rXZh6Lm/ex/2pjQQr9kfmS1ebdpO/mYvHup1gFEqzpkTgVXag6QWV8PcZkEK07x9owcfnvgBlfJvYCE6h9NpcA== dependencies: lodash "^4.17.21" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-vendor "^36.6.8" + victory-vendor "^36.6.10" -victory-create-container@^36.3.1, victory-create-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-create-container/-/victory-create-container-36.6.8.tgz#c41835f2e5fed4f294f0594b8d4ce564e4a73a88" - integrity sha512-H2BsdTbJ/RxxcEg5lzk3TDlihtOs7I/5KaIBP3yosPs702i40mL2qndkRkj08QeiZhkaKfQ2GOUvyP+t7DSdmg== +victory-create-container@^36.3.1, victory-create-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-create-container/-/victory-create-container-36.6.10.tgz#9f0f1b663d58fc081abeebc162e0fef155b6b6cb" + integrity sha512-gIGWWNpbRbBtEJWsFpABDkZuuTe5SjhynWe2GaLLl2Hi2cYWoo/WWMef09ChfnuLOXodc0MG149KAle5j6Cq7Q== dependencies: lodash "^4.17.19" - victory-brush-container "^36.6.8" - victory-core "^36.6.8" - victory-cursor-container "^36.6.8" - victory-selection-container "^36.6.8" - victory-voronoi-container "^36.6.8" - victory-zoom-container "^36.6.8" - -victory-cursor-container@^36.3.0, victory-cursor-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-cursor-container/-/victory-cursor-container-36.6.8.tgz#ca15719b0d03c4601c4dbe7dc7710abba5b50c4c" - integrity sha512-3WIBRl+7jnZok6syLfW8RK23nliDcoD/JUTN0YZo6bKBqHeFc4+ur3mlwCfghH7sGoxJRYuOJxTd9x2MwM5HQQ== + victory-brush-container "^36.6.10" + victory-core "^36.6.10" + victory-cursor-container "^36.6.10" + victory-selection-container "^36.6.10" + victory-voronoi-container "^36.6.10" + victory-zoom-container "^36.6.10" + +victory-cursor-container@^36.3.0, victory-cursor-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-cursor-container/-/victory-cursor-container-36.6.10.tgz#5a2cc8c848a23b3c39b5c93aae2781336788a1ad" + integrity sha512-o7zc5NObAwYqD51/9GYf+jD7tQtcXdmknKdYwxcN3uCLL/MQ2R1Ql3FdCyK+GjIlim6UXukJeWWhCelApEIOIQ== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-errorbar@^36.3.0, victory-errorbar@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-errorbar/-/victory-errorbar-36.6.8.tgz#41475f0555d1809396222b3c3b616db93a1927da" - integrity sha512-N4JdBy5wV+KU6pus7FBx+5on31oXanO+qVmtRH8u4W7CMWH5EwHortyu2wVYD9K2QoluXemIxZd7kfn14hmqfQ== +victory-errorbar@^36.3.0, victory-errorbar@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-errorbar/-/victory-errorbar-36.6.10.tgz#3e91a80dc26ab80d6118862180704a643ffbbe9c" + integrity sha512-3PsWreqosc2W35HyApHNypaGTw586LhKz74S7dWp8ZkXfxYarO1mzwVrUJLIFdGJWwroEoziuqCwbrmJPPKUvA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-group@^36.3.0, victory-group@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-group/-/victory-group-36.6.8.tgz#ad4e97a56317d243b413654917f27e68b8ce58b6" - integrity sha512-CiupDIGPPWVgwif3ayd8glSlR41mVbuT0Nl0ay9q42w2fiM32syiJAoifIw47X4tL8ow/DXH+/5Pd8eEyA2trA== +victory-group@^36.3.0, victory-group@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-group/-/victory-group-36.6.10.tgz#4683fb2f4e5f8d18ab9475a664944ac7f78d57d2" + integrity sha512-Dt25PXQBuJaa5yR1/ke0MTgzYZ/yQMGyGWVwN1buPIEQ3h7E3tqTVcB5oNXLiQ80MMip3U3i/yj3oASuicIyQw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" - victory-shared-events "^36.6.8" + victory-core "^36.6.10" + victory-shared-events "^36.6.10" -victory-histogram@^36.3.0, victory-histogram@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-histogram/-/victory-histogram-36.6.8.tgz#ec2cc1fdceff1f66e2026cf78abdbfe05361ce92" - integrity sha512-0Ah32gdTF1OJMBEqTSPyv09dUr3AmaDJMmyiZOHUd6RbLzA8RUanducVJ0gVay4A2Xm9s0vt1tzKU9Lj28tb6A== +victory-histogram@^36.3.0, victory-histogram@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-histogram/-/victory-histogram-36.6.10.tgz#5705fd9eea13842ee5fffe148f22ef0439b24116" + integrity sha512-WlgEN/bwMpFIn6TdlxIc89bkH9JWk58/lPkGD37o+BfwIjv9ney8jou8xDCOwu7rgYGp143gDOAxNhwLByYYpA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-bar "^36.6.8" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-bar "^36.6.10" + victory-core "^36.6.10" + victory-vendor "^36.6.10" -victory-legend@^36.3.0, victory-legend@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-legend/-/victory-legend-36.6.8.tgz#c0a5957f713cb77d80c1d8a3a1e7bd2e2021339e" - integrity sha512-OnkzB82Mvt5/1LYNsrfZQoXaVvgfp1rCsFRI3imq257Sh/UPy0/eZehCMQs/SVbU0z0EuIpXokhZb3BBdoJgpw== +victory-legend@^36.3.0, victory-legend@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-legend/-/victory-legend-36.6.10.tgz#10b2c1f03ea763c2aeafe769ad8b3e46bebe6235" + integrity sha512-+pKrkBBzcf1TxiwUsWlV6Vti+HRDvF4GUa15LTszt+J6LOoJIEFM7iNS2EuWBJRM30xkJKogDjn9NhngqRa/Aw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-line@^36.3.0, victory-line@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-line/-/victory-line-36.6.8.tgz#72cdd808bef877c025e520ef8ba691fb922c3d31" - integrity sha512-MozOejQRZPdzFaru5zUfqVB4TEff6nZjtQhOs+F5yyhXjLgM89zGX30r3jK5cjVdAPbTu4KPUrwktvlw+AkPRA== +victory-line@^36.3.0, victory-line@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-line/-/victory-line-36.6.10.tgz#d238a16098731950512bf42acd769da8475cdb5b" + integrity sha512-hS7CC5AgD9hkzu9F/b01j+q9UJk2SErcVrU8EP2SEv92M2ISH2dbFoLL/mioAPPUkSBh03o/9DDCMu7YeiZspw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-core "^36.6.10" + victory-vendor "^36.6.10" victory-native@36.3.1: version "36.3.1" @@ -16238,78 +16439,78 @@ victory-native@36.3.1: victory-voronoi-container "^36.3.1" victory-zoom-container "^36.3.0" -victory-pie@^36.3.0, victory-pie@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-pie/-/victory-pie-36.6.8.tgz#bd80f7abd7feb917e11b442d2a4bec3e716ef0f6" - integrity sha512-dUHWiiKd60dlt7OjFa+YYwanHAkP/T0abzy6O3SFxGre52oeqd8px1EoVhlLKpn4ao8L35koG9mvz6/pGyr8Dw== +victory-pie@^36.3.0, victory-pie@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-pie/-/victory-pie-36.6.10.tgz#7070ee3f50d0ca16f8eea312a035f3e0166cac20" + integrity sha512-ZgNBS3TNs89kjLe05IGjYDN0GK2wf0DfZFUcXdopL/EosdhKyWAVI7txJ8cUUH1Nex8UGLuI8rfuY4wWPe7rkw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" - victory-vendor "^36.6.8" + victory-core "^36.6.10" + victory-vendor "^36.6.10" -victory-polar-axis@^36.3.0, victory-polar-axis@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-polar-axis/-/victory-polar-axis-36.6.8.tgz#f00458d60f45169045b235c9a33e8c1767225d08" - integrity sha512-aU+Wp5six21POhI9oXeREnZHljpqcmwFHHnliVGrwgRsuc7TAjfXPWVOX9guEFfh6zQW6IZWWWTTLAN/PIEm9w== +victory-polar-axis@^36.3.0, victory-polar-axis@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-polar-axis/-/victory-polar-axis-36.6.10.tgz#d0ee7f78356e85860fd11b7ae1c1ef101feb3036" + integrity sha512-fZt+Ww9nizkfhlqH/XvdSCiTyFcmprLl1vlPxQAHNmiLFYxDT9fmJYmcMKD/idLzVkK1HjLpHE2/jB+u4dGgmw== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-scatter@^36.3.0, victory-scatter@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-scatter/-/victory-scatter-36.6.8.tgz#2d387ce059189045a8160dbb66003682a8b946e1" - integrity sha512-GKSNneBxIWLsF3eBSTW5IwT5S4YdsfFl4PVCP3/wTa2myfS5DIS9FufEnJp/FEZGalEXYWxeR47rlWqABxAj5A== +victory-scatter@^36.3.0, victory-scatter@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-scatter/-/victory-scatter-36.6.10.tgz#2e662d6c8fb425a63304df85b40ac4fbcba7901a" + integrity sha512-gRTPkJzTluqFBBvEu3cetP/riKRHVkcO5xiK5mQ/6Rwg8iqQbsIE+QmGSngPAd9emYjy1qIWebPy92QN5/j/5A== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-selection-container@^36.3.0, victory-selection-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-selection-container/-/victory-selection-container-36.6.8.tgz#43c6f2675f3e757ab0fe1eb4c6008ab672e28aaa" - integrity sha512-kudYbSX+o7fr64oeN7+EG/c+lqO22aypxVdCwa6BagAGoqqLR4jXxTqqIdp8tvxCgfCCXxopnTKYr46nubypGw== +victory-selection-container@^36.3.0, victory-selection-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-selection-container/-/victory-selection-container-36.6.10.tgz#208127e956745e4ae297eaaff163a7097ad8df28" + integrity sha512-jk7kqDepkTdML6NiOAz6ZQdhShm0MH4rO1lLnakA/2VYb7FpWtEYUNWs+v+OMaqzT067d3gzEqgQ5FljttuJDA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-shared-events@^36.3.0, victory-shared-events@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-shared-events/-/victory-shared-events-36.6.8.tgz#4fc4e9686679db0548c9e882008053b369419db2" - integrity sha512-hWPOVqMD3Sv6Rl1iyO6ibQrwYF9/eLCnRo0T59/Hsid6On0AJJjL9gv0oEIM5fqz7R7zx9PJmMk877IctEOemw== +victory-shared-events@^36.3.0, victory-shared-events@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-shared-events/-/victory-shared-events-36.6.10.tgz#89b102db89e9407c6c3b4b2340c6d37950f4d29e" + integrity sha512-WPz0Xkz0EChnajm5qYACcFfStxnr7C885XDw8d7fpeJV+oMfdtdMRUKLtY7HatyIVn15dJhmx5jkLEiNveUnug== dependencies: json-stringify-safe "^5.0.1" lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-stack@^36.3.0, victory-stack@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-stack/-/victory-stack-36.6.8.tgz#99e44f626cb78d2466120a75a2c353186ef83b7c" - integrity sha512-Pkux46IqAealOi0KvqQpaJKKKpHCfZ/sh5IeUKYFy+QKWAjiQjG6hFZeHgr2YaS7OfdbvHhoAdvp03KntWzpbw== +victory-stack@^36.3.0, victory-stack@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-stack/-/victory-stack-36.6.10.tgz#76750c451cd26d41cbafd3b5d2bbcfba376ba655" + integrity sha512-NPvpHFbR9E4z5HlDs0ERVsd0CPRBcsaParKaddG/te1U1eArEKOUxIoseT3J/Q22eaZoXI0x4E5zvqMddFNjCA== dependencies: lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" - victory-shared-events "^36.6.8" + victory-core "^36.6.10" + victory-shared-events "^36.6.10" -victory-tooltip@^36.3.0, victory-tooltip@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-tooltip/-/victory-tooltip-36.6.8.tgz#3175c848480adf53f487613a0f6b2880e39ae06c" - integrity sha512-9P+QeAGyDpP0trJnQ1NtnbDhpoJB0Ghc2boYEehvL12p0OzolY9/Nq5SDP0tu5i1BBujwFXtnoCDqt+mOH25fA== +victory-tooltip@^36.3.0, victory-tooltip@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-tooltip/-/victory-tooltip-36.6.10.tgz#ede6c1aaebbb6ca58a4b676ad0dcebb99ddeaf43" + integrity sha512-if1pSHJQCScPFThhz7qChYqGScRn0rbAm1Vis/ceRuTRryza4a/pOoYL0unQCZSV6q/pd0WYz7P2Pc4STNpS/Q== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-vendor@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-vendor/-/victory-vendor-36.6.8.tgz#5a1c555ca99a39fdb66a6c959c8426eb834893a2" - integrity sha512-H3kyQ+2zgjMPvbPqAl7Vwm2FD5dU7/4bCTQakFQnpIsfDljeOMDojRsrmJfwh4oAlNnWhpAf+mbAoLh8u7dwyQ== +victory-vendor@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-vendor/-/victory-vendor-36.6.10.tgz#e7e3646deaf0e850bc60dffdad6d7a4abee40632" + integrity sha512-7YqYGtsA4mByokBhCjk+ewwPhUfzhR1I3Da6/ZsZUv/31ceT77RKoaqrxRq5Ki+9we4uzf7+A+7aG2sfYhm7nA== dependencies: "@types/d3-array" "^3.0.3" "@types/d3-ease" "^3.0.0" @@ -16326,69 +16527,69 @@ victory-vendor@^36.6.8: d3-time "^3.0.0" d3-timer "^3.0.1" -victory-voronoi-container@^36.3.1, victory-voronoi-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-voronoi-container/-/victory-voronoi-container-36.6.8.tgz#77ca5bdcfdf585caa23850b061613a874942e39f" - integrity sha512-x9/OOZdMm4dh38jNhSfBYT0nG6ribsINU0/WNzIn3QcDXFBInsJ7jRySxYmdmk45OdXfbDRwDMqVHk72sWQyUw== +victory-voronoi-container@^36.3.1, victory-voronoi-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-voronoi-container/-/victory-voronoi-container-36.6.10.tgz#615693b5edee1f2b25af871b37c68590dfcecafb" + integrity sha512-uAMr5SYg2RQE7nN6i0/v40QX/+9GdsnoEXy7qldONp+7O/YaeIHF5s5Tgw4hi3NT5Ge0TzhyHm8tBna2KDK+lg== dependencies: delaunay-find "0.0.6" lodash "^4.17.19" prop-types "^15.8.1" react-fast-compare "^3.2.0" - victory-core "^36.6.8" - victory-tooltip "^36.6.8" + victory-core "^36.6.10" + victory-tooltip "^36.6.10" -victory-voronoi@^36.3.0, victory-voronoi@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-voronoi/-/victory-voronoi-36.6.8.tgz#ecce7c74ca98ca439372c804a14a9bd6cb84ca19" - integrity sha512-cyYis7g9Q/yQWnorBQQT35bsOkcGfeNdjyXmyd0K1LmERQ3oCZ9+a+cwcolA46XaJu1meBge9WcKK2QpbAFRXQ== +victory-voronoi@^36.3.0, victory-voronoi@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-voronoi/-/victory-voronoi-36.6.10.tgz#fd898eb7d2a59cc1a84ab61fae58a9bda6f73af6" + integrity sha512-eeIKV5jvR4yopVunK2NI53B9XY4Ks8cnfPZpSyORaZMd5k6509w62wWJHdkzf+fLH75G91LO6/YtEUcln8j16w== dependencies: d3-voronoi "^1.1.4" lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" -victory-zoom-container@^36.3.0, victory-zoom-container@^36.6.8: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory-zoom-container/-/victory-zoom-container-36.6.8.tgz#1a1232477dbbdc610156efbc9cf53c6cb54afa5a" - integrity sha512-gxX5iJUaxrFFZ2IGS0sQnUI+3Mhj6bVLqtOlQd3Krld+9f/ieuUbxl+P+eIyhQU/VyHSlirIZeOGOXJeYcU9jQ== +victory-zoom-container@^36.3.0, victory-zoom-container@^36.6.10: + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory-zoom-container/-/victory-zoom-container-36.6.10.tgz#f6cde6f51c20d03b02cdf2270066cd9e1c6f4aa6" + integrity sha512-PwVBFhVsRBSSbq+UUqDS/udlwIahn8NOBeRSeDhKErFR5+3zNUdS9P2nUnqb2yJHXSzFMM2/slMAdPOAyzEG4g== dependencies: lodash "^4.17.19" prop-types "^15.8.1" - victory-core "^36.6.8" + victory-core "^36.6.10" victory@^36.3.1: - version "36.6.8" - resolved "https://registry.yarnpkg.com/victory/-/victory-36.6.8.tgz#c81f9907305e53f9383a1323d43223f68eeb0092" - integrity sha512-/fr3jPq4RSIC2geT7opNIHKj4bEznig6b6Iq3W0xKStIW+bND8s6CvdfQm//+9HNnY9Q7ucY286G8QIdf0l4jg== - dependencies: - victory-area "^36.6.8" - victory-axis "^36.6.8" - victory-bar "^36.6.8" - victory-box-plot "^36.6.8" - victory-brush-container "^36.6.8" - victory-brush-line "^36.6.8" - victory-candlestick "^36.6.8" - victory-canvas "^36.6.8" - victory-chart "^36.6.8" - victory-core "^36.6.8" - victory-create-container "^36.6.8" - victory-cursor-container "^36.6.8" - victory-errorbar "^36.6.8" - victory-group "^36.6.8" - victory-histogram "^36.6.8" - victory-legend "^36.6.8" - victory-line "^36.6.8" - victory-pie "^36.6.8" - victory-polar-axis "^36.6.8" - victory-scatter "^36.6.8" - victory-selection-container "^36.6.8" - victory-shared-events "^36.6.8" - victory-stack "^36.6.8" - victory-tooltip "^36.6.8" - victory-voronoi "^36.6.8" - victory-voronoi-container "^36.6.8" - victory-zoom-container "^36.6.8" + version "36.6.10" + resolved "https://registry.yarnpkg.com/victory/-/victory-36.6.10.tgz#69901c57169aa4b6a9c231b5211b8f2c37c40e7d" + integrity sha512-7kK5JFOL/gdyTwkY0P8EI4G6f48AkfjdnBFt6y2m3/8Yh38W/raovr+IU7qGz6LYYqhzSpNSJMjkzk/2+fqAeA== + dependencies: + victory-area "^36.6.10" + victory-axis "^36.6.10" + victory-bar "^36.6.10" + victory-box-plot "^36.6.10" + victory-brush-container "^36.6.10" + victory-brush-line "^36.6.10" + victory-candlestick "^36.6.10" + victory-canvas "^36.6.10" + victory-chart "^36.6.10" + victory-core "^36.6.10" + victory-create-container "^36.6.10" + victory-cursor-container "^36.6.10" + victory-errorbar "^36.6.10" + victory-group "^36.6.10" + victory-histogram "^36.6.10" + victory-legend "^36.6.10" + victory-line "^36.6.10" + victory-pie "^36.6.10" + victory-polar-axis "^36.6.10" + victory-scatter "^36.6.10" + victory-selection-container "^36.6.10" + victory-shared-events "^36.6.10" + victory-stack "^36.6.10" + victory-tooltip "^36.6.10" + victory-voronoi "^36.6.10" + victory-voronoi-container "^36.6.10" + victory-zoom-container "^36.6.10" vinyl-fs@^3.0.2: version "3.0.3" @@ -16574,12 +16775,12 @@ web3-eth-abi@1.4.0: web3-utils "1.4.0" web3-eth-abi@^1.8.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.9.0.tgz#18662ef68bd3d25eedd9a1a1484089c39529c652" - integrity sha512-0BLQ3FKMrzJkA930jOX3fMaybAyubk06HChclLpiR0NWmgWXm1tmBrJdkyRy2ZTZpmfuZc9xTFRfl0yZID1voA== + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.10.0.tgz#53a7a2c95a571e205e27fd9e664df4919483cce1" + integrity sha512-cwS+qRBWpJ43aI9L3JS88QYPfFcSJJ3XapxOQ4j40v6mk7ATpA8CVK1vGTzpihNlOfMVRBkR95oAj7oL6aiDOg== dependencies: "@ethersproject/abi" "^5.6.3" - web3-utils "1.9.0" + web3-utils "1.10.0" web3-eth-accounts@1.4.0: version "1.4.0" @@ -16714,31 +16915,31 @@ web3-shh@1.4.0: web3-core-subscriptions "1.4.0" web3-net "1.4.0" -web3-utils@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.4.0.tgz#e8cb381c81b242dc1d4ecb397200356d404410e6" - integrity sha512-b8mEhwh/J928Xk+SQFjtqrR2EGPhpknWLcIt9aCpVPVRXiqjUGo/kpOHKz0azu9c6/onEJ9tWXZt0cVjmH0N5Q== +web3-utils@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.0.tgz#ca4c1b431a765c14ac7f773e92e0fd9377ccf578" + integrity sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg== dependencies: - bn.js "^4.11.9" - eth-lib "0.2.8" + bn.js "^5.2.1" ethereum-bloom-filters "^1.0.6" + ethereumjs-util "^7.1.0" ethjs-unit "0.1.6" number-to-bn "1.7.0" randombytes "^2.1.0" - underscore "1.12.1" utf8 "3.0.0" -web3-utils@1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.9.0.tgz#7c5775a47586cefb4ad488831be8f6627be9283d" - integrity sha512-p++69rCNNfu2jM9n5+VD/g26l+qkEOQ1m6cfRQCbH8ZRrtquTmrirJMgTmyOoax5a5XRYOuws14aypCOs51pdQ== +web3-utils@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.4.0.tgz#e8cb381c81b242dc1d4ecb397200356d404410e6" + integrity sha512-b8mEhwh/J928Xk+SQFjtqrR2EGPhpknWLcIt9aCpVPVRXiqjUGo/kpOHKz0azu9c6/onEJ9tWXZt0cVjmH0N5Q== dependencies: - bn.js "^5.2.1" + bn.js "^4.11.9" + eth-lib "0.2.8" ethereum-bloom-filters "^1.0.6" - ethereumjs-util "^7.1.0" ethjs-unit "0.1.6" number-to-bn "1.7.0" randombytes "^2.1.0" + underscore "1.12.1" utf8 "3.0.0" web3@1.4.0: @@ -16776,7 +16977,7 @@ websocket@^1.0.32: utf-8-validate "^5.0.2" yaeti "^0.0.6" -whatwg-fetch@>=0.10.0, whatwg-fetch@^3.0.0: +whatwg-fetch@^3.0.0: version "3.6.2" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== @@ -16810,9 +17011,9 @@ which-boxed-primitive@^1.0.2: is-symbol "^1.0.3" which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== which-typed-array@^1.1.2, which-typed-array@^1.1.9: version "1.1.9" @@ -17098,9 +17299,9 @@ yargs@^15.1.0, yargs@^15.3.1: yargs-parser "^18.1.2" yargs@^17.3.1, yargs@^17.5.1: - version "17.7.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" - integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: cliui "^8.0.1" escalade "^3.1.1"