diff --git a/.circleci/config.yml b/.circleci/config.yml index 7784e1c83..c07db334b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,23 +1,45 @@ version: 2.1 + orbs: android: circleci/android@2.0 + advanced-checkout: vsco/advanced-checkout@1.0.0 + node: circleci/node@5.1.0 + +commands: + install_pods: + parameters: + working_directory: + type: string + steps: + - restore_cache: + name: Restore Pods Cache + keys: + - v1-pods-{{ checksum "<< parameters.working_directory >>/Podfile.lock" }} + - run: + name: Install Pods + working_directory: << parameters.working_directory >> + command: pod install --deployment + - save_cache: + name: Save Pods Cache + key: v1-pods-{{ checksum "<< parameters.working_directory >>/Podfile.lock" }} + paths: + - << parameters.working_directory >>/Pods jobs: danger: docker: - - image: dantoml/danger:latest + - image: circleci/ruby:2.6.4 steps: - - checkout - - run: danger + - advanced-checkout/shallow-checkout + - run: bundle install + - run: bundle exec danger lint: - working_directory: ~/project - docker: - - image: cimg/node:16.17.1 + executor: + name: node/default steps: - - checkout - - run: - name: Install Node Packages - command: yarn + - advanced-checkout/shallow-checkout + - node/install-packages: + pkg-manager: yarn - run: name: Check Format command: yarn format @@ -26,62 +48,35 @@ jobs: command: yarn lint:ci test_module: - working_directory: ~/project - docker: - - image: cimg/node:16.17.1 + executor: + name: node/default steps: - - checkout: - path: ~/project - + - advanced-checkout/shallow-checkout + - node/install-packages: + pkg-manager: yarn - run: - name: Install Node Packages - command: yarn - - - run: - name: jest tests - command: | - mkdir -p test-results/jest - yarn run test - environment: - JEST_JUNIT_OUTPUT: test-results/jest/junit.xml - - - persist_to_workspace: - root: ~/project - paths: - - node_modules - - - store_test_results: - path: test-results - - - store_artifacts: - path: test-results + name: Run Tests + command: yarn test test_android: executor: name: android/android-machine tag: '2022.03.1' - working_directory: ~/project + working_directory: ~/project/examples/default steps: - - checkout: - path: ~/project - - run: - name: Install Yarn - command: npm install -g yarn - - run: - name: Install Node Packages - working_directory: example - command: yarn + - advanced-checkout/shallow-checkout + - node/install-yarn + - node/install-packages: + pkg-manager: yarn - android/run-tests: - working-directory: ./example/android - test-command: ./gradlew test + working-directory: android + test-command: ./gradlew test -PinstabugUploadEnable=false validate_shell_files: machine: image: ubuntu-2004:current - working_directory: ~/project steps: - - checkout: - path: ~/project + - advanced-checkout/shallow-checkout - run: name: Validate Android Script command: bash -n android/upload_sourcemap.sh @@ -95,34 +90,30 @@ jobs: sync_generated_files: macos: xcode: 13.4.1 - working_directory: ~/project steps: - - checkout - - run: yarn - - run: cd example && yarn - - run: cd example/ios && pod install + - advanced-checkout/shallow-checkout + - node/install-packages: + pkg-manager: yarn + - node/install-packages: + pkg-manager: yarn + app-dir: examples/default + - install_pods: + working_directory: examples/default/ios - run: git --no-pager diff - run: git diff-index HEAD --exit-code -p -I EXCLUDED_ARCHS # Ignore Arch Changes test_ios: macos: xcode: 13.4.1 - working_directory: ~/project/example + working_directory: ~/project/examples/default environment: - FL_OUTPUT_DIR: output + INSTABUG_SOURCEMAPS_UPLOAD_DISABLE: true steps: - - checkout: - path: ~/project - - run: - name: Install CocoaPods - command: sudo gem install cocoapods - - run: - name: Install node_modules - command: yarn - - run: - name: Install Pods + - advanced-checkout/shallow-checkout + - node/install-packages: + pkg-manager: yarn + - install_pods: working_directory: ios - command: pod install - run: name: Build and run tests working_directory: ios @@ -134,7 +125,6 @@ jobs: -sdk iphonesimulator \ -destination 'platform=iOS Simulator,name=iPhone 13 Pro Max,OS=15.5' \ test | xcpretty - no_output_timeout: 30m - run: name: Convert xcresult into JSON report working_directory: ios/coverage @@ -150,18 +140,18 @@ jobs: e2e_ios: macos: xcode: 13.4.1 - resource_class: large - working_directory: ~/project + resource_class: macos.x86.medium.gen2 environment: - FL_OUTPUT_DIR: output + INSTABUG_SOURCEMAPS_UPLOAD_DISABLE: true steps: - - checkout - - run: - name: Install CocoaPods - command: sudo gem install cocoapods - - run: - name: Install React Native CLI - command: npm install -g react-native-cli + - advanced-checkout/shallow-checkout + - node/install-packages: + pkg-manager: yarn + - node/install-packages: + pkg-manager: yarn + app-dir: examples/default + - install_pods: + working_directory: examples/default/ios - run: name: Install Detox CLI command: npm install -g detox-cli @@ -169,26 +159,16 @@ jobs: name: Install Detox Utils command: brew tap wix/brew && brew install applesimutils - run: - name: Install Node Packages - command: yarn - - run: - name: Build Project - command: yarn build:lib - - run: - name: Install Example's Node Packages - working_directory: example - command: yarn - - run: - name: Install Pods - working_directory: example/ios - command: pod install + name: Rebuild Detox.framework Cache + working_directory: examples/default + command: detox clean-framework-cache && detox build-framework-cache - run: name: Detox - Build Release App - working_directory: example + working_directory: examples/default command: detox build --configuration ios.sim.release --cleanup - run: name: Detox - Run E2E Tests - working_directory: example + working_directory: examples/default command: detox test --configuration ios.sim.release --cleanup e2e_android: @@ -196,25 +176,17 @@ jobs: name: android/android-machine tag: 2022.03.1 resource-class: large - working_directory: ~/project steps: - - checkout - - run: - name: Install Yarn - command: npm install --global yarn + - advanced-checkout/shallow-checkout + - node/install-yarn + - node/install-packages: + pkg-manager: yarn + - node/install-packages: + pkg-manager: yarn + app-dir: examples/default - run: name: Install Detox CLI - command: npm install --global detox-cli - - run: - name: Install Node Packages - command: yarn - - run: - name: Build Project - command: yarn build:lib - - run: - name: Install Example's Node Packages - working_directory: example - command: yarn + command: npm install -g detox-cli - android/create-avd: avd-name: Nexus_6P_API_27 install: true @@ -225,11 +197,11 @@ jobs: memory: 2048 post-emulator-launch-assemble-command: | rm -rf ~/.gradle/caches - cd ~/project/example/android && ./gradlew androidDependencies + cd ~/project/examples/default/android && ./gradlew androidDependencies cd .. && detox build -c android.emu.release - run: name: Detox - Run E2E Tests - working_directory: example + working_directory: examples/default command: detox test -c android.emu.release publish: @@ -237,13 +209,23 @@ jobs: xcode: 13.4.1 working_directory: '~' steps: - - checkout: - path: ~/project - - run: git clone https://InstabugCI:$RELEASE_GITHUB_TOKEN@github.com/Instabug/Escape.git - - run: cd Escape && swift build -c release - - run: cd Escape/.build/release && cp -f Escape /usr/local/bin/escape - - run: cd project && yarn && yarn build - - run: cd project && Escape react-native publish + - advanced-checkout/shallow-checkout + - run: git clone git@github.com:Instabug/Escape.git + - run: + working_directory: Escape + command: swift build -c release + - run: + working_directory: Escape/.build/release + command: cp -f Escape /usr/local/bin/escape + - node/install-packages: + pkg-manager: yarn + app-dir: project + - run: + working_directory: project + command: yarn build + - run: + working_directory: project + command: Escape react-native publish workflows: publish: diff --git a/.eslintrc.js b/.eslintrc.js index 0962b9e37..8c4e480df 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -14,7 +14,7 @@ module.exports = { }, { // Detox Overrides - files: ['example/e2e/**.js'], + files: ['examples/default/e2e/**.js'], env: { 'jest/globals': true, }, diff --git a/.github/stale.yml b/.github/stale.yml index 736996641..9f384ab85 100644 --- a/.github/stale.yml +++ b/.github/stale.yml @@ -29,3 +29,6 @@ closeComment: > This issue has been automatically closed since we haven't heard back from you. Please feel free to re-open the issue if you have more information to add. + +# Limit to only `issues` or `pulls` +only: issues diff --git a/.gitignore b/.gitignore index b222ede84..77ea121bf 100644 --- a/.gitignore +++ b/.gitignore @@ -37,7 +37,7 @@ DerivedData project.xcworkspace # Cocoapods -example/ios/Pods +Pods/ # Android/IJ .classpath diff --git a/.npmignore b/.npmignore index 13a25f741..a2fb195c9 100644 --- a/.npmignore +++ b/.npmignore @@ -3,7 +3,7 @@ # Misc .github/ .circleci/ -example/ +examples/ # Config files .eslintrc.js @@ -61,7 +61,7 @@ DerivedData project.xcworkspace # Cocoapods -example/ios/Pods +Pods/ # Android/IJ .classpath diff --git a/CHANGELOG.md b/CHANGELOG.md index 895ac1304..d36258b6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## [Unreleased](https://github.com/Instabug/Instabug-React-Native/compare/v11.9.1...dev) + +### Added + +- Add CodePush Support ([#877](https://github.com/Instabug/Instabug-React-Native/pull/877)). + ## [11.9.1](https://github.com/Instabug/Instabug-React-Native/compare/v11.9.0...v11.9.1) (March 01, 2023) ### Changed @@ -31,6 +37,9 @@ - Fixes external global error handlers not being called after initializing Instabug. - Fixes `BugReporting.setDidSelectPromptOptionHandler` on iOS. - Exports native Android SDK using `api` instead of `implementation`. +- Deprecates Instabug.start in favour of Instabug.init that takes a configuration object for SDK initialization. +- Deprecates Instabug.setDebugEnabled, Instabug.setSdkDebugLogsLevel, and APM.setLogLevel in favour of debugLogsLevel property, which can be passed to InstabugConfig while initializing the SDK using Instabug.init. +- Deprecates the enums: sdkDebugLogsLevel and logLevel in favour of a new enum LogLevel. ## 11.6.0 (2022-12-29) diff --git a/Gemfile b/Gemfile new file mode 100644 index 000000000..09a8c1e13 --- /dev/null +++ b/Gemfile @@ -0,0 +1,3 @@ +source "https://rubygems.org" + +gem 'danger', '~> 8.6', '>= 8.6.1' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 000000000..982ec2834 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,84 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.1) + public_suffix (>= 2.0.2, < 6.0) + claide (1.1.0) + claide-plugins (0.9.2) + cork + nap + open4 (~> 1.3) + colored2 (3.1.2) + cork (0.3.0) + colored2 (~> 3.1) + danger (8.6.1) + claide (~> 1.0) + claide-plugins (>= 0.9.2) + colored2 (~> 3.1) + cork (~> 0.1) + faraday (>= 0.9.0, < 2.0) + faraday-http-cache (~> 2.0) + git (~> 1.7) + kramdown (~> 2.3) + kramdown-parser-gfm (~> 1.0) + no_proxy_fix + octokit (~> 4.7) + terminal-table (>= 1, < 4) + faraday (1.10.2) + faraday-em_http (~> 1.0) + faraday-em_synchrony (~> 1.0) + faraday-excon (~> 1.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) + faraday-net_http (~> 1.0) + faraday-net_http_persistent (~> 1.0) + faraday-patron (~> 1.0) + faraday-rack (~> 1.0) + faraday-retry (~> 1.0) + ruby2_keywords (>= 0.0.4) + faraday-em_http (1.0.0) + faraday-em_synchrony (1.0.0) + faraday-excon (1.1.0) + faraday-http-cache (2.4.1) + faraday (>= 0.8) + faraday-httpclient (1.0.1) + faraday-multipart (1.0.4) + multipart-post (~> 2) + faraday-net_http (1.0.1) + faraday-net_http_persistent (1.2.0) + faraday-patron (1.0.0) + faraday-rack (1.0.0) + faraday-retry (1.0.3) + git (1.12.0) + addressable (~> 2.8) + rchardet (~> 1.8) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + multipart-post (2.2.3) + nap (1.1.0) + no_proxy_fix (0.1.2) + octokit (4.25.1) + faraday (>= 1, < 3) + sawyer (~> 0.9) + open4 (1.3.4) + public_suffix (5.0.0) + rchardet (1.8.0) + rexml (3.2.5) + ruby2_keywords (0.0.5) + sawyer (0.9.2) + addressable (>= 2.3.5) + faraday (>= 0.17.3, < 3) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + unicode-display_width (2.3.0) + +PLATFORMS + ruby + +DEPENDENCIES + danger (~> 8.6, >= 8.6.1) + +BUNDLED WITH + 1.17.2 diff --git a/RNInstabug.podspec b/RNInstabug.podspec index 40c480f4c..7db9579f1 100644 --- a/RNInstabug.podspec +++ b/RNInstabug.podspec @@ -1,5 +1,5 @@ require 'json' -require_relative './ios/native' +# require_relative './ios/native' package = JSON.parse(File.read('package.json')) @@ -15,6 +15,7 @@ Pod::Spec.new do |s| s.platform = :ios, "9.0" s.source_files = "ios/**/*.{h,m,mm}" + s.dependency 'Instabug' s.dependency 'React-Core' - use_instabug!(s) + # use_instabug!(s) end diff --git a/android/build.gradle b/android/build.gradle index 510effb27..fc3eee7b7 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -53,8 +53,11 @@ task upload_sourcemap(type: Exec) { } tasks.whenTaskAdded { task -> - if (task.name == 'preReleaseBuild' && - (rootProject.hasProperty("instabugUploadEnable") ? rootProject.instabugUploadEnable : true)) { + def isEnabled = rootProject.hasProperty('instabugUploadEnable') + ? new Boolean(rootProject.property('instabugUploadEnable')) + : true + + if (task.name == 'preReleaseBuild' && isEnabled) { task.dependsOn upload_sourcemap } } diff --git a/android/native.gradle b/android/native.gradle index 1cd104217..c8dc13aa6 100644 --- a/android/native.gradle +++ b/android/native.gradle @@ -3,5 +3,5 @@ project.ext.instabug = [ ] dependencies { - api "com.instabug.library:instabug:${project.ext.instabug.version}" + api "com.instabug.library:instabug:11.7.0.4576422-SNAPSHOT" } diff --git a/android/src/main/java/com/instabug/reactlibrary/RNInstabugBugReportingModule.java b/android/src/main/java/com/instabug/reactlibrary/RNInstabugBugReportingModule.java index 5a0de326e..1f0b6ddac 100644 --- a/android/src/main/java/com/instabug/reactlibrary/RNInstabugBugReportingModule.java +++ b/android/src/main/java/com/instabug/reactlibrary/RNInstabugBugReportingModule.java @@ -6,7 +6,6 @@ import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.WritableMap; @@ -20,15 +19,14 @@ import com.instabug.library.invocation.util.InstabugFloatingButtonEdge; import com.instabug.library.invocation.util.InstabugVideoRecordingButtonPosition; import com.instabug.reactlibrary.utils.ArrayUtil; -import com.instabug.reactlibrary.utils.InstabugUtil; +import com.instabug.reactlibrary.utils.EventEmitterModule; import com.instabug.reactlibrary.utils.MainThreadHandler; import java.util.ArrayList; import javax.annotation.Nonnull; -public class RNInstabugBugReportingModule extends ReactContextBaseJavaModule { - +public class RNInstabugBugReportingModule extends EventEmitterModule { public RNInstabugBugReportingModule(ReactApplicationContext reactContext) { super(reactContext); } @@ -39,6 +37,16 @@ public String getName() { return "IBGBugReporting"; } + @ReactMethod + public void addListener(String event) { + super.addListener(event); + } + + @ReactMethod + public void removeListeners(Integer count) { + super.removeListeners(count); + } + /** * Enable or disable all BugReporting related features. * @param isEnabled boolean indicating enabled or disabled. @@ -235,10 +243,10 @@ public void setOnInvokeHandler(final Callback onInvokeHandler) { @Override public void run() { try { - BugReporting.setOnInvokeCallback(new OnInvokeCallback() { + BugReporting.setOnInvokeCallback(new OnInvokeCallback() { @Override public void onInvoke() { - InstabugUtil.sendEvent(getReactApplicationContext(), Constants.IBG_PRE_INVOCATION_HANDLER, null); + sendEvent(Constants.IBG_PRE_INVOCATION_HANDLER, null); } }); } catch (java.lang.Exception exception) { @@ -286,7 +294,7 @@ public void call(DismissType dismissType, ReportType reportType) { WritableMap params = Arguments.createMap(); params.putString("dismissType", dismissType.toString()); params.putString("reportType", reportType.toString()); - InstabugUtil.sendEvent(getReactApplicationContext(), Constants.IBG_POST_INVOCATION_HANDLER, params); + sendEvent(Constants.IBG_POST_INVOCATION_HANDLER, params); } }); } catch (java.lang.Exception exception) { diff --git a/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java b/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java index 85d29c05a..34c98e5c0 100644 --- a/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java +++ b/android/src/main/java/com/instabug/reactlibrary/RNInstabugReactnativeModule.java @@ -1,68 +1,44 @@ package com.instabug.reactlibrary; -import android.annotation.SuppressLint; -import android.app.Application; +import static com.instabug.reactlibrary.utils.InstabugUtil.getMethod; + import android.graphics.Bitmap; import android.net.Uri; -import android.os.Handler; -import android.os.Looper; import android.util.Log; import android.view.View; import com.facebook.react.bridge.Arguments; -import com.facebook.react.bridge.Promise; +import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableArray; -import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.WritableArray; -import com.facebook.react.bridge.WritableNativeArray; import com.facebook.react.bridge.WritableMap; +import com.facebook.react.bridge.WritableNativeArray; import com.facebook.react.bridge.WritableNativeMap; -import com.facebook.react.bridge.Callback; - -import com.facebook.react.modules.core.DeviceEventManagerModule; import com.facebook.react.uimanager.NativeViewHierarchyManager; import com.facebook.react.uimanager.UIBlock; import com.facebook.react.uimanager.UIManagerModule; import com.instabug.apm.APM; -import com.instabug.bug.BugReporting; import com.instabug.bug.instabugdisclaimer.Internal; -import com.instabug.bug.invocation.Option; -import com.instabug.chat.Replies; -import com.instabug.crash.CrashReporting; -import com.instabug.featuresrequest.FeatureRequests; -import com.instabug.featuresrequest.ActionType; import com.instabug.library.Feature; import com.instabug.library.Instabug; -import com.instabug.library.InstabugState; -import com.instabug.library.OnSdkDismissCallback; -import com.instabug.library.Platform; +import com.instabug.library.InstabugColorTheme; +import com.instabug.library.InstabugCustomTextPlaceHolder; import com.instabug.library.LogLevel; -import com.instabug.library.extendedbugreport.ExtendedBugReport; +import com.instabug.library.Platform; import com.instabug.library.internal.module.InstabugLocale; import com.instabug.library.invocation.InstabugInvocationEvent; -import com.instabug.library.InstabugColorTheme; -import com.instabug.library.invocation.OnInvokeCallback; -import com.instabug.library.invocation.util.InstabugFloatingButtonEdge; -import com.instabug.library.invocation.util.InstabugVideoRecordingButtonPosition; import com.instabug.library.logging.InstabugLog; -import com.instabug.library.ui.onboarding.WelcomeMessage; -import com.instabug.library.InstabugCustomTextPlaceHolder; -import com.instabug.library.model.Report; import com.instabug.library.model.NetworkLog; +import com.instabug.library.model.Report; +import com.instabug.library.ui.onboarding.WelcomeMessage; import com.instabug.library.visualusersteps.State; - import com.instabug.reactlibrary.utils.ArrayUtil; +import com.instabug.reactlibrary.utils.EventEmitterModule; import com.instabug.reactlibrary.utils.InstabugUtil; import com.instabug.reactlibrary.utils.MainThreadHandler; -import com.instabug.reactlibrary.utils.ReportUtil; -import com.instabug.survey.callbacks.*; -import com.instabug.survey.Survey; -import com.instabug.survey.Surveys; -import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import org.json.JSONTokener; @@ -73,18 +49,15 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Locale; import java.util.Map; -import static com.instabug.reactlibrary.utils.InstabugUtil.getMethod; - /** * The type Rn instabug reactnative module. */ -public class RNInstabugReactnativeModule extends ReactContextBaseJavaModule { +public class RNInstabugReactnativeModule extends EventEmitterModule { private static final String TAG = RNInstabugReactnativeModule.class.getSimpleName(); @@ -98,7 +71,7 @@ public class RNInstabugReactnativeModule extends ReactContextBaseJavaModule { */ public RNInstabugReactnativeModule(ReactApplicationContext reactContext) { super(reactContext); - //init placHolders + //init placeHolders placeHolders = new InstabugCustomTextPlaceHolder(); } @@ -106,7 +79,18 @@ public RNInstabugReactnativeModule(ReactApplicationContext reactContext) { public String getName() { return "Instabug"; } - + + + @ReactMethod + public void addListener(String event) { + super.addListener(event); + } + + @ReactMethod + public void removeListeners(Integer count) { + super.removeListeners(count); + } + /** * Enables or disables Instabug functionality. * @param isEnabled A boolean to enable/disable Instabug. @@ -134,7 +118,7 @@ public void run() { * @param invocationEventValues The events that invoke the SDK's UI. */ @ReactMethod - public void init(final String token, final ReadableArray invocationEventValues, final String logLevel) { + public void init(final String token, final ReadableArray invocationEventValues, final String logLevel, final String codePushLabel) { MainThreadHandler.runOnMainThread(new Runnable() { @Override public void run() { @@ -149,6 +133,7 @@ public void run() { new Instabug.Builder(getCurrentActivity().getApplication(), token) .setInvocationEvents(parsedInvocationEvents.toArray(new InstabugInvocationEvent[0])) .setSdkDebugLogsLevel(parsedLogLevel) + .setCodePushVersion(codePushLabel) .build(); // Temporarily disabling APM hot launches @@ -233,28 +218,6 @@ public void run() { }); } - /** - * Sets whether the extended bug report mode should be disabled, - * enabled with required fields, or enabled with optional fields. - * - * @param extendedBugReportMode - */ - @ReactMethod - public void setExtendedBugReportMode(final String extendedBugReportMode) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - final ExtendedBugReport.State state = ArgsRegistry.extendedBugReportStates - .getOrDefault(extendedBugReportMode, ExtendedBugReport.State.DISABLED); - BugReporting.setExtendedBugReportState(state); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - /** * The file at filePath will be uploaded along upcoming reports with the name * fileNameWithExtension @@ -385,165 +348,6 @@ public void run() { }); } - /** - * Is enabled boolean. - * - * @return {@code true} if Instabug is enabled, {@code false} if it's disabled - * @see #enable() - * @see #disable() - */ - @ReactMethod - public boolean isEnabled() { - boolean isEnabled = false; - try { - isEnabled = Instabug.isEnabled(); - } catch (Exception e) { - e.printStackTrace(); - } - return isEnabled; - } - - - /** - * Enables all Instabug functionality - */ - @ReactMethod - public void enable() { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Instabug.enable(); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * Disables all Instabug functionality - */ - @ReactMethod - public void disable() { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Instabug.disable(); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * Shows the UI for feature requests list - */ - @ReactMethod - public void showFeatureRequests() { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - FeatureRequests.show(); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * @return application token - */ - @ReactMethod - public String getAppToken() { - String appToken = ""; - try { - appToken = Instabug.getAppToken(); - } catch (Exception e) { - e.printStackTrace(); - } - - return appToken; - } - - /** - * @deprecated - * Sets the event used to invoke Instabug SDK - * - * @param invocationEventValue the invocation event value - * @see InstabugInvocationEvent - */ - @ReactMethod - public void setInvocationEvent(final String invocationEventValue) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - final InstabugInvocationEvent invocationEvent = ArgsRegistry.invocationEvents - .getOrDefault(invocationEventValue, InstabugInvocationEvent.SHAKE); - BugReporting.setInvocationEvents(invocationEvent); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * Sets the event used to invoke Instabug SDK - * - * @param invocationEventValues the invocation event value - * @see InstabugInvocationEvent - */ - @ReactMethod - public void setInvocationEvents(final ReadableArray invocationEventValues) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - final ArrayList keys = ArrayUtil.parseReadableArrayOfStrings(invocationEventValues); - final ArrayList parsedInvocationEvents = ArgsRegistry.invocationEvents.getAll(keys); - BugReporting.setInvocationEvents(parsedInvocationEvents.toArray(new InstabugInvocationEvent[0])); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * Sets the event used to invoke Instabug SDK - * - * @param invocationOptionValues the invocation event value - * @see InstabugInvocationEvent - */ - @ReactMethod - public void setInvocationOptions(final ReadableArray invocationOptionValues) { - MainThreadHandler.runOnMainThread(new Runnable() { - @SuppressLint("WrongConstant") - @Override - public void run() { - try { - final ArrayList keys = ArrayUtil.parseReadableArrayOfStrings(invocationOptionValues); - final ArrayList options = ArgsRegistry.invocationOptions.getAll(keys); - - final int[] optionsInts = new int[options.size()]; - for (int i = 0; i < options.size(); i++) { - optionsInts[i] = options.get(i); - } - - BugReporting.setOptions(optionsInts); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - /** * Enable/Disable debug logs from Instabug SDK * Default state: disabled @@ -564,58 +368,6 @@ public void run() { }); } - - - - /** - * Appends a log message to Instabug internal log - *

- * These logs are then sent along the next uploaded report. - * All log messages are timestamped
- * Logs aren't cleared per single application run. If you wish to reset the logs, - * use {@link #clearLogs()} ()} - *

- * Note: logs passed to this method are NOT printed to Logcat - * - * @param level the level - * @param message the message - */ - @ReactMethod - public void log(final String level, final String message) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - switch (level) { - case "v": - InstabugLog.v(message); - break; - case "i": - InstabugLog.i(message); - break; - case "d": - InstabugLog.d(message); - break; - case "e": - InstabugLog.e(message); - break; - case "w": - InstabugLog.w(message); - break; - case "wtf": - InstabugLog.wtf(message); - break; - default: - InstabugLog.d(message); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - } - @ReactMethod public void logVerbose(final String message) { MainThreadHandler.runOnMainThread(new Runnable() { @@ -703,52 +455,6 @@ public void run() { }); } - /** - * Returns true if the survey with a specific token was answered before. - * Will return false if the token does not exist or if the survey was not answered before. - * - * @param surveyToken the attribute key as string - * @param hasRespondedCallback A callback that gets invoked with the returned value of whether - * the user has responded to the survey or not. - * @return the desired value of whether the user has responded to the survey or not. - */ - @ReactMethod - public void hasRespondedToSurveyWithToken(final String surveyToken, final Callback hasRespondedCallback) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - boolean hasResponded; - try { - hasResponded = Surveys.hasRespondToSurvey(surveyToken); - hasRespondedCallback.invoke(hasResponded); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - /** - * Shows survey with a specific token. - * Does nothing if there are no available surveys with that specific token. - * Answered and cancelled surveys won't show up again. - * - * @param surveyToken A String with a survey token. - */ - @ReactMethod - public void showSurveyWithToken(final String surveyToken) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Surveys.showSurvey(surveyToken); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - /** * Sets user attribute to overwrite it's value or create a new one if it doesn't exist. * @@ -936,33 +642,6 @@ public void run() { }); } - /** - * Sets a block of code to be executed just before the SDK's UI is presented. - * This block is executed on the UI thread. Could be used for performing any - * UI changes before the SDK's UI is shown. - * - * @param preInvocationHandler - A callback that gets executed before - * invoking the SDK - */ - @ReactMethod - public void setPreInvocationHandler(final Callback preInvocationHandler) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - BugReporting.setOnInvokeCallback(new OnInvokeCallback() { - @Override - public void onInvoke() { - sendEvent(getReactApplicationContext(), "IBGpreInvocationHandler", null); - } - }); - } catch (java.lang.Exception exception) { - exception.printStackTrace(); - } - } - }); - } - /** * Sets a block of code to be executed before sending each report. * This block is executed in the background before sending each report. Could @@ -986,7 +665,7 @@ public void onReportCreated(Report report) { reportParam.putString("userData", report.getUserData()); reportParam.putMap("userAttributes", convertFromHashMapToWriteableMap(report.getUserAttributes())); reportParam.putMap("fileAttachments", convertFromHashMapToWriteableMap(report.getFileAttachments())); - sendEvent(getReactApplicationContext(), "IBGpreSendingHandler", reportParam); + sendEvent("IBGpreSendingHandler", reportParam); currentReport = report; } }); @@ -1069,33 +748,6 @@ public void addFileAttachmentWithDataToReport(String data, String fileName) { } } - - @ReactMethod - public void getReport(Promise promise) { - try { - Method method = getMethod(Class.forName("com.instabug.library.Instabug"), "getReport"); - if (method != null) { - Report report = (Report) method.invoke(null); - WritableMap reportParam = Arguments.createMap(); - reportParam.putArray("tagsArray", convertArrayListToWritableArray(report.getTags())); - reportParam.putArray("consoleLogs", ReportUtil.parseConsoleLogs(report.getConsoleLog())); - reportParam.putString("userData", report.getUserData()); - reportParam.putMap("userAttributes", convertFromHashMapToWriteableMap(report.getUserAttributes())); - reportParam.putMap("fileAttachments", convertFromHashMapToWriteableMap(report.getFileAttachments())); - promise.resolve(reportParam); - currentReport = report; - } - - } catch (ClassNotFoundException e) { - promise.reject(e); - } catch (IllegalAccessException e) { - promise.reject(e); - } catch (InvocationTargetException e) { - promise.reject(e); - } - } - - private WritableMap convertFromHashMapToWriteableMap(HashMap hashMap) { WritableMap writableMap = new WritableNativeMap(); for(int i = 0; i < hashMap.size(); i++) { @@ -1139,100 +791,6 @@ private WritableArray convertArrayListToWritableArray(List arrayList) { } - /** - * Sets a block of code to be executed right after the SDK's UI is dismissed. - * This block is executed on the UI thread. Could be used for performing any - * UI changes after the SDK's UI is dismissed. - * - * @param postInvocationHandler - A callback to get executed after - * dismissing the SDK. - */ - @ReactMethod - public void setPostInvocationHandler(final Callback postInvocationHandler) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - BugReporting.setOnDismissCallback(new OnSdkDismissCallback() { - @Override - public void call(DismissType dismissType, ReportType reportType) { - WritableMap params = Arguments.createMap(); - params.putString("dismissType", dismissType.toString()); - params.putString("reportType", reportType.toString()); - sendEvent(getReactApplicationContext(), "IBGpostInvocationHandler", params); - } - }); - } catch (java.lang.Exception exception) { - exception.printStackTrace(); - } - } - }); - } - - /** - * Show any valid survey if exist - * - * @return true if a valid survey was shown otherwise false - */ - @ReactMethod - public void showSurveysIfAvailable() { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Surveys.showSurveyIfAvailable(); - } catch (java.lang.Exception exception) { - exception.printStackTrace(); - } - } - }); - } - - /** - * Sets the runnable that gets executed just before showing any valid survey
- * WARNING: This runs on your application's main UI thread. Please do not include - * any blocking operations to avoid ANRs. - * - * @param willShowSurveyHandler to run on the UI thread before showing any valid survey - */ - @ReactMethod - public void setWillShowSurveyHandler(final Callback willShowSurveyHandler) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - Surveys.setOnShowCallback(new OnShowCallback() { - @Override - public void onShow() { - sendEvent(getReactApplicationContext(), "IBGWillShowSurvey", null); - } - }); - } - }); - } - - /** - * Sets the runnable that gets executed just after showing any valid survey
- * WARNING: This runs on your application's main UI thread. Please do not include - * any blocking operations to avoid ANRs. - * - * @param didDismissSurveyHandler to run on the UI thread after showing any valid survey - */ - @ReactMethod - public void setDidDismissSurveyHandler(final Callback didDismissSurveyHandler) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - Surveys.setOnDismissCallback(new OnDismissCallback() { - @Override - public void onDismiss() { - sendEvent(getReactApplicationContext(), "IBGDidDismissSurvey", null); - } - }); - } - }); - } - - /** * Clears all Uris of the attached files. * The URIs which added via {@link Instabug#addFileAttachment} API not the physical files. @@ -1316,70 +874,6 @@ public void run() { }); } - /** - * Sets the threshold value of the shake gesture for android devices. - * Default for android is an integer value equals 350. - * you could increase the shaking difficulty level by - * increasing the `350` value and vice versa. - * - * @param androidThreshold Threshold for android devices. - */ - @ReactMethod - public void setShakingThresholdForAndroid(final int androidThreshold) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - BugReporting.setShakingThreshold(androidThreshold); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - @ReactMethod - public void setOnNewReplyReceivedCallback(final Callback onNewReplyReceivedCallback) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Runnable onNewReplyReceivedRunnable = new Runnable() { - @Override - public void run() { - sendEvent(getReactApplicationContext(), "IBGOnNewReplyReceivedCallback", null); - } - }; - Replies.setOnNewReplyReceivedCallback(onNewReplyReceivedRunnable); - } catch (java.lang.Exception exception) { - exception.printStackTrace(); - } - } - }); - } - - /** - * Returns an array containing the available surveys. - * @param availableSurveysCallback - Callback with the returned value of the available surveys - * - */ - @ReactMethod - public void getAvailableSurveys(final Callback availableSurveysCallback) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - List availableSurveys = Surveys.getAvailableSurveys(); - JSONArray surveysArray = toJson(availableSurveys); - WritableArray array = convertJsonToArray(surveysArray); - availableSurveysCallback.invoke(array); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - @ReactMethod public void show() { MainThreadHandler.runOnMainThread(new Runnable() { @@ -1390,64 +884,6 @@ public void run() { }); } - @ReactMethod - public void setBugReportingEnabled(final boolean isEnabled) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - if (isEnabled) { - BugReporting.setState(Feature.State.ENABLED); - } else { - BugReporting.setState(Feature.State.DISABLED); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - } - - @ReactMethod - public void setRepliesEnabled(final boolean isEnabled) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - if (isEnabled) { - Replies.setState(Feature.State.ENABLED); - } else { - Replies.setState(Feature.State.DISABLED); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - - @ReactMethod - public void hasChats(final Callback callback) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - boolean hasChats = Replies.hasChats(); - callback.invoke(hasChats); - } - }); - } - - @ReactMethod - public void showReplies() { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - Replies.show(); - } - }); - } - @ReactMethod public void callPrivateApi(String apiName, String param) { try { @@ -1466,95 +902,6 @@ public void callPrivateApi(String apiName, String param) { } } - - - private static WritableMap convertJsonToMap(JSONObject jsonObject) throws JSONException { - WritableMap map = new WritableNativeMap(); - - Iterator iterator = jsonObject.keys(); - while (iterator.hasNext()) { - String key = iterator.next(); - Object value = jsonObject.get(key); - if (value instanceof JSONObject) { - map.putMap(key, convertJsonToMap((JSONObject) value)); - } else if (value instanceof JSONArray) { - map.putArray(key, convertJsonToArray((JSONArray) value)); - } else if (value instanceof Boolean) { - map.putBoolean(key, (Boolean) value); - } else if (value instanceof Integer) { - map.putInt(key, (Integer) value); - } else if (value instanceof Double) { - map.putDouble(key, (Double) value); - } else if (value instanceof String) { - map.putString(key, (String) value); - } else { - map.putString(key, value.toString()); - } - } - return map; - } - - private static WritableArray convertJsonToArray(JSONArray jsonArray) throws JSONException { - WritableArray array = Arguments.createArray(); - - for (int i = 0; i < jsonArray.length(); i++) { - Object value = jsonArray.get(i); - if (value instanceof JSONObject) { - array.pushMap(convertJsonToMap((JSONObject) value)); - } else if (value instanceof JSONArray) { - array.pushArray(convertJsonToArray((JSONArray) value)); - } else if (value instanceof Boolean) { - array.pushBoolean((Boolean) value); - } else if (value instanceof Integer) { - array.pushInt((Integer) value); - } else if (value instanceof Double) { - array.pushDouble((Double) value); - } else if (value instanceof String) { - array.pushString((String) value); - } - } - return array; - } - - /** - * Convenience method to convert from a list of Surveys to a JSON array - * - * @param list - * List of Surveys to be converted to JSON array - */ - public static JSONArray toJson(List list) { - JSONArray jsonArray = new JSONArray(); - try{ - for (Survey obj : list) { - JSONObject object = new JSONObject(); - object.put("title", obj.getTitle()); - jsonArray.put(object); - } - } catch (JSONException e) { - e.printStackTrace(); - } - return jsonArray; - } - - /** - * Set Surveys auto-showing state, default state auto-showing enabled - * - * @param autoShowingSurveysEnabled whether Surveys should be auto-showing or not - */ - @ReactMethod - public void setAutoShowingSurveysEnabled(final boolean autoShowingSurveysEnabled) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - Surveys.setAutoShowingEnabled(autoShowingSurveysEnabled); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - /** * Enable/disable session profiler * @@ -1578,36 +925,6 @@ public void run() { }); } - /** - * Sets whether email field is required or not when submitting - * new-feature-request/new-comment-on-feature - * - * @param isEmailRequired set true to make email field required - * @param actionTypes Bitwise-or of actions - */ - @SuppressLint("WrongConstant") - @ReactMethod - public void setEmailFieldRequiredForFeatureRequests(final boolean isEmailRequired, final ReadableArray actionTypes) { - MainThreadHandler.runOnMainThread(new Runnable() { - @Override - public void run() { - try { - final ArrayList keys = ArrayUtil.parseReadableArrayOfStrings(actionTypes); - final ArrayList types = ArgsRegistry.actionTypes.getAll(keys); - - final int[] typesInts = new int[types.size()]; - for (int i = 0; i < types.size(); i++) { - typesInts[i] = types.get(i); - } - - FeatureRequests.setEmailFieldRequired(isEmailRequired, typesInts); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - } - /** * Extracts HTTP connection properties. Request method, Headers, Date, Url and Response code * @@ -1697,14 +1014,6 @@ public void run() { }); } - private void sendEvent(ReactApplicationContext reactContext, - String eventName, - WritableMap params) { - reactContext - .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class) - .emit(eventName, params); - } - @ReactMethod public void addExperiments(final ReadableArray experiments) { MainThreadHandler.runOnMainThread(new Runnable() { diff --git a/android/src/main/java/com/instabug/reactlibrary/RNInstabugRepliesModule.java b/android/src/main/java/com/instabug/reactlibrary/RNInstabugRepliesModule.java index c83fd61db..25e14575f 100644 --- a/android/src/main/java/com/instabug/reactlibrary/RNInstabugRepliesModule.java +++ b/android/src/main/java/com/instabug/reactlibrary/RNInstabugRepliesModule.java @@ -1,25 +1,21 @@ package com.instabug.reactlibrary; -import android.os.Handler; -import android.os.Looper; - import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableType; import com.facebook.react.bridge.ReadableMapKeySetIterator; import com.instabug.chat.Replies; import com.instabug.library.Feature; -import com.instabug.reactlibrary.utils.InstabugUtil; +import com.instabug.reactlibrary.utils.EventEmitterModule; import com.instabug.reactlibrary.utils.MainThreadHandler; import javax.annotation.Nonnull; import java.util.HashMap; import java.util.Map; -public class RNInstabugRepliesModule extends ReactContextBaseJavaModule { +public class RNInstabugRepliesModule extends EventEmitterModule { public RNInstabugRepliesModule(ReactApplicationContext reactApplicationContext) { super(reactApplicationContext); @@ -31,6 +27,16 @@ public String getName() { return "IBGReplies"; } + @ReactMethod + public void addListener(String event) { + super.addListener(event); + } + + @ReactMethod + public void removeListeners(Integer count) { + super.removeListeners(count); + } + @ReactMethod public void setEnabled(final boolean isEnabled) { MainThreadHandler.runOnMainThread(new Runnable() { @@ -278,7 +284,7 @@ public void run() { Runnable onNewReplyReceivedRunnable = new Runnable() { @Override public void run() { - InstabugUtil.sendEvent(getReactApplicationContext(), Constants.IBG_ON_NEW_REPLY_RECEIVED_CALLBACK, null); + sendEvent(Constants.IBG_ON_NEW_REPLY_RECEIVED_CALLBACK, null); } }; Replies.setOnNewReplyReceivedCallback(onNewReplyReceivedRunnable); diff --git a/android/src/main/java/com/instabug/reactlibrary/RNInstabugSurveysModule.java b/android/src/main/java/com/instabug/reactlibrary/RNInstabugSurveysModule.java index 349d02f67..c3e59be8f 100644 --- a/android/src/main/java/com/instabug/reactlibrary/RNInstabugSurveysModule.java +++ b/android/src/main/java/com/instabug/reactlibrary/RNInstabugSurveysModule.java @@ -1,15 +1,12 @@ package com.instabug.reactlibrary; -import android.os.Handler; -import android.os.Looper; - import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.WritableArray; import com.instabug.library.Feature; import com.instabug.reactlibrary.utils.ArrayUtil; +import com.instabug.reactlibrary.utils.EventEmitterModule; import com.instabug.reactlibrary.utils.InstabugUtil; import com.instabug.reactlibrary.utils.MainThreadHandler; import com.instabug.survey.callbacks.*; @@ -22,7 +19,7 @@ import javax.annotation.Nonnull; -public class RNInstabugSurveysModule extends ReactContextBaseJavaModule { +public class RNInstabugSurveysModule extends EventEmitterModule { public RNInstabugSurveysModule(ReactApplicationContext reactContext) { super(reactContext); @@ -34,6 +31,16 @@ public String getName() { return "IBGSurveys"; } + @ReactMethod + public void addListener(String event) { + super.addListener(event); + } + + @ReactMethod + public void removeListeners(Integer count) { + super.removeListeners(count); + } + /** * Returns true if the survey with a specific token was answered before. * Will return false if the token does not exist or if the survey was not answered before. @@ -137,7 +144,7 @@ public void run() { Surveys.setOnShowCallback(new OnShowCallback() { @Override public void onShow() { - InstabugUtil.sendEvent(getReactApplicationContext(), Constants.IBG_ON_SHOW_SURVEY_HANDLER, null); + sendEvent(Constants.IBG_ON_SHOW_SURVEY_HANDLER, null); } }); } @@ -159,7 +166,7 @@ public void run() { Surveys.setOnDismissCallback(new OnDismissCallback() { @Override public void onDismiss() { - InstabugUtil.sendEvent(getReactApplicationContext(), Constants.IBG_ON_DISMISS_SURVEY_HANDLER, null); + sendEvent(Constants.IBG_ON_DISMISS_SURVEY_HANDLER, null); } }); } diff --git a/android/src/main/java/com/instabug/reactlibrary/utils/EventEmitterModule.java b/android/src/main/java/com/instabug/reactlibrary/utils/EventEmitterModule.java new file mode 100644 index 000000000..d2226cc49 --- /dev/null +++ b/android/src/main/java/com/instabug/reactlibrary/utils/EventEmitterModule.java @@ -0,0 +1,34 @@ +package com.instabug.reactlibrary.utils; + +import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; + +import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.bridge.ReactContextBaseJavaModule; +import com.facebook.react.bridge.WritableMap; +import com.facebook.react.modules.core.DeviceEventManagerModule; + +public abstract class EventEmitterModule extends ReactContextBaseJavaModule { + private int listenerCount = 0; + + public EventEmitterModule(ReactApplicationContext context) { + super(context); + } + + @VisibleForTesting + public void sendEvent(String event, @Nullable WritableMap params) { + if (listenerCount > 0) { + getReactApplicationContext() + .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class) + .emit(event, params); + } + } + + protected void addListener(String ignoredEvent) { + listenerCount++; + } + + protected void removeListeners(Integer count) { + listenerCount -= count; + } +} diff --git a/android/src/main/java/com/instabug/reactlibrary/utils/InstabugUtil.java b/android/src/main/java/com/instabug/reactlibrary/utils/InstabugUtil.java index f2ca2505b..2b64a2538 100644 --- a/android/src/main/java/com/instabug/reactlibrary/utils/InstabugUtil.java +++ b/android/src/main/java/com/instabug/reactlibrary/utils/InstabugUtil.java @@ -41,14 +41,6 @@ public static Method getMethod(Class clazz, String methodName, Class... paramete return null; } - public static void sendEvent(ReactApplicationContext reactContext, - String eventName, - WritableMap params) { - reactContext - .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class) - .emit(eventName, params); - } - /** * Convenience method to convert from a list of Surveys to a JSON array * diff --git a/android/src/test/java/com/instabug/reactlibrary/RNInstabugBugReportingModuleTest.java b/android/src/test/java/com/instabug/reactlibrary/RNInstabugBugReportingModuleTest.java index dab156cbe..ce8ace4f3 100644 --- a/android/src/test/java/com/instabug/reactlibrary/RNInstabugBugReportingModuleTest.java +++ b/android/src/test/java/com/instabug/reactlibrary/RNInstabugBugReportingModuleTest.java @@ -37,12 +37,13 @@ import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mockStatic; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; public class RNInstabugBugReportingModuleTest { - private RNInstabugBugReportingModule bugReportingModule = new RNInstabugBugReportingModule(mock(ReactApplicationContext.class)); + private RNInstabugBugReportingModule bugReportingModule = spy(new RNInstabugBugReportingModule(mock(ReactApplicationContext.class))); private final static ScheduledExecutorService mainThread = Executors.newSingleThreadScheduledExecutor(); // Mock Objects @@ -240,8 +241,7 @@ public Object answer(InvocationOnMock invocation) { bugReportingModule.setOnInvokeHandler(null); // then - verify(InstabugUtil.class,VerificationModeFactory.times(1)); - InstabugUtil.sendEvent(any(ReactApplicationContext.class), eq(Constants.IBG_PRE_INVOCATION_HANDLER), Matchers.isNull(WritableMap.class)); + verify(bugReportingModule).sendEvent(Constants.IBG_PRE_INVOCATION_HANDLER, null); } @@ -255,7 +255,6 @@ public Object answer(InvocationOnMock invocation) { when(Arguments.createMap()).thenReturn(new JavaOnlyMap()); mockBugReporting.when(() -> BugReporting.setOnDismissCallback(any(OnSdkDismissCallback.class))).thenAnswer(new Answer() { public Object answer(InvocationOnMock invocation) { - InstabugUtil.sendEvent(any(),any(),any()); ((OnSdkDismissCallback) invocation.getArguments()[0]) .call(OnSdkDismissCallback.DismissType.CANCEL, OnSdkDismissCallback.ReportType.BUG); return null; @@ -266,8 +265,7 @@ public Object answer(InvocationOnMock invocation) { WritableMap params = new JavaOnlyMap(); params.putString("dismissType", OnSdkDismissCallback.DismissType.CANCEL.toString()); params.putString("reportType", OnSdkDismissCallback.ReportType.BUG.toString()); - verify(InstabugUtil.class,VerificationModeFactory.times(1)); - InstabugUtil.sendEvent(any(ReactApplicationContext.class), eq(Constants.IBG_POST_INVOCATION_HANDLER), eq(params)); + verify(bugReportingModule).sendEvent(Constants.IBG_POST_INVOCATION_HANDLER, params); mockArgument.close(); mockReactApplicationContext.close(); } diff --git a/android/src/test/java/com/instabug/reactlibrary/RNInstabugReactnativeModuleTest.java b/android/src/test/java/com/instabug/reactlibrary/RNInstabugReactnativeModuleTest.java index 2907387bc..cf0c6a56c 100644 --- a/android/src/test/java/com/instabug/reactlibrary/RNInstabugReactnativeModuleTest.java +++ b/android/src/test/java/com/instabug/reactlibrary/RNInstabugReactnativeModuleTest.java @@ -228,54 +228,6 @@ public void tearDown() { Instabug.resetTags(); } - @Test - public void given$isEnabled_whenQuery_thenShouldCallNativeApiAndReturnValue() { - // given - - when(Instabug.isEnabled()).thenReturn(true); - // when - boolean isEnabled = rnModule.isEnabled(); - // then - verify(Instabug.class,times(1)); - Instabug.isEnabled(); - Assert.assertTrue(isEnabled); - } - - @Test - public void given$enable_whenQuery_thenShouldCallNativeApi() { - // given - - // when - rnModule.enable(); - // then - verify(Instabug.class,times(1)); - Instabug.enable(); - } - - @Test - public void given$disable_whenQuery_thenShouldCallNativeApi() { - // given - - // when - rnModule.disable(); - // then - verify(Instabug.class,times(1)); - Instabug.disable(); - } - - @Test - public void given$getAppToken_whenQuery_thenShouldCallNativeApiAndReturnValue() { - // given - - when(Instabug.getAppToken()).thenReturn("APP_TOKEN"); - // when - String appToken = rnModule.getAppToken(); - // then - verify(Instabug.class,times(1)); - Instabug.getAppToken(); - Assert.assertEquals("APP_TOKEN", appToken); - } - @Test public void given$logOut_whenQuery_thenShouldCallNativeApi() { // given diff --git a/android/src/test/java/com/instabug/reactlibrary/RNInstabugSurveysModuleTest.java b/android/src/test/java/com/instabug/reactlibrary/RNInstabugSurveysModuleTest.java index 38d666a7c..e216ce433 100644 --- a/android/src/test/java/com/instabug/reactlibrary/RNInstabugSurveysModuleTest.java +++ b/android/src/test/java/com/instabug/reactlibrary/RNInstabugSurveysModuleTest.java @@ -7,7 +7,6 @@ import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.JavaOnlyArray; import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.WritableMap; import com.instabug.library.Feature; import com.instabug.reactlibrary.utils.InstabugUtil; import com.instabug.survey.Survey; @@ -23,7 +22,6 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.mockito.Matchers; import org.mockito.MockedStatic; import org.mockito.Mockito; import org.mockito.invocation.InvocationOnMock; @@ -34,19 +32,17 @@ import java.util.concurrent.ScheduledExecutorService; import static org.mockito.Matchers.any; -import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mockStatic; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; public class RNInstabugSurveysModuleTest { - private RNInstabugSurveysModule surveysModule = new RNInstabugSurveysModule(mock(ReactApplicationContext.class)); - - private final static ScheduledExecutorService mainThread = Executors.newSingleThreadScheduledExecutor(); + private RNInstabugSurveysModule surveysModule = spy(new RNInstabugSurveysModule(mock(ReactApplicationContext.class))); // Mock Objects private MockedStatic mockLooper; @@ -180,8 +176,7 @@ public Object answer(InvocationOnMock invocation) { surveysModule.setOnShowHandler(null); // then - verify(InstabugUtil.class,times(1)); - InstabugUtil.sendEvent(any(ReactApplicationContext.class), eq(Constants.IBG_ON_SHOW_SURVEY_HANDLER), Matchers.isNull(WritableMap.class)); + verify(surveysModule).sendEvent(Constants.IBG_ON_SHOW_SURVEY_HANDLER, null); } @Test @@ -200,8 +195,7 @@ public Object answer(InvocationOnMock invocation) { surveysModule.setOnDismissHandler(null); // then - verify(InstabugUtil.class,times(1)); - InstabugUtil.sendEvent(any(ReactApplicationContext.class), eq(Constants.IBG_ON_DISMISS_SURVEY_HANDLER), Matchers.isNull(WritableMap.class)); + verify(surveysModule).sendEvent(Constants.IBG_ON_DISMISS_SURVEY_HANDLER, null); } @Test diff --git a/cli/UploadSourcemaps.ts b/cli/UploadSourcemaps.ts index 5f86329e1..6c0c41b21 100755 --- a/cli/UploadSourcemaps.ts +++ b/cli/UploadSourcemaps.ts @@ -2,11 +2,10 @@ import axios from 'axios'; import { Command, Option } from 'commander'; import FormData from 'form-data'; import fs from 'fs'; -import path from 'path'; interface UploadSourcemapsOptions { platform: 'android' | 'ios'; - dir: string; + file: string; token: string; name: string; code: string; @@ -23,10 +22,7 @@ uploadSourcemapsCommand .makeOptionMandatory(), ) .addOption( - new Option( - '-d, --dir ', - 'The path of the directory including the source map file', - ).makeOptionMandatory(), + new Option('-f, --file ', 'The path of the source map file').makeOptionMandatory(), ) .addOption( new Option('-t, --token ', 'Your App Token') @@ -56,13 +52,12 @@ uploadSourcemapsCommand const uploadSourcemaps = async (opts: UploadSourcemapsOptions) => { const fileName = `${opts.platform}-sourcemap.json`; - const filePath = path.join(opts.dir, fileName); - const fileBlob = fs.readFileSync(filePath); + const fileBlob = fs.readFileSync(opts.file); const version = { code: opts.code, name: opts.name, - codePush: opts.label, + codepush: opts.label, }; const form = new FormData(); diff --git a/cli/index.ts b/cli/index.ts index 8f10ccd59..22b6861f9 100644 --- a/cli/index.ts +++ b/cli/index.ts @@ -6,7 +6,7 @@ import { uploadSourcemapsCommand } from './UploadSourcemaps'; const program = new Command(); program - .name('instaubg') + .name('instabug') .version('1.0.0-beta1') .description('A CLI for uploading source maps to Instabug dashboard.') .usage('[command]') diff --git a/example/.detoxrc.json b/examples/default/.detoxrc.json similarity index 94% rename from example/.detoxrc.json rename to examples/default/.detoxrc.json index 7461e99a3..7357f9794 100644 --- a/example/.detoxrc.json +++ b/examples/default/.detoxrc.json @@ -22,7 +22,7 @@ }, "android.emu.release": { "binaryPath": "android/app/build/outputs/apk/release/app-release.apk", - "build": "cd android && ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release && cd ..", + "build": "cd android && ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release -PinstabugUploadEnable=false && cd ..", "type": "android.emulator", "name": "Nexus_6P_API_27" } diff --git a/example/android/app/build.gradle b/examples/default/android/app/build.gradle similarity index 100% rename from example/android/app/build.gradle rename to examples/default/android/app/build.gradle diff --git a/example/android/app/debug.keystore b/examples/default/android/app/debug.keystore similarity index 100% rename from example/android/app/debug.keystore rename to examples/default/android/app/debug.keystore diff --git a/example/android/app/proguard-rules.pro b/examples/default/android/app/proguard-rules.pro similarity index 100% rename from example/android/app/proguard-rules.pro rename to examples/default/android/app/proguard-rules.pro diff --git a/example/android/app/src/androidTest/java/com/instabug/react/example/DetoxTest.java b/examples/default/android/app/src/androidTest/java/com/instabug/react/example/DetoxTest.java similarity index 100% rename from example/android/app/src/androidTest/java/com/instabug/react/example/DetoxTest.java rename to examples/default/android/app/src/androidTest/java/com/instabug/react/example/DetoxTest.java diff --git a/example/android/app/src/debug/AndroidManifest.xml b/examples/default/android/app/src/debug/AndroidManifest.xml similarity index 100% rename from example/android/app/src/debug/AndroidManifest.xml rename to examples/default/android/app/src/debug/AndroidManifest.xml diff --git a/example/android/app/src/debug/java/com/instabug/react/example/ReactNativeFlipper.java b/examples/default/android/app/src/debug/java/com/instabug/react/example/ReactNativeFlipper.java similarity index 100% rename from example/android/app/src/debug/java/com/instabug/react/example/ReactNativeFlipper.java rename to examples/default/android/app/src/debug/java/com/instabug/react/example/ReactNativeFlipper.java diff --git a/example/android/app/src/main/AndroidManifest.xml b/examples/default/android/app/src/main/AndroidManifest.xml similarity index 100% rename from example/android/app/src/main/AndroidManifest.xml rename to examples/default/android/app/src/main/AndroidManifest.xml diff --git a/example/android/app/src/main/java/com/instabug/react/example/MainActivity.java b/examples/default/android/app/src/main/java/com/instabug/react/example/MainActivity.java similarity index 100% rename from example/android/app/src/main/java/com/instabug/react/example/MainActivity.java rename to examples/default/android/app/src/main/java/com/instabug/react/example/MainActivity.java diff --git a/example/android/app/src/main/java/com/instabug/react/example/MainApplication.java b/examples/default/android/app/src/main/java/com/instabug/react/example/MainApplication.java similarity index 100% rename from example/android/app/src/main/java/com/instabug/react/example/MainApplication.java rename to examples/default/android/app/src/main/java/com/instabug/react/example/MainApplication.java diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/examples/default/android/app/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png rename to examples/default/android/app/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/examples/default/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png similarity index 100% rename from example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png rename to examples/default/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/examples/default/android/app/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png rename to examples/default/android/app/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/examples/default/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png similarity index 100% rename from example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png rename to examples/default/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/examples/default/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png rename to examples/default/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/examples/default/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png rename to examples/default/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/examples/default/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to examples/default/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/examples/default/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png rename to examples/default/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/examples/default/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to examples/default/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/examples/default/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png similarity index 100% rename from example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png rename to examples/default/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png diff --git a/example/android/app/src/main/res/values/strings.xml b/examples/default/android/app/src/main/res/values/strings.xml similarity index 100% rename from example/android/app/src/main/res/values/strings.xml rename to examples/default/android/app/src/main/res/values/strings.xml diff --git a/example/android/app/src/main/res/values/styles.xml b/examples/default/android/app/src/main/res/values/styles.xml similarity index 100% rename from example/android/app/src/main/res/values/styles.xml rename to examples/default/android/app/src/main/res/values/styles.xml diff --git a/example/android/app/src/main/res/xml/network_security_config.xml b/examples/default/android/app/src/main/res/xml/network_security_config.xml similarity index 100% rename from example/android/app/src/main/res/xml/network_security_config.xml rename to examples/default/android/app/src/main/res/xml/network_security_config.xml diff --git a/example/android/build.gradle b/examples/default/android/build.gradle similarity index 92% rename from example/android/build.gradle rename to examples/default/android/build.gradle index 4e6b39f2b..0523bf632 100644 --- a/example/android/build.gradle +++ b/examples/default/android/build.gradle @@ -32,6 +32,9 @@ buildscript { repositories { google() mavenCentral() + maven { + url 'https://oss.sonatype.org/content/repositories/snapshots' + } } dependencies { classpath("com.android.tools.build:gradle:7.0.4") @@ -68,5 +71,8 @@ allprojects { } google() maven { url 'https://www.jitpack.io' } + maven { + url 'https://oss.sonatype.org/content/repositories/snapshots' + } } } diff --git a/example/android/gradle.properties b/examples/default/android/gradle.properties similarity index 100% rename from example/android/gradle.properties rename to examples/default/android/gradle.properties diff --git a/example/android/gradle/wrapper/gradle-wrapper.jar b/examples/default/android/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from example/android/gradle/wrapper/gradle-wrapper.jar rename to examples/default/android/gradle/wrapper/gradle-wrapper.jar diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/examples/default/android/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from example/android/gradle/wrapper/gradle-wrapper.properties rename to examples/default/android/gradle/wrapper/gradle-wrapper.properties diff --git a/example/android/gradlew b/examples/default/android/gradlew similarity index 100% rename from example/android/gradlew rename to examples/default/android/gradlew diff --git a/example/android/gradlew.bat b/examples/default/android/gradlew.bat similarity index 100% rename from example/android/gradlew.bat rename to examples/default/android/gradlew.bat diff --git a/example/android/settings.gradle b/examples/default/android/settings.gradle similarity index 100% rename from example/android/settings.gradle rename to examples/default/android/settings.gradle diff --git a/example/app.json b/examples/default/app.json similarity index 100% rename from example/app.json rename to examples/default/app.json diff --git a/example/babel.config.js b/examples/default/babel.config.js similarity index 100% rename from example/babel.config.js rename to examples/default/babel.config.js diff --git a/example/e2e/config.json b/examples/default/e2e/config.json similarity index 100% rename from example/e2e/config.json rename to examples/default/e2e/config.json diff --git a/example/e2e/environment.js b/examples/default/e2e/environment.js similarity index 100% rename from example/e2e/environment.js rename to examples/default/e2e/environment.js diff --git a/example/e2e/reportBug.e2e.ts b/examples/default/e2e/reportBug.e2e.ts similarity index 100% rename from example/e2e/reportBug.e2e.ts rename to examples/default/e2e/reportBug.e2e.ts diff --git a/example/e2e/utils/elements.ts b/examples/default/e2e/utils/elements.ts similarity index 100% rename from example/e2e/utils/elements.ts rename to examples/default/e2e/utils/elements.ts diff --git a/example/e2e/utils/mockData.ts b/examples/default/e2e/utils/mockData.ts similarity index 100% rename from example/e2e/utils/mockData.ts rename to examples/default/e2e/utils/mockData.ts diff --git a/example/index.js b/examples/default/index.js similarity index 100% rename from example/index.js rename to examples/default/index.js diff --git a/example/ios/InstabugExample.xcodeproj/project.pbxproj b/examples/default/ios/InstabugExample.xcodeproj/project.pbxproj similarity index 100% rename from example/ios/InstabugExample.xcodeproj/project.pbxproj rename to examples/default/ios/InstabugExample.xcodeproj/project.pbxproj diff --git a/example/ios/InstabugExample.xcodeproj/xcshareddata/xcschemes/InstabugExample.xcscheme b/examples/default/ios/InstabugExample.xcodeproj/xcshareddata/xcschemes/InstabugExample.xcscheme similarity index 100% rename from example/ios/InstabugExample.xcodeproj/xcshareddata/xcschemes/InstabugExample.xcscheme rename to examples/default/ios/InstabugExample.xcodeproj/xcshareddata/xcschemes/InstabugExample.xcscheme diff --git a/example/ios/InstabugExample.xcworkspace/contents.xcworkspacedata b/examples/default/ios/InstabugExample.xcworkspace/contents.xcworkspacedata similarity index 100% rename from example/ios/InstabugExample.xcworkspace/contents.xcworkspacedata rename to examples/default/ios/InstabugExample.xcworkspace/contents.xcworkspacedata diff --git a/example/ios/InstabugExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/default/ios/InstabugExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from example/ios/InstabugExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to examples/default/ios/InstabugExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/example/ios/InstabugExample/AppDelegate.h b/examples/default/ios/InstabugExample/AppDelegate.h similarity index 100% rename from example/ios/InstabugExample/AppDelegate.h rename to examples/default/ios/InstabugExample/AppDelegate.h diff --git a/example/ios/InstabugExample/AppDelegate.m b/examples/default/ios/InstabugExample/AppDelegate.m similarity index 100% rename from example/ios/InstabugExample/AppDelegate.m rename to examples/default/ios/InstabugExample/AppDelegate.m diff --git a/example/ios/InstabugExample/Images.xcassets/AppIcon.appiconset/Contents.json b/examples/default/ios/InstabugExample/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from example/ios/InstabugExample/Images.xcassets/AppIcon.appiconset/Contents.json rename to examples/default/ios/InstabugExample/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/example/ios/InstabugExample/Images.xcassets/Contents.json b/examples/default/ios/InstabugExample/Images.xcassets/Contents.json similarity index 100% rename from example/ios/InstabugExample/Images.xcassets/Contents.json rename to examples/default/ios/InstabugExample/Images.xcassets/Contents.json diff --git a/example/ios/InstabugExample/Info.plist b/examples/default/ios/InstabugExample/Info.plist similarity index 100% rename from example/ios/InstabugExample/Info.plist rename to examples/default/ios/InstabugExample/Info.plist diff --git a/example/ios/InstabugExample/LaunchScreen.storyboard b/examples/default/ios/InstabugExample/LaunchScreen.storyboard similarity index 100% rename from example/ios/InstabugExample/LaunchScreen.storyboard rename to examples/default/ios/InstabugExample/LaunchScreen.storyboard diff --git a/example/ios/InstabugExample/main.m b/examples/default/ios/InstabugExample/main.m similarity index 100% rename from example/ios/InstabugExample/main.m rename to examples/default/ios/InstabugExample/main.m diff --git a/example/ios/InstabugTests/IBGConstants.h b/examples/default/ios/InstabugTests/IBGConstants.h similarity index 100% rename from example/ios/InstabugTests/IBGConstants.h rename to examples/default/ios/InstabugTests/IBGConstants.h diff --git a/example/ios/InstabugTests/IBGConstants.m b/examples/default/ios/InstabugTests/IBGConstants.m similarity index 100% rename from example/ios/InstabugTests/IBGConstants.m rename to examples/default/ios/InstabugTests/IBGConstants.m diff --git a/example/ios/InstabugTests/Info.plist b/examples/default/ios/InstabugTests/Info.plist similarity index 100% rename from example/ios/InstabugTests/Info.plist rename to examples/default/ios/InstabugTests/Info.plist diff --git a/example/ios/InstabugTests/InstabugAPMTests.m b/examples/default/ios/InstabugTests/InstabugAPMTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugAPMTests.m rename to examples/default/ios/InstabugTests/InstabugAPMTests.m diff --git a/example/ios/InstabugTests/InstabugBugReportingTests.m b/examples/default/ios/InstabugTests/InstabugBugReportingTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugBugReportingTests.m rename to examples/default/ios/InstabugTests/InstabugBugReportingTests.m diff --git a/example/ios/InstabugTests/InstabugCrashReportingTests.m b/examples/default/ios/InstabugTests/InstabugCrashReportingTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugCrashReportingTests.m rename to examples/default/ios/InstabugTests/InstabugCrashReportingTests.m diff --git a/example/ios/InstabugTests/InstabugFeatureRequestsTests.m b/examples/default/ios/InstabugTests/InstabugFeatureRequestsTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugFeatureRequestsTests.m rename to examples/default/ios/InstabugTests/InstabugFeatureRequestsTests.m diff --git a/example/ios/InstabugTests/InstabugRepliesTests.m b/examples/default/ios/InstabugTests/InstabugRepliesTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugRepliesTests.m rename to examples/default/ios/InstabugTests/InstabugRepliesTests.m diff --git a/example/ios/InstabugTests/InstabugSampleTests.m b/examples/default/ios/InstabugTests/InstabugSampleTests.m similarity index 98% rename from example/ios/InstabugTests/InstabugSampleTests.m rename to examples/default/ios/InstabugTests/InstabugSampleTests.m index f8c498ad3..d7f4ee521 100644 --- a/example/ios/InstabugTests/InstabugSampleTests.m +++ b/examples/default/ios/InstabugTests/InstabugSampleTests.m @@ -62,18 +62,20 @@ - (void)testSetEnabled { } - (void)testInit { - id mock = OCMClassMock([Instabug class]); + id mock = OCMClassMock([Instabug class]); IBGInvocationEvent floatingButtonInvocationEvent = IBGInvocationEventFloatingButton; NSString *appToken = @"app_token"; NSArray *invocationEvents = [NSArray arrayWithObjects:[NSNumber numberWithInteger:floatingButtonInvocationEvent], nil]; + NSString *codePushLabel = @"v123"; IBGSDKDebugLogsLevel sdkDebugLogsLevel = IBGSDKDebugLogsLevelDebug; XCTestExpectation *expectation = [self expectationWithDescription:@"Testing [Instabug init]"]; OCMStub([mock startWithToken:appToken invocationEvents:floatingButtonInvocationEvent]); - [self.instabugBridge init:appToken invocationEvents:invocationEvents debugLogsLevel:sdkDebugLogsLevel]; + [self.instabugBridge init:appToken invocationEvents:invocationEvents debugLogsLevel:sdkDebugLogsLevel codePushLabel:codePushLabel]; [[NSRunLoop mainRunLoop] performBlock:^{ + OCMVerify([mock setCodePushVersion:codePushLabel]); OCMVerify([mock startWithToken:appToken invocationEvents:floatingButtonInvocationEvent]); [expectation fulfill]; }]; diff --git a/example/ios/InstabugTests/InstabugSurveysTests.m b/examples/default/ios/InstabugTests/InstabugSurveysTests.m similarity index 100% rename from example/ios/InstabugTests/InstabugSurveysTests.m rename to examples/default/ios/InstabugTests/InstabugSurveysTests.m diff --git a/example/ios/Podfile b/examples/default/ios/Podfile similarity index 84% rename from example/ios/Podfile rename to examples/default/ios/Podfile index 292e08f01..b0d73a9dc 100644 --- a/example/ios/Podfile +++ b/examples/default/ios/Podfile @@ -4,6 +4,7 @@ require_relative '../node_modules/@react-native-community/cli-platform-ios/nativ platform :ios, '11.0' target 'InstabugExample' do + pod 'Instabug', :podspec => 'https://ios-releases.instabug.com/custom/fearure-crashes-add-code-push-version-release-custom-build/Instabug.podspec' config = use_native_modules! use_react_native!( diff --git a/example/ios/Podfile.lock b/examples/default/ios/Podfile.lock similarity index 97% rename from example/ios/Podfile.lock rename to examples/default/ios/Podfile.lock index d43418a7b..25c4bcd8c 100644 --- a/example/ios/Podfile.lock +++ b/examples/default/ios/Podfile.lock @@ -72,7 +72,7 @@ PODS: - FlipperKit/FlipperKitNetworkPlugin - fmt (6.2.1) - glog (0.3.5) - - Instabug (11.9.0) + - Instabug (11.6.0) - libevent (2.1.12) - OCMock (3.9.1) - OpenSSL-Universal (1.1.180) @@ -342,9 +342,9 @@ PODS: - React-logger (= 0.66.0) - React-perflogger (= 0.66.0) - RNInstabug (11.9.1): - - Instabug (= 11.9.0) + - Instabug - React-Core - - RNScreens (3.17.0): + - RNScreens (3.20.0): - React-Core - React-RCTImage - RNSVG (12.1.1): @@ -382,6 +382,7 @@ DEPENDENCIES: - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.99.0) - FlipperKit/SKIOSNetworkPlugin (= 0.99.0) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) + - Instabug (from `https://ios-releases.instabug.com/custom/fearure-crashes-add-code-push-version-release-custom-build/Instabug.podspec`) - OCMock - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) @@ -410,7 +411,7 @@ DEPENDENCIES: - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - - RNInstabug (from `../..`) + - RNInstabug (from `../../..`) - RNScreens (from `../node_modules/react-native-screens`) - RNSVG (from `../node_modules/react-native-svg`) - RNVectorIcons (from `../node_modules/react-native-vector-icons`) @@ -429,7 +430,6 @@ SPEC REPOS: - Flipper-RSocket - FlipperKit - fmt - - Instabug - libevent - OCMock - OpenSSL-Universal @@ -446,6 +446,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/React/FBReactNativeSpec" glog: :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" + Instabug: + :podspec: https://ios-releases.instabug.com/custom/fearure-crashes-add-code-push-version-release-custom-build/Instabug.podspec RCT-Folly: :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" RCTRequired: @@ -497,7 +499,7 @@ EXTERNAL SOURCES: ReactCommon: :path: "../node_modules/react-native/ReactCommon" RNInstabug: - :path: "../.." + :path: "../../.." RNScreens: :path: "../node_modules/react-native-screens" RNSVG: @@ -524,7 +526,7 @@ SPEC CHECKSUMS: FlipperKit: d8d346844eca5d9120c17d441a2f38596e8ed2b9 fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 glog: 5337263514dd6f09803962437687240c5dc39aa4 - Instabug: 1d21096fdadbc1f26cd2fc2322ff8e060a611237 + Instabug: e8dc34342c93b00a471f0026544225353571ee80 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 OCMock: 9491e4bec59e0b267d52a9184ff5605995e74be8 OpenSSL-Universal: 1aa4f6a6ee7256b83db99ec1ccdaa80d10f9af9b @@ -553,13 +555,13 @@ SPEC CHECKSUMS: React-RCTVibration: 53b92d54b923283638cb0186da7a5c2d2b70a49b React-runtimeexecutor: 4bb657a97aa74568d9ed634c8bd478299bb8a3a6 ReactCommon: eb059748e842a1a86025ebbd4ac9d99e74492f88 - RNInstabug: c24a8e0b0c4d411e0e8b088028ea1b2dd8fac823 - RNScreens: 0df01424e9e0ed7827200d6ed1087ddd06c493f9 + RNInstabug: 256714839a66705e07c369ebdd26f8fae2d13b34 + RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f RNSVG: 551acb6562324b1d52a4e0758f7ca0ec234e278f RNVectorIcons: fcc2f6cb32f5735b586e66d14103a74ce6ad61f8 Yoga: c11abbf5809216c91fcd62f5571078b83d9b6720 YogaKit: f782866e155069a2cca2517aafea43200b01fd5a -PODFILE CHECKSUM: 476a97b315e53c07a2d8fa2ea0455471001f56f5 +PODFILE CHECKSUM: 6a7da5ba043ce62cea5a7ed4fcdb8cfb22a9451e COCOAPODS: 1.11.3 diff --git a/example/jest.config.js b/examples/default/jest.config.js similarity index 100% rename from example/jest.config.js rename to examples/default/jest.config.js diff --git a/example/metro.config.js b/examples/default/metro.config.js similarity index 88% rename from example/metro.config.js rename to examples/default/metro.config.js index acfcf547f..907b4e36d 100644 --- a/example/metro.config.js +++ b/examples/default/metro.config.js @@ -1,9 +1,9 @@ const path = require('path'); const escape = require('escape-string-regexp'); const exclusionList = require('metro-config/src/defaults/exclusionList'); -const pkg = require('../package.json'); -const root = path.resolve(__dirname, '..'); +const root = path.resolve(__dirname, '../..'); +const pkg = require(path.join(root, 'package.json')); const peerDependencies = Object.keys(pkg.peerDependencies); const modules = [...peerDependencies, '@babel/runtime']; diff --git a/example/package.json b/examples/default/package.json similarity index 96% rename from example/package.json rename to examples/default/package.json index 09b44eab5..116513ccd 100644 --- a/example/package.json +++ b/examples/default/package.json @@ -12,7 +12,7 @@ "@react-navigation/bottom-tabs": "^6.0.9", "@react-navigation/native": "^6.0.6", "@react-navigation/native-stack": "^6.9.8", - "instabug-reactnative": "link:..", + "instabug-reactnative": "link:../..", "native-base": "^3.4.25", "react": "17.0.2", "react-native": "0.66.0", diff --git a/example/src/App.tsx b/examples/default/src/App.tsx similarity index 100% rename from example/src/App.tsx rename to examples/default/src/App.tsx diff --git a/example/src/components/ListTile.tsx b/examples/default/src/components/ListTile.tsx similarity index 100% rename from example/src/components/ListTile.tsx rename to examples/default/src/components/ListTile.tsx diff --git a/example/src/components/Screen.tsx b/examples/default/src/components/Screen.tsx similarity index 100% rename from example/src/components/Screen.tsx rename to examples/default/src/components/Screen.tsx diff --git a/example/src/components/Select.tsx b/examples/default/src/components/Select.tsx similarity index 100% rename from example/src/components/Select.tsx rename to examples/default/src/components/Select.tsx diff --git a/example/src/navigation/HomeStack.tsx b/examples/default/src/navigation/HomeStack.tsx similarity index 100% rename from example/src/navigation/HomeStack.tsx rename to examples/default/src/navigation/HomeStack.tsx diff --git a/example/src/navigation/RootTab.tsx b/examples/default/src/navigation/RootTab.tsx similarity index 100% rename from example/src/navigation/RootTab.tsx rename to examples/default/src/navigation/RootTab.tsx diff --git a/example/src/screens/BugReportingScreen.tsx b/examples/default/src/screens/BugReportingScreen.tsx similarity index 100% rename from example/src/screens/BugReportingScreen.tsx rename to examples/default/src/screens/BugReportingScreen.tsx diff --git a/example/src/screens/CrashReportingScreen.tsx b/examples/default/src/screens/CrashReportingScreen.tsx similarity index 100% rename from example/src/screens/CrashReportingScreen.tsx rename to examples/default/src/screens/CrashReportingScreen.tsx diff --git a/example/src/screens/FeatureRequestsScreen.tsx b/examples/default/src/screens/FeatureRequestsScreen.tsx similarity index 100% rename from example/src/screens/FeatureRequestsScreen.tsx rename to examples/default/src/screens/FeatureRequestsScreen.tsx diff --git a/example/src/screens/HomeScreen.tsx b/examples/default/src/screens/HomeScreen.tsx similarity index 100% rename from example/src/screens/HomeScreen.tsx rename to examples/default/src/screens/HomeScreen.tsx diff --git a/example/src/screens/RepliesScreen.tsx b/examples/default/src/screens/RepliesScreen.tsx similarity index 100% rename from example/src/screens/RepliesScreen.tsx rename to examples/default/src/screens/RepliesScreen.tsx diff --git a/example/src/screens/SettingsScreen.tsx b/examples/default/src/screens/SettingsScreen.tsx similarity index 100% rename from example/src/screens/SettingsScreen.tsx rename to examples/default/src/screens/SettingsScreen.tsx diff --git a/example/src/screens/SurveysScreen.tsx b/examples/default/src/screens/SurveysScreen.tsx similarity index 100% rename from example/src/screens/SurveysScreen.tsx rename to examples/default/src/screens/SurveysScreen.tsx diff --git a/example/src/theme/nativeBaseTheme.ts b/examples/default/src/theme/nativeBaseTheme.ts similarity index 100% rename from example/src/theme/nativeBaseTheme.ts rename to examples/default/src/theme/nativeBaseTheme.ts diff --git a/example/src/theme/navigationTheme.ts b/examples/default/src/theme/navigationTheme.ts similarity index 100% rename from example/src/theme/navigationTheme.ts rename to examples/default/src/theme/navigationTheme.ts diff --git a/example/tsconfig.json b/examples/default/tsconfig.json similarity index 50% rename from example/tsconfig.json rename to examples/default/tsconfig.json index 1c0d801a2..897db35a0 100644 --- a/example/tsconfig.json +++ b/examples/default/tsconfig.json @@ -1,9 +1,9 @@ { - "extends": "../tsconfig.json", + "extends": "../../tsconfig.json", "include": ["src/**/*", "e2e/**/*"], "compilerOptions": { "paths": { - "instabug-reactnative": ["../src/index.ts"] + "instabug-reactnative": ["../../src/index.ts"] } } } diff --git a/example/yarn.lock b/examples/default/yarn.lock similarity index 84% rename from example/yarn.lock rename to examples/default/yarn.lock index cee7e121b..3183df534 100644 --- a/example/yarn.lock +++ b/examples/default/yarn.lock @@ -2,7 +2,7 @@ # yarn lockfile v1 -"@ampproject/remapping@^2.1.0": +"@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== @@ -17,39 +17,40 @@ dependencies: "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.18.8", "@babel/compat-data@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.0.tgz#2a592fd89bacb1fcde68de31bee4f2f2dacb0e86" - integrity sha512-y5rqgTTPTmaF5e2nVhOxw+Ur9HDJLsWb6U/KpgUzRZEdPfE6VOubXBKLdbcUTijzRptednSBDQbYZBOSqJxpJw== +"@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/core@^7.1.0", "@babel/core@^7.1.6", "@babel/core@^7.12.3", "@babel/core@^7.14.0", "@babel/core@^7.15.8", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.0.tgz#d2f5f4f2033c00de8096be3c9f45772563e150c3" - integrity sha512-reM4+U7B9ss148rh2n1Qs9ASS+w94irYXga7c2jaQv9RVzpS7Mv1a9rnYYwuDa45G+DkORt9g6An2k/V4d9LbQ== + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.3.tgz#cf1c877284a469da5d1ce1d1e53665253fae712e" + integrity sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw== dependencies: - "@ampproject/remapping" "^2.1.0" + "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.19.0" - "@babel/helper-compilation-targets" "^7.19.0" - "@babel/helper-module-transforms" "^7.19.0" - "@babel/helpers" "^7.19.0" - "@babel/parser" "^7.19.0" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/generator" "^7.21.3" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-module-transforms" "^7.21.2" + "@babel/helpers" "^7.21.0" + "@babel/parser" "^7.21.3" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.3" + "@babel/types" "^7.21.3" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.2.1" + json5 "^2.2.2" semver "^6.3.0" -"@babel/generator@^7.14.0", "@babel/generator@^7.19.0", "@babel/generator@^7.7.2": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.0.tgz#785596c06425e59334df2ccee63ab166b738419a" - integrity sha512-S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg== +"@babel/generator@^7.14.0", "@babel/generator@^7.21.3", "@babel/generator@^7.7.2": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.3.tgz#232359d0874b392df04045d72ce2fd9bb5045fce" + integrity sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA== dependencies: - "@babel/types" "^7.19.0" + "@babel/types" "^7.21.3" "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" "@babel/helper-annotate-as-pure@^7.18.6": @@ -67,41 +68,43 @@ "@babel/helper-explode-assignable-expression" "^7.18.6" "@babel/types" "^7.18.9" -"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.0.tgz#537ec8339d53e806ed422f1e06c8f17d55b96bb0" - integrity sha512-Ai5bNWXIvwDvWM7njqsG3feMlL9hCVQsPYXodsZyLwshYkZVJt59Gftau4VrE8S9IT9asd2uSP1hG6wCNw+sXA== +"@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== dependencies: - "@babel/compat-data" "^7.19.0" + "@babel/compat-data" "^7.20.5" "@babel/helper-validator-option" "^7.18.6" - browserslist "^4.20.2" + 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.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz#bfd6904620df4e46470bae4850d66be1054c404b" - integrity sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw== +"@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== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-function-name" "^7.21.0" + "@babel/helper-member-expression-to-functions" "^7.21.0" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/helper-split-export-declaration" "^7.18.6" "@babel/helper-create-regexp-features-plugin@^7.18.6": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz#7976aca61c0984202baca73d84e2337a5424a41b" - integrity sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw== + 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== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - regexpu-core "^5.1.0" + regexpu-core "^5.3.1" -"@babel/helper-define-polyfill-provider@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz#bd10d0aca18e8ce012755395b05a79f45eca5073" - integrity sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg== +"@babel/helper-define-polyfill-provider@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz#8612e55be5d51f0cd1f36b4a5a83924e89884b7a" + integrity sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww== dependencies: "@babel/helper-compilation-targets" "^7.17.7" "@babel/helper-plugin-utils" "^7.16.7" @@ -122,13 +125,13 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" - integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== +"@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" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" + integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== dependencies: - "@babel/template" "^7.18.10" - "@babel/types" "^7.19.0" + "@babel/template" "^7.20.7" + "@babel/types" "^7.21.0" "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" @@ -137,12 +140,12 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-member-expression-to-functions@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" - integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== +"@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== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.21.0" "@babel/helper-module-imports@^7.18.6": version "7.18.6" @@ -151,19 +154,19 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz#309b230f04e22c58c6a2c0c0c7e50b216d350c30" - integrity sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ== +"@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== dependencies: "@babel/helper-environment-visitor" "^7.18.9" "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.18.6" + "@babel/helper-simple-access" "^7.20.2" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.18.6" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.2" + "@babel/types" "^7.21.2" "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" @@ -172,12 +175,12 @@ 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.8.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz#4796bb14961521f0f8715990bee2fb6e51ce21bf" - integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw== +"@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": + 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-remap-async-to-generator@^7.18.6": +"@babel/helper-remap-async-to-generator@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz#997458a0e3357080e54e1d79ec347f8a8cd28519" integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA== @@ -187,30 +190,31 @@ "@babel/helper-wrap-function" "^7.18.9" "@babel/types" "^7.18.9" -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz#1092e002feca980fbbb0bd4d51b74a65c6a500e6" - integrity sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ== +"@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== dependencies: "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.20.7" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/traverse" "^7.18.9" - "@babel/types" "^7.18.9" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.7" + "@babel/types" "^7.20.7" -"@babel/helper-simple-access@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz#d6d8f51f4ac2978068df934b569f08f29788c7ea" - integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g== +"@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== dependencies: - "@babel/types" "^7.18.6" + "@babel/types" "^7.20.2" -"@babel/helper-skip-transparent-expression-wrappers@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz#778d87b3a758d90b471e7b9918f34a9a02eb5818" - integrity sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw== +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" + integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.20.0" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" @@ -219,39 +223,39 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-string-parser@^7.18.10": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56" - integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw== +"@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-validator-identifier@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076" - integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g== +"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== -"@babel/helper-validator-option@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" - integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== +"@babel/helper-validator-option@^7.18.6", "@babel/helper-validator-option@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180" + integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ== "@babel/helper-wrap-function@^7.18.9": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz#89f18335cff1152373222f76a4b37799636ae8b1" - integrity sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg== + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz#75e2d84d499a0ab3b31c33bcfe59d6b8a45f62e3" + integrity sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q== dependencies: "@babel/helper-function-name" "^7.19.0" "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" -"@babel/helpers@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.19.0.tgz#f30534657faf246ae96551d88dd31e9d1fa1fc18" - integrity sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg== +"@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== dependencies: - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" "@babel/highlight@^7.18.6": version "7.18.6" @@ -262,10 +266,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.0.tgz#497fcafb1d5b61376959c1c338745ef0577aa02c" - integrity sha512-74bEXKX2h+8rrfQUfsBfuZZHzsEs6Eql4pqy/T4Nn6Y9wNPggQOqD6z6pn5Bl8ZfysKouFZT/UXEH94ummEeQw== +"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.21.3": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.3.tgz#1d285d67a19162ff9daa358d4cb41d50c06220b3" + integrity sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ== "@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.1.0": version "7.18.6" @@ -292,15 +296,15 @@ "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" "@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz#f9434f6beb2c8cae9dfcf97d2a5941bbbf9ad4e7" - integrity sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q== + 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== dependencies: - "@babel/compat-data" "^7.18.8" - "@babel/helper-compilation-targets" "^7.18.9" - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/compat-data" "^7.20.5" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.18.8" + "@babel/plugin-transform-parameters" "^7.20.7" "@babel/plugin-proposal-optional-catch-binding@^7.0.0": version "7.18.6" @@ -311,12 +315,12 @@ "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-proposal-optional-chaining@^7.0.0", "@babel/plugin-proposal-optional-chaining@^7.1.0": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz#e8e8fe0723f2563960e4bf5e9690933691915993" - integrity sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-async-generators@^7.8.4": @@ -431,28 +435,28 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.18.6", "@babel/plugin-syntax-typescript@^7.7.2": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz#1c09cd25795c7c2b8a4ba9ae49394576d4133285" - integrity sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA== +"@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== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz#19063fcf8771ec7b31d742339dac62433d0611fe" - integrity sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-async-to-generator@^7.0.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz#ccda3d1ab9d5ced5265fdb13f1882d5476c71615" - integrity sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag== + 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== dependencies: "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-remap-async-to-generator" "^7.18.6" + "@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": version "7.18.6" @@ -462,40 +466,41 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-block-scoping@^7.0.0": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz#f9b7e018ac3f373c81452d6ada8bd5a18928926d" - integrity sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw== + 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.18.9" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-classes@^7.0.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz#0e61ec257fba409c41372175e7c1e606dc79bb20" - integrity sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A== + 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== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-compilation-targets" "^7.19.0" + "@babel/helper-compilation-targets" "^7.20.7" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" "@babel/plugin-transform-computed-properties@^7.0.0": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz#2357a8224d402dad623caf6259b611e56aec746e" - integrity sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" "@babel/plugin-transform-destructuring@^7.0.0": - version "7.18.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.13.tgz#9e03bc4a94475d62b7f4114938e6c5c33372cbf5" - integrity sha512-TodpQ29XekIsex2A+YJPj5ax2plkGa8YYY6mFjCohk/IG9IY42Rtuj1FuDeemfg2ipxIFLzPeA83SIBnlhSIow== + 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.18.9" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-exponentiation-operator@^7.0.0": version "7.18.6" @@ -506,19 +511,19 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.18.6": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz#e9e8606633287488216028719638cbbb2f2dde8f" - integrity sha512-sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-flow" "^7.18.6" "@babel/plugin-transform-for-of@^7.0.0": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz#6ef8a50b244eb6a0bdbad0c7c61877e4e30097c1" - integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-function-name@^7.0.0": version "7.18.9" @@ -544,14 +549,13 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.1.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz#afd243afba166cca69892e24a8fd8c9f2ca87883" - integrity sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q== + 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== dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-simple-access" "^7.18.6" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-module-transforms" "^7.21.2" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-simple-access" "^7.20.2" "@babel/plugin-transform-object-assign@^7.0.0": version "7.18.6" @@ -568,12 +572,12 @@ "@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.18.8": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz#ee9f1a0ce6d78af58d0956a9378ea3427cccb48a" - integrity sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg== +"@babel/plugin-transform-parameters@^7.0.0", "@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.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-property-literals@^7.0.0": version "7.18.6" @@ -590,48 +594,48 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz#3849401bab7ae8ffa1e3e5687c94a753fc75bda7" - integrity sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.21.0.tgz#ec98d4a9baafc5a1eb398da4cf94afbb40254a54" + integrity sha512-f/Eq+79JEu+KUANFks9UZCcvydOOGMgF7jBrcwjHa5jTZD8JivnhCJYvmlhR/WTXBWonDExPoW0eO/CR4QJirA== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.18.6.tgz#06e9ae8a14d2bc19ce6e3c447d842032a50598fc" - integrity sha512-utZmlASneDfdaMh0m/WausbjUjEdGrQJz0vFK93d7wD3xf5wBtX219+q6IlCNZeguIcxS2f/CvLZrlLSvSHQXw== + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz#88578ae8331e5887e8ce28e4c9dc83fb29da0b86" + integrity sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-transform-react-jsx@^7.0.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz#b3cbb7c3a00b92ec8ae1027910e331ba5c500eb9" - integrity sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg== + 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== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.19.0" + "@babel/types" "^7.21.0" "@babel/plugin-transform-regenerator@^7.0.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz#585c66cb84d4b4bf72519a34cfce761b8676ca73" - integrity sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ== + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz#57cda588c7ffb7f4f8483cc83bdcea02a907f04d" + integrity sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - regenerator-transform "^0.15.0" + "@babel/helper-plugin-utils" "^7.20.2" + regenerator-transform "^0.15.1" "@babel/plugin-transform-runtime@^7.0.0": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.10.tgz#37d14d1fa810a368fd635d4d1476c0154144a96f" - integrity sha512-q5mMeYAdfEbpBAgzl7tBre/la3LeCxmDO1+wMXRdPWbcoMjR3GiXlCLk7JBZVVye0bqTGNMbt0yYVXX1B1jEWQ== + 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== dependencies: "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.9" - babel-plugin-polyfill-corejs2 "^0.3.2" - babel-plugin-polyfill-corejs3 "^0.5.3" - babel-plugin-polyfill-regenerator "^0.4.0" + "@babel/helper-plugin-utils" "^7.20.2" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" semver "^6.3.0" "@babel/plugin-transform-shorthand-properties@^7.0.0": @@ -642,12 +646,12 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-spread@^7.0.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz#dd60b4620c2fec806d60cfaae364ec2188d593b6" - integrity sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-transform-sticky-regex@^7.0.0": version "7.18.6" @@ -663,14 +667,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-typescript@^7.18.6", "@babel/plugin-transform-typescript@^7.5.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.19.0.tgz#50c3a68ec8efd5e040bde2cd764e8e16bc0cbeaf" - integrity sha512-DOOIywxPpkQHXijXv+s9MDAyZcLp12oYRl3CMWZ6u7TjSoCBq/KqHR/nNFR3+i2xqheZxoF0H2XyL7B6xeSRuA== +"@babel/plugin-transform-typescript@^7.21.0", "@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-create-class-features-plugin" "^7.19.0" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/plugin-syntax-typescript" "^7.18.6" + "@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": version "7.18.6" @@ -690,18 +695,18 @@ "@babel/plugin-transform-flow-strip-types" "^7.18.6" "@babel/preset-typescript@^7.1.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" - integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== + 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== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-transform-typescript" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.21.0" + "@babel/plugin-transform-typescript" "^7.21.0" "@babel/register@^7.0.0": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c" - integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.21.0.tgz#c97bf56c2472e063774f31d344c592ebdcefa132" + integrity sha512-9nKsPmYDi5DidAqJaQooxIhsLJiNMkGr8ypQ8Uic7cIox7UCDsM7HuUGxdGT7mSDTYbqzIdsOWzfBton/YJrMw== dependencies: clone-deep "^4.0.1" find-cache-dir "^2.0.0" @@ -709,52 +714,50 @@ pirates "^4.0.5" source-map-support "^0.5.16" -"@babel/runtime@^7.15.4", "@babel/runtime@^7.8.4": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.0.tgz#22b11c037b094d27a8a2504ea4dcff00f50e2259" - integrity sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA== - dependencies: - regenerator-runtime "^0.13.4" +"@babel/regjsgen@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" + integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@^7.6.2", "@babel/runtime@^7.8.7": - version "7.20.13" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" - integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== +"@babel/runtime@^7.15.4", "@babel/runtime@^7.6.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": + 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== dependencies: regenerator-runtime "^0.13.11" -"@babel/template@^7.0.0", "@babel/template@^7.18.10", "@babel/template@^7.3.3": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" - integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== +"@babel/template@^7.0.0", "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" + integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.18.10" - "@babel/types" "^7.18.10" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" -"@babel/traverse@^7.14.0", "@babel/traverse@^7.18.9", "@babel/traverse@^7.19.0", "@babel/traverse@^7.7.2": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.0.tgz#eb9c561c7360005c592cc645abafe0c3c4548eed" - integrity sha512-4pKpFRDh+utd2mbRC8JLnlsMUii3PMHjpL6a0SZ4NMZy7YFP9aXORxEhdMVOc9CpWtDF09IkciQLEhK7Ml7gRA== +"@babel/traverse@^7.14.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.21.3", "@babel/traverse@^7.7.2": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.3.tgz#4747c5e7903d224be71f90788b06798331896f67" + integrity sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.19.0" + "@babel/generator" "^7.21.3" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-hoist-variables" "^7.18.6" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/parser" "^7.21.3" + "@babel/types" "^7.21.3" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.0.tgz#75f21d73d73dc0351f3368d28db73465f4814600" - integrity sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA== +"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@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.21.3", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.3.tgz#4865a5357ce40f64e3400b0f3b737dc6d4f64d05" + integrity sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg== dependencies: - "@babel/helper-string-parser" "^7.18.10" - "@babel/helper-validator-identifier" "^7.18.6" + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" "@bcoe/v8-coverage@^0.2.3": @@ -778,17 +781,17 @@ "@formatjs/intl-localematcher" "0.2.32" tslib "^2.4.0" -"@formatjs/fast-memoize@1.2.8": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-1.2.8.tgz#425a69f783005f69e11f9e38a7f87f8822d330c6" - integrity sha512-PemNUObyoIZcqdQ1ixTPugzAzhEj7j6AHIyrq/qR6x5BFTvOQeXHYsVZUqBEFduAIscUaDfou+U+xTqOiunJ3Q== +"@formatjs/fast-memoize@2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.0.1.tgz#f15aaa73caad5562899c69bdcad8db82adcd3b0b" + integrity sha512-M2GgV+qJn5WJQAYewz7q2Cdl6fobQa69S1AzSM2y0P68ZDbK5cWrJIcPCO395Of1ksftGZoOt4LYCO/j9BKBSA== dependencies: tslib "^2.4.0" -"@formatjs/icu-messageformat-parser@2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.2.0.tgz#9221f7f4dbaf634a84e459a49017a872e708dcfa" - integrity sha512-NT/jKI9nvqNIsosTm+Cxv3BHutB1RIDFa4rAa2b664Od4sBnXtK7afXvAqNa3XDFxljKTij9Cp+kRMJbXozUww== +"@formatjs/icu-messageformat-parser@2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.3.0.tgz#8e8fd577c3e39454ef14bba4963f2e1d5f2cc46c" + integrity sha512-xqtlqYAbfJDF4b6e4O828LBNOWXrFcuYadqAbYORlDRwhyJ2bH+xpUBPldZbzRGUN2mxlZ4Ykhm7jvERtmI8NQ== dependencies: "@formatjs/ecma402-abstract" "1.14.3" "@formatjs/icu-skeleton-parser" "1.3.18" @@ -821,32 +824,32 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@internationalized/date@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@internationalized/date/-/date-3.0.2.tgz#1566a0bcbd82dce4dd54a5b26456bb701068cb89" - integrity sha512-9V1IxesP6ASZj/hYyOXOC4yPJvidbbStyWQKLCQSqhhKACMOXoo+BddXZJy47ju9mqOMpWdrJ2rTx4yTxK9oag== +"@internationalized/date@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@internationalized/date/-/date-3.1.0.tgz#da48aeaa971df6ad410cd32597c174d6cab9a3b4" + integrity sha512-wjeur7K4AecT+YwoBmBXQ/+n5lP69tuZc34hw09s44EozZK7FZHSyfPvRp5/xEb2D6abLboskDY4jG+Nt0TNUQ== dependencies: "@swc/helpers" "^0.4.14" -"@internationalized/message@^3.0.10": - version "3.0.10" - resolved "https://registry.yarnpkg.com/@internationalized/message/-/message-3.0.10.tgz#340dcfd14ace37234e09419427c991a0c466b96e" - integrity sha512-vfLqEop/NH68IgqMcXJNSDqZ5Leg3EEgCxhuuSefU7vvdbptD3pwpUWXaK9igYPa+aZfUU0eqv86yqm76obtsw== +"@internationalized/message@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@internationalized/message/-/message-3.1.0.tgz#b284014cd8bbb430a648b76c87c62bdca968b04c" + integrity sha512-Oo5m70FcBdADf7G8NkUffVSfuCdeAYVfsvNjZDi9ELpjvkc4YNJVTHt/NyTI9K7FgAVoELxiP9YmN0sJ+HNHYQ== dependencies: "@swc/helpers" "^0.4.14" intl-messageformat "^10.1.0" -"@internationalized/number@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@internationalized/number/-/number-3.1.2.tgz#4482a6ac573acfb18efd354a42008af20da6c89c" - integrity sha512-Mbys8SGsn0ApXz3hJLNU+d95B8luoUbwnmCpBwl7d63UmYAlcT6TRDyvaS/vwdbElXLcsQJjQCu0gox2cv/Tig== +"@internationalized/number@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@internationalized/number/-/number-3.2.0.tgz#dffb661cacd61a87b814c47b7d5240a286249066" + integrity sha512-GUXkhXSX1Ee2RURnzl+47uvbOxnlMnvP9Er+QePTjDjOPWuunmLKlEkYkEcLiiJp7y4l9QxGDLOlVr8m69LS5w== dependencies: "@swc/helpers" "^0.4.14" -"@internationalized/string@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@internationalized/string/-/string-3.0.1.tgz#2c70a81ae5eb84f156f40330369c2469bad6d504" - integrity sha512-2+rHfXZ56YgsC6i3fKvBue/xatnSm0Jv+C/x4+n3wg5xAcLh4LPW3GvZ/9ifxNAz9+IWplgZHa1FRIbSuUvNWg== +"@internationalized/string@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@internationalized/string/-/string-3.1.0.tgz#0b365906a8c3f44800b0db52c2e990cff345abce" + integrity sha512-TJQKiyUb+wyAfKF59UNeZ/kELMnkxyecnyPCnBI1ma4NaXReJW+7Cc2mObXAqraIBJUVv7rgI46RLKrLgi35ng== dependencies: "@swc/helpers" "^0.4.14" @@ -1070,7 +1073,7 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@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== @@ -1080,207 +1083,207 @@ resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": 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/trace-mapping@^0.3.9": - version "0.3.15" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz#aba35c48a38d3fd84b37e66c9c0423f9744f9774" - integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g== +"@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== dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" "@react-aria/checkbox@^3.2.1": - version "3.7.1" - resolved "https://registry.yarnpkg.com/@react-aria/checkbox/-/checkbox-3.7.1.tgz#217ea3173ad37ae85cb39bcb9932eb5c1cde2e0b" - integrity sha512-3KRg/KrTRwQdw5Yg7gpbIKWWVt57PbGSEXAS/diQvRf9pTXbOuChTES8uVlcwF8q+3mKXc4ppzE3gsNQ5jOMqg== - dependencies: - "@react-aria/label" "^3.4.4" - "@react-aria/toggle" "^3.4.2" - "@react-aria/utils" "^3.14.2" - "@react-stately/checkbox" "^3.3.2" - "@react-stately/toggle" "^3.4.4" - "@react-types/checkbox" "^3.4.1" - "@react-types/shared" "^3.16.0" + version "3.8.0" + resolved "https://registry.yarnpkg.com/@react-aria/checkbox/-/checkbox-3.8.0.tgz#bded3e1238901c6cac109c8d1a0b2a66d452f8be" + integrity sha512-VjezmSfDx1/A+Yz5naZ9xCxkasmtsO7uK+Ur+Z6bKmHwvoazRK5cATdRG4mj++0JUBYn6bvBGBEXFZHTkkGahw== + dependencies: + "@react-aria/label" "^3.5.0" + "@react-aria/toggle" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/checkbox" "^3.4.0" + "@react-stately/toggle" "^3.5.0" + "@react-types/checkbox" "^3.4.2" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-aria/combobox@^3.0.0-alpha.1": - version "3.4.4" - resolved "https://registry.yarnpkg.com/@react-aria/combobox/-/combobox-3.4.4.tgz#0a968bfefedc9106e4b098ea84707f6da93dfc83" - integrity sha512-aviSDt4JkYZC1Ww83gvrNB4cHetXu73n5NuEfMNBC3B6fiL0MP5Av5+lMgf8FzpQks39QkZNxBtQ/h4I3D7SBA== - dependencies: - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/listbox" "^3.7.2" - "@react-aria/live-announcer" "^3.1.2" - "@react-aria/menu" "^3.7.1" - "@react-aria/overlays" "^3.12.1" - "@react-aria/selection" "^3.12.1" - "@react-aria/textfield" "^3.8.1" - "@react-aria/utils" "^3.14.2" - "@react-stately/collections" "^3.5.1" - "@react-stately/combobox" "^3.3.1" - "@react-stately/layout" "^3.10.0" - "@react-types/button" "^3.7.0" - "@react-types/combobox" "^3.5.5" - "@react-types/shared" "^3.16.0" + version "3.5.1" + resolved "https://registry.yarnpkg.com/@react-aria/combobox/-/combobox-3.5.1.tgz#1add295dd894e7bc63945e40910d0f949c24ccb8" + integrity sha512-HyBX98TvQe8IscJlRz6TxgvMlYcwy9iTA/GWjy3bMNjUfxPaRZh5r69aG8JlTRvVDLE13cUSh0mKsTSjo8evvQ== + dependencies: + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/listbox" "^3.8.1" + "@react-aria/live-announcer" "^3.2.0" + "@react-aria/menu" "^3.8.1" + "@react-aria/overlays" "^3.13.0" + "@react-aria/selection" "^3.13.1" + "@react-aria/textfield" "^3.9.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/combobox" "^3.4.0" + "@react-stately/layout" "^3.11.0" + "@react-types/button" "^3.7.1" + "@react-types/combobox" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/focus@^3.10.1", "@react-aria/focus@^3.2.3": - version "3.10.1" - resolved "https://registry.yarnpkg.com/@react-aria/focus/-/focus-3.10.1.tgz#624d02d2565151030a4156aeb17685d87f18ad58" - integrity sha512-HjgFUC1CznuYC7CxtBIFML6bOBxW3M3cSNtvmXU9QWlrPSwwOLkXCnfY6+UkjCc5huP4v7co4PoRDX8Vbe/cVQ== +"@react-aria/focus@^3.11.0", "@react-aria/focus@^3.2.3": + version "3.11.0" + resolved "https://registry.yarnpkg.com/@react-aria/focus/-/focus-3.11.0.tgz#8124b2341e8d43af72f3da85b08567bda45421b7" + integrity sha512-yPuWs9bAR9CMfIwyOPm2oXLPF19gNkUqW+ozSPhWbLMTEa8Ma09eHW1br4xbN+4ONOm/dCJsIkxTNPUkiLdQoA== dependencies: - "@react-aria/interactions" "^3.13.1" - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" clsx "^1.1.1" -"@react-aria/i18n@^3.2.0", "@react-aria/i18n@^3.3.0", "@react-aria/i18n@^3.6.3": - version "3.6.3" - resolved "https://registry.yarnpkg.com/@react-aria/i18n/-/i18n-3.6.3.tgz#2b4d72d0baf07b514d2c35eb6ac356d0247ea84a" - integrity sha512-cDWl8FXJIXsw/raWcThywBueCJ5ncoogq81wYVS6hfZVmSyncONIB3bwUL12cojmjX1VEP31sN0ujT/83QP95Q== - dependencies: - "@internationalized/date" "^3.0.2" - "@internationalized/message" "^3.0.10" - "@internationalized/number" "^3.1.2" - "@internationalized/string" "^3.0.1" - "@react-aria/ssr" "^3.4.1" - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" +"@react-aria/i18n@^3.2.0", "@react-aria/i18n@^3.3.0", "@react-aria/i18n@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-aria/i18n/-/i18n-3.7.0.tgz#c1dfcd7a76a5161cbccbd6980ecf201c9b4d1826" + integrity sha512-PZCWmhO9mJvelwiYlsXLY6W4L2o+oza3xnDx0cZDVqp/Hf+OwMAPHWtZsFRTKdjk4TaOPB/ISc9HknWn6UpY4w== + dependencies: + "@internationalized/date" "^3.1.0" + "@internationalized/message" "^3.1.0" + "@internationalized/number" "^3.2.0" + "@internationalized/string" "^3.1.0" + "@react-aria/ssr" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/interactions@^3.13.1", "@react-aria/interactions@^3.3.2": - version "3.13.1" - resolved "https://registry.yarnpkg.com/@react-aria/interactions/-/interactions-3.13.1.tgz#75e102c50a5c1d002cad4ee8d59677aee226186b" - integrity sha512-WCvfZOi1hhussVTHxVq76OR48ry13Zvp9U5hmuQufyxIUlf4hOvDk4/cbK4o4JiCs8X7C7SRzcwFM34M4NHzmg== +"@react-aria/interactions@^3.14.0", "@react-aria/interactions@^3.3.2": + version "3.14.0" + resolved "https://registry.yarnpkg.com/@react-aria/interactions/-/interactions-3.14.0.tgz#d6480985048c009d58b8572428010dc61093cfcc" + integrity sha512-e1Tkr0UTuYFpV21PJrXy7jEY542Vl+C2Fo70oukZ1fN+wtfQkzodsTIzyepXb7kVMGmC34wDisMJUrksVkfY2w== dependencies: - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/label@^3.1.1", "@react-aria/label@^3.4.4": - version "3.4.4" - resolved "https://registry.yarnpkg.com/@react-aria/label/-/label-3.4.4.tgz#b891d3cebeeffc7a1413a492d8a694083dc3253e" - integrity sha512-1fuYf2UctNhBy31uYN7OhdcrwzlB5GS0+C49gDkwWzccB7yr+CoOJ5UQUoVB7WBmzrc+CuzwWxSDd4OupSYIZQ== +"@react-aria/label@^3.1.1", "@react-aria/label@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-aria/label/-/label-3.5.0.tgz#817710d719bc95105e369f4993a3a60dbad73ba9" + integrity sha512-sNiPYiFg06s1zGuifEUeUqRiYje0lfHem+GIUh0Y5ZxfpqIyxEmyV9Aw+C7TTjjo8BAG4NZ4bR7iF9ujf9QvKQ== dependencies: - "@react-aria/utils" "^3.14.2" - "@react-types/label" "^3.7.1" - "@react-types/shared" "^3.16.0" + "@react-aria/utils" "^3.15.0" + "@react-types/label" "^3.7.2" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/listbox@^3.2.4", "@react-aria/listbox@^3.7.2": - version "3.7.2" - resolved "https://registry.yarnpkg.com/@react-aria/listbox/-/listbox-3.7.2.tgz#0cbbd4dc39712ac927542259bf4663e087353448" - integrity sha512-e3O/u2T3TccinmfS/UvHywxLbASmh28U4020WTpZnIrsaoriVCkGZvG1AYNNPDIESz2WO0oRF6vDrmGunglJ2A== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/interactions" "^3.13.1" - "@react-aria/label" "^3.4.4" - "@react-aria/selection" "^3.12.1" - "@react-aria/utils" "^3.14.2" - "@react-stately/collections" "^3.5.1" - "@react-stately/list" "^3.6.1" - "@react-types/listbox" "^3.3.5" - "@react-types/shared" "^3.16.0" +"@react-aria/listbox@^3.2.4", "@react-aria/listbox@^3.8.1": + version "3.8.1" + resolved "https://registry.yarnpkg.com/@react-aria/listbox/-/listbox-3.8.1.tgz#98c68c5ff7a000e1195c793195c6eb0fdf335c8c" + integrity sha512-kTIQWms6nS//GWr63gSVcNgZv7uf5RULLTKH3DIpmaftS3Kf4Sds6rspWGYQ9PAeS1EqcuHozsXXlKBo1upYgg== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/label" "^3.5.0" + "@react-aria/selection" "^3.13.1" + "@react-aria/utils" "^3.15.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/list" "^3.7.0" + "@react-types/listbox" "^3.4.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/live-announcer@^3.0.0-alpha.0", "@react-aria/live-announcer@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@react-aria/live-announcer/-/live-announcer-3.1.2.tgz#a492c7ec1e664c8f41a572368cdbc53e22241a0c" - integrity sha512-BqtVLPWU10sZssoOJF1lJiRvZe5zqZ5BM39PsFyO7dWhVkR/9O9bZviqvKXnC1oXCnypfa+85gUshbK9unFcWA== +"@react-aria/live-announcer@^3.0.0-alpha.0", "@react-aria/live-announcer@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@react-aria/live-announcer/-/live-announcer-3.2.0.tgz#ff4bd263789aa246de9f966e188649f6454e8b36" + integrity sha512-uSqDDy+9CbmNTZh0Roi4dvWKWcbuMTYKh3RnUw3XBPw0aYxSkcFQeWGfxFoOwXCDcXez02cFJtAxpR2bShkrsw== dependencies: "@swc/helpers" "^0.4.14" -"@react-aria/menu@^3.7.1": - version "3.7.1" - resolved "https://registry.yarnpkg.com/@react-aria/menu/-/menu-3.7.1.tgz#74c60dcd33bba47faa79deb89523ad21d9855221" - integrity sha512-5KIUTs3xYSmERB8qzofFghznMVLcG3RWDnJcQjpRtrrYjm6Oc39TJeodDH874fiEr6o3i5WwMrEYVp7NSxz/TQ== - dependencies: - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/overlays" "^3.12.1" - "@react-aria/selection" "^3.12.1" - "@react-aria/utils" "^3.14.2" - "@react-stately/collections" "^3.5.1" - "@react-stately/menu" "^3.4.4" - "@react-stately/tree" "^3.4.1" - "@react-types/button" "^3.7.0" - "@react-types/menu" "^3.7.3" - "@react-types/shared" "^3.16.0" +"@react-aria/menu@^3.8.1": + version "3.8.1" + resolved "https://registry.yarnpkg.com/@react-aria/menu/-/menu-3.8.1.tgz#3a1b859c8f0abda207ee824497c8e0968bb99cf0" + integrity sha512-p8DF/muxbTr/SOZh3FDFPcWUcnXvpwMKyR+xKXQQPbCV/LAiSjVtwxbNVvubqvzR0Qk6/XV4/HUY2r+4tnT8tQ== + dependencies: + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/overlays" "^3.13.0" + "@react-aria/selection" "^3.13.1" + "@react-aria/utils" "^3.15.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/menu" "^3.5.0" + "@react-stately/tree" "^3.5.0" + "@react-types/button" "^3.7.1" + "@react-types/menu" "^3.8.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/overlays@^3.12.1", "@react-aria/overlays@^3.6.1", "@react-aria/overlays@^3.7.0": - version "3.12.1" - resolved "https://registry.yarnpkg.com/@react-aria/overlays/-/overlays-3.12.1.tgz#429fe33b0da7b920334f241c688d73dc9a750a28" - integrity sha512-OSgSopk2uQI5unvC3+fUyngbRFFe4GnF0iopCmrsI7qSQEusJUd4M2SuPVXUBBwWFt5TsiH7TnxmIPWeh5LSoA== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/ssr" "^3.4.1" - "@react-aria/utils" "^3.14.2" - "@react-aria/visually-hidden" "^3.6.1" - "@react-stately/overlays" "^3.4.4" - "@react-types/button" "^3.7.0" - "@react-types/overlays" "^3.6.5" - "@react-types/shared" "^3.16.0" +"@react-aria/overlays@^3.13.0", "@react-aria/overlays@^3.6.1", "@react-aria/overlays@^3.7.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@react-aria/overlays/-/overlays-3.13.0.tgz#f5a8cdce4754b4fd487baf9f356a5a3cdd731c12" + integrity sha512-hRZyhAYzrlCcEWQ2k2jP24b0wc5/355Xl5w5FZHRmPeU1U4XlFwKX/eFlBs/li9Sprm1bTDXrCY480Kl6UsKDA== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/ssr" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-aria/visually-hidden" "^3.7.0" + "@react-stately/overlays" "^3.5.0" + "@react-types/button" "^3.7.1" + "@react-types/overlays" "^3.7.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-aria/radio@^3.1.2": - version "3.4.2" - resolved "https://registry.yarnpkg.com/@react-aria/radio/-/radio-3.4.2.tgz#bcd2deb8326f934046545fee9b2568f9d3b0655b" - integrity sha512-PpEsQjwkYOkSfKfnqXpBzf0FM/V2GSC0g/NG2ZAI5atDIACeic+kHCcs8fm2QzXtUDaRltNurvYdDJ+XzZ8g1g== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/label" "^3.4.4" - "@react-aria/utils" "^3.14.2" - "@react-stately/radio" "^3.6.2" - "@react-types/radio" "^3.3.1" - "@react-types/shared" "^3.16.0" + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-aria/radio/-/radio-3.5.0.tgz#3322063e0ff86275762c0d473dfd2a0c3e82e168" + integrity sha512-d/Hxdu+jUdi3wmyaWYRLTyN16vZxr2MOdkmw8tojTOIMLQj7zTaCFc0D4LR4KZEn3E0F5buGCUHL6o4CTqBeBA== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/label" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/radio" "^3.7.0" + "@react-types/radio" "^3.4.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-aria/selection@^3.12.1", "@react-aria/selection@^3.3.1", "@react-aria/selection@^3.3.2": - version "3.12.1" - resolved "https://registry.yarnpkg.com/@react-aria/selection/-/selection-3.12.1.tgz#a21ea85952c55b5a7ce8c846478226fe3d03f1f8" - integrity sha512-UX1vSY+iUdHe0itFZIOizX1BCI8SAeFnEh5VIQ1bYRt93+kAxeC914fsxFPPgrodJyqWRCX1dblPyRUIWAzQiw== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/utils" "^3.14.2" - "@react-stately/collections" "^3.5.1" - "@react-stately/selection" "^3.11.2" - "@react-types/shared" "^3.16.0" +"@react-aria/selection@^3.13.1", "@react-aria/selection@^3.3.1", "@react-aria/selection@^3.3.2": + version "3.13.1" + resolved "https://registry.yarnpkg.com/@react-aria/selection/-/selection-3.13.1.tgz#770c5ff2ace1db397c09576deb39c576c0fede30" + integrity sha512-YI5mFkk3JI3Ec01SzyBFGrdPInkoW5B0AavwLkN5QtehBUgdw9A1gPKADW4tiLfKUOl0rkqstP13n+v/GcBoTg== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/selection" "^3.12.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-aria/slider@^3.0.1": - version "3.2.4" - resolved "https://registry.yarnpkg.com/@react-aria/slider/-/slider-3.2.4.tgz#b272c13b5651f7e76a5b9d4ef300226ae315a64d" - integrity sha512-+BDPFaCgm0gtGewO33ZDNZz1b3Fc1p5Y/HSuwCcru+jHetODJXy23IIVpWsDri1vG3fHECRnWcDZAjLZgkVnAw== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/i18n" "^3.6.3" - "@react-aria/interactions" "^3.13.1" - "@react-aria/label" "^3.4.4" - "@react-aria/utils" "^3.14.2" - "@react-stately/radio" "^3.6.2" - "@react-stately/slider" "^3.2.4" - "@react-types/radio" "^3.3.1" - "@react-types/shared" "^3.16.0" - "@react-types/slider" "^3.3.1" + version "3.3.0" + resolved "https://registry.yarnpkg.com/@react-aria/slider/-/slider-3.3.0.tgz#4bb945a93a90607a549d08d99efd543d358fd8e6" + integrity sha512-UgR2XEI3vrJAQU1RVC+1uHVr/vFcVh+Cjt/kaFUO7fdj8usqa4JOnIuX+QKCysiVLJc7IEXw4RCJBJYBSUYK6A== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/i18n" "^3.7.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/label" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/radio" "^3.7.0" + "@react-stately/slider" "^3.3.0" + "@react-types/radio" "^3.4.0" + "@react-types/shared" "^3.17.0" + "@react-types/slider" "^3.4.0" "@swc/helpers" "^0.4.14" -"@react-aria/ssr@^3.0.1", "@react-aria/ssr@^3.4.1": - version "3.4.1" - resolved "https://registry.yarnpkg.com/@react-aria/ssr/-/ssr-3.4.1.tgz#79e8bb621487e8f52890c917d3c734f448ba95e7" - integrity sha512-NmhoilMDyIfQiOSdQgxpVH2tC2u85Y0mVijtBNbI9kcDYLEiW/r6vKYVKtkyU+C4qobXhGMPfZ70PTc0lysSVA== +"@react-aria/ssr@^3.0.1", "@react-aria/ssr@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-aria/ssr/-/ssr-3.5.0.tgz#40c1270a75868185f72a88cafe37bd1392f690cb" + integrity sha512-h0MJdSWOd1qObLnJ8mprU31wI8tmKFJMuwT22MpWq6psisOOZaga6Ml4u6Ee6M6duWWISjXvqO4Sb/J0PBA+nQ== dependencies: "@swc/helpers" "^0.4.14" @@ -1299,51 +1302,51 @@ "@react-types/shared" "^3.2.1" "@react-types/tabs" "3.0.0-alpha.2" -"@react-aria/textfield@^3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@react-aria/textfield/-/textfield-3.8.1.tgz#b6df2decc587824a3757ec33bd9b432fed1bacc5" - integrity sha512-jgun/B9ecuRCfBSJLX2xDuNwfuj1lL0oibMWoSv6Y++W+CSS8a7LjR1f9Kll5TDVkQiRRUm9qHwI0og9xTJrNw== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/label" "^3.4.4" - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" - "@react-types/textfield" "^3.6.2" +"@react-aria/textfield@^3.9.0": + version "3.9.0" + resolved "https://registry.yarnpkg.com/@react-aria/textfield/-/textfield-3.9.0.tgz#485904cfe241a4bdffa4345158e4858d8cbb3025" + integrity sha512-plX+/RDidTpz4kfQni2mnH10g9iARC5P7oi4XBXqwrVCIqpTUNoyGLUH952wObYOI9k7lG2QG0+b+3GyrV159g== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/label" "^3.5.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" + "@react-types/textfield" "^3.7.0" "@swc/helpers" "^0.4.14" -"@react-aria/toggle@^3.4.2": - version "3.4.2" - resolved "https://registry.yarnpkg.com/@react-aria/toggle/-/toggle-3.4.2.tgz#1c57539a26722219979c80dcebfbd0701c518789" - integrity sha512-xokCGf0fn96mOMqQku5QW672iQoMsN9RMpFbKvvgg2seceh8ifblyAXElWf/6YmluOZSgUSZljDkFrbMMYlzVA== - dependencies: - "@react-aria/focus" "^3.10.1" - "@react-aria/interactions" "^3.13.1" - "@react-aria/utils" "^3.14.2" - "@react-stately/toggle" "^3.4.4" - "@react-types/checkbox" "^3.4.1" - "@react-types/shared" "^3.16.0" - "@react-types/switch" "^3.2.5" +"@react-aria/toggle@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-aria/toggle/-/toggle-3.5.0.tgz#2193fd0a13a6c11ce865768c5b3e4fe37feab433" + integrity sha512-K49OmHBmYW8pk0rXJU1TNRzR+PxLVvfL/ni6ifV5gcxoxV6DmFsNFj+5B/U3AMnCEQeyKQeiY6z9X7EBVX6j9Q== + dependencies: + "@react-aria/focus" "^3.11.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/toggle" "^3.5.0" + "@react-types/checkbox" "^3.4.2" + "@react-types/shared" "^3.17.0" + "@react-types/switch" "^3.3.0" "@swc/helpers" "^0.4.14" -"@react-aria/utils@^3.14.2", "@react-aria/utils@^3.3.0", "@react-aria/utils@^3.4.1", "@react-aria/utils@^3.6.0": - version "3.14.2" - resolved "https://registry.yarnpkg.com/@react-aria/utils/-/utils-3.14.2.tgz#3a8d0d14abab4bb1095e101ee44dc5e3e43e6217" - integrity sha512-3nr5gsAf/J/W+6Tu4NF3Q7m+1mXjfpXESh7TPa6UR6v3tVDTsJVMrITg2BkHN1jM8xELcl2ZxyUffOWqOXzWuA== +"@react-aria/utils@^3.15.0", "@react-aria/utils@^3.3.0", "@react-aria/utils@^3.4.1", "@react-aria/utils@^3.6.0": + version "3.15.0" + resolved "https://registry.yarnpkg.com/@react-aria/utils/-/utils-3.15.0.tgz#a836674dd40ec7f15e9f7a69b1a14f19b1ee42e6" + integrity sha512-aJZBG++iz1UwTW5gXFaHicKju4p0MPhAyBTcf2awHYWeTUUslDjJcEnNg7kjBYZBOrOSlA2rAt7/7C5CCURQPg== dependencies: - "@react-aria/ssr" "^3.4.1" - "@react-stately/utils" "^3.5.2" - "@react-types/shared" "^3.16.0" + "@react-aria/ssr" "^3.5.0" + "@react-stately/utils" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" clsx "^1.1.1" -"@react-aria/visually-hidden@^3.2.1", "@react-aria/visually-hidden@^3.6.1": - version "3.6.1" - resolved "https://registry.yarnpkg.com/@react-aria/visually-hidden/-/visually-hidden-3.6.1.tgz#b0a94b1531b9a8942d0d9a5cc6ed88109b8f5487" - integrity sha512-7rUbiaIiR1nok9HAHPn/WcyQlvuldUqxnvh81V4dlI3NtXOgMw7/QaNc5Xo5FFWlsSVpbyK3UVJgzIui0Ns0Xg== +"@react-aria/visually-hidden@^3.2.1", "@react-aria/visually-hidden@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-aria/visually-hidden/-/visually-hidden-3.7.0.tgz#4056b8bb33f30ca8c5192dfcf706ac8bb2beb61a" + integrity sha512-v/0ujJ67H6LjwY8J7mIGPVB1K8suBArLV+w8UGdX/wFXRL7H4r2fiqlrwAElWSmNbhDQl5BDm/Zh/ub9jB9yzA== dependencies: - "@react-aria/interactions" "^3.13.1" - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" + "@react-aria/interactions" "^3.14.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" clsx "^1.1.1" @@ -1357,7 +1360,7 @@ "@react-stately/toggle" "^3.2.1" "@react-types/checkbox" "^3.2.1" -"@react-native-aria/checkbox@^0.2.2": +"@react-native-aria/checkbox@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@react-native-aria/checkbox/-/checkbox-0.2.3.tgz#b6c99c215677df872f1bb4e596b54573f1c7a5f0" integrity sha512-YtWtXGg5tvOaV6v1CmbusXoOZvGRAVYygms9qNeUF7/B8/iDNGSKjlxHE5LVOLRtJO/B9ndZnr6RkL326ceyng== @@ -1411,10 +1414,10 @@ "@react-types/listbox" "^3.1.1" "@react-types/shared" "^3.4.0" -"@react-native-aria/overlays@0.3.3-rc.0": - version "0.3.3-rc.0" - resolved "https://registry.yarnpkg.com/@react-native-aria/overlays/-/overlays-0.3.3-rc.0.tgz#9041ddd6f151e6edb50c971d29920c458aa41459" - integrity sha512-RgaIYIHMltt0RdMrVwfXLAVxc22TIUY1Yx07HbQRMdt4LcSmU8pyp5CEtJ/MQCXceuqocnXfsUxyHOSnfhmfpA== +"@react-native-aria/overlays@^0.3.3": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@react-native-aria/overlays/-/overlays-0.3.5.tgz#145375be00c03182a57f5d7cc8a8cfb33ae3e680" + integrity sha512-xM7IpK+NL54Y3dM4mprsYwRWJa65f6Skh8H+90E64LEeYFtp3JLvJnFPfoeH5vTBiCqdtDgvMOOIEDa+b7iEPQ== dependencies: "@react-aria/interactions" "^3.3.2" "@react-aria/overlays" "^3.7.0" @@ -1633,58 +1636,53 @@ integrity sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ== "@react-navigation/bottom-tabs@^6.0.9": - version "6.3.3" - resolved "https://registry.yarnpkg.com/@react-navigation/bottom-tabs/-/bottom-tabs-6.3.3.tgz#ded46ffa47c48f95d87a77e35cbed73eda3378b2" - integrity sha512-S5obigsDAgRD7hmGauijNITI2jPm7N40IIIwdQjJhT9Y9vos8ycLOKMVU06mchU6sRGJC2xIkPderPiwAUVvDg== + version "6.5.7" + resolved "https://registry.yarnpkg.com/@react-navigation/bottom-tabs/-/bottom-tabs-6.5.7.tgz#08470c96e0d11481422214bb98f0ff034038856c" + integrity sha512-9oZYyRu2z7+1pr2dX5V54rHFPmlj4ztwQxFe85zwpnGcPtGIsXj7VCIdlHnjRHJBBFCszvJGQpYY6/G2+DfD+A== dependencies: - "@react-navigation/elements" "^1.3.5" + "@react-navigation/elements" "^1.3.17" color "^4.2.3" warn-once "^0.1.0" -"@react-navigation/core@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-6.3.0.tgz#79d08f45e448b6269cc0268b0653975913104a3c" - integrity sha512-nyvReUB00SAfHdL/AA+GksdaTuiC31LxHp+f1kxuPNkcGR7zSMVT+Wrq4OHe+VPFfCxJxoseQ2ElsvE+4IYFoQ== +"@react-navigation/core@^6.4.8": + version "6.4.8" + resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-6.4.8.tgz#a18e106d3c59cdcfc4ce53f7344e219ed35c88ed" + integrity sha512-klZ9Mcf/P2j+5cHMoGyIeurEzyBM2Uq9+NoSFrF6sdV5iCWHLFhrCXuhbBiQ5wVLCKf4lavlkd/DDs47PXs9RQ== dependencies: - "@react-navigation/routers" "^6.1.2" + "@react-navigation/routers" "^6.1.8" escape-string-regexp "^4.0.0" nanoid "^3.1.23" - query-string "^7.0.0" + query-string "^7.1.3" react-is "^16.13.0" use-latest-callback "^0.1.5" -"@react-navigation/elements@^1.3.13": - version "1.3.13" - resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.13.tgz#5105fa26df8d32810cd9f14d6ec5a3d2c2bb26d2" - integrity sha512-LqqK5s2ZfYHn2cQ376jC5V9dQztLH5ixkkJj9WR7JY2g4SghDd39WJhL3Jillw1Mu3F3b9sZwvAK+QkXhnDeAA== - -"@react-navigation/elements@^1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.5.tgz#904876ce3f3c36632f242322dd622bb3e18e6775" - integrity sha512-3Ef5cYuQXqJRco7RG99fkDEciAuYTkAD7go5D8RFYG8rAp2aI/cDnGwFwvFVANlRsbFFPGU3ZLY8EUJihf4Hjw== +"@react-navigation/elements@^1.3.17": + version "1.3.17" + resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.17.tgz#9cb95765940f2841916fc71686598c22a3e4067e" + integrity sha512-sui8AzHm6TxeEvWT/NEXlz3egYvCUog4tlXA4Xlb2Vxvy3purVXDq/XsM56lJl344U5Aj/jDzkVanOTMWyk4UA== "@react-navigation/native-stack@^6.9.8": - version "6.9.8" - resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.8.tgz#c953a169918a4bdde56f7d2dc1073da4726b4cb7" - integrity sha512-74dje939lflsTXJQwCAdznbJ4B6V8sA5CSzuHwbiogL8B6EVXNa/qliXtB7DBAvzeyWDWT3u+gM2vOYJOeXYhA== + version "6.9.12" + resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.12.tgz#a09fe43ab2fc4c82a1809e3953021d1da4ead85c" + integrity sha512-kS2zXCWP0Rgt7uWaCUKrRl7U2U1Gp19rM1kyRY2YzBPXhWGVPjQ2ygBp88CTQzjgy8M07H/79jvGiZ0mlEJI+g== dependencies: - "@react-navigation/elements" "^1.3.13" + "@react-navigation/elements" "^1.3.17" warn-once "^0.1.0" "@react-navigation/native@^6.0.6": - version "6.0.12" - resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-6.0.12.tgz#29bb0a657b65704fd55803f5c01e064ea0747e48" - integrity sha512-23n0pDsFvFxPIkB4zrAip05uUj6Jr+5dinqrDdEU26cPoki3/iJlirvbSIs/64Om/OuTyUjFdB/zI75ng+m5Pg== + version "6.1.6" + resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-6.1.6.tgz#84ff5cf85b91f660470fa9407c06c8ee393d5792" + integrity sha512-14PmSy4JR8HHEk04QkxQ0ZLuqtiQfb4BV9kkMXD2/jI4TZ+yc43OnO6fQ2o9wm+Bq8pY3DxyerC2AjNUz+oH7Q== dependencies: - "@react-navigation/core" "^6.3.0" + "@react-navigation/core" "^6.4.8" escape-string-regexp "^4.0.0" fast-deep-equal "^3.1.3" nanoid "^3.1.23" -"@react-navigation/routers@^6.1.2": - version "6.1.2" - resolved "https://registry.yarnpkg.com/@react-navigation/routers/-/routers-6.1.2.tgz#b239e876f03a1f8908862ccb5473d36e32c4d163" - integrity sha512-uJ+N7dyrZjA2L3ykyH0OyEiLNhzxDSfUqgOS4LmrLWlgly/oYFfPTqsxCD8zP0r3hv7ayLIPQPC1u1ubSO+42A== +"@react-navigation/routers@^6.1.8": + version "6.1.8" + resolved "https://registry.yarnpkg.com/@react-navigation/routers/-/routers-6.1.8.tgz#ae56b2678dbb5abca5bd7c95d6a8d1abc767cba2" + integrity sha512-CEge+ZLhb1HBrSvv4RwOol7EKLW1QoqVIQlE9TN5MpxS/+VoQvP+cLbuz0Op53/iJfYhtXRFd1ZAd3RTRqto9w== dependencies: nanoid "^3.1.23" @@ -1698,15 +1696,15 @@ "@react-stately/utils" "^3.2.2" "@react-types/checkbox" "^3.2.3" -"@react-stately/checkbox@^3.3.2": - version "3.3.2" - resolved "https://registry.yarnpkg.com/@react-stately/checkbox/-/checkbox-3.3.2.tgz#fd81866a7624c79cab2ec2c32234f164205a85e8" - integrity sha512-eU3zvWgQrcqS8UK8ZVkb3fMP816PeuN9N0/dOJKuOXXhkoLPuxtuja1oEqKU3sFMa5+bx3czZhhNIRpr60NAdw== +"@react-stately/checkbox@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-stately/checkbox/-/checkbox-3.4.0.tgz#34712864e6b6dbae033b30a279dc32a26bbc1a9b" + integrity sha512-zqwHMmlzza1exS6Bbqj4Mom3ygtG8pLguHweZ9OO7BFQLwBmzJsrFNqDcj7xh8iEWxXKQfZ2YOuhkaGvu4GRjA== dependencies: - "@react-stately/toggle" "^3.4.4" - "@react-stately/utils" "^3.5.2" - "@react-types/checkbox" "^3.4.1" - "@react-types/shared" "^3.16.0" + "@react-stately/toggle" "^3.5.0" + "@react-stately/utils" "^3.6.0" + "@react-types/checkbox" "^3.4.2" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-stately/collections@3.3.0": @@ -1717,12 +1715,12 @@ "@babel/runtime" "^7.6.2" "@react-types/shared" "^3.2.1" -"@react-stately/collections@^3.5.1": - version "3.5.1" - resolved "https://registry.yarnpkg.com/@react-stately/collections/-/collections-3.5.1.tgz#502a56658e4859aa7d31bd4b9189879b5b5a0255" - integrity sha512-egzVrZC5eFc5RJBpqUkzxd2aJOHZ2T1o7horEi8tAWZkg4YI+AmKrqela4ijVrrB9l1GO9z06qPT1UoPkFrC1w== +"@react-stately/collections@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@react-stately/collections/-/collections-3.6.0.tgz#4fbecbbbb354badbc46618262e91743754257673" + integrity sha512-znkaqCPo7F1yyzEKDAB5MpX1Vw5UHcUQhDNrys5YOqAkX6/G/AChnBz0B63UxS3fjyqgnuJylRRmUp9nTqO21w== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-stately/combobox@3.0.0-alpha.1": @@ -1738,70 +1736,70 @@ "@react-types/combobox" "3.0.0-alpha.1" "@react-types/shared" "^3.4.0" -"@react-stately/combobox@^3.3.1": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@react-stately/combobox/-/combobox-3.3.1.tgz#5be13467dd64ddd09199b5e00e9f7d4a1aec5688" - integrity sha512-DgYn0MyfbDySf54o7ofXRd29TWznqtRRRbMG8TWgi/RaB0piDckT/TYWWSYOH3iMgnOEhReJhUUdMiQG4QLpIg== - dependencies: - "@react-stately/list" "^3.6.1" - "@react-stately/menu" "^3.4.4" - "@react-stately/select" "^3.3.4" - "@react-stately/utils" "^3.5.2" - "@react-types/combobox" "^3.5.5" - "@react-types/shared" "^3.16.0" +"@react-stately/combobox@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-stately/combobox/-/combobox-3.4.0.tgz#d4189bfe7b17a94a6158357de51ebd4166f819c5" + integrity sha512-QVKNosNqSS7PnjrNVrGat9KKlCcv7e3nTehQuIu18ZE2JVH7Jdf/73zkSMurrnQfbPVeiHkGK1deWqrzoNzYQQ== + dependencies: + "@react-stately/list" "^3.7.0" + "@react-stately/menu" "^3.5.0" + "@react-stately/select" "^3.4.0" + "@react-stately/utils" "^3.6.0" + "@react-types/combobox" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/grid@^3.4.2": - version "3.4.2" - resolved "https://registry.yarnpkg.com/@react-stately/grid/-/grid-3.4.2.tgz#d7d1a4ed4b5bb431b5e5429f8f557cf7d88a7ae8" - integrity sha512-NeIUykQeA7Hen+dV4771ARW5SRrHYNn5VTOsQwn3KBUd2Z2gZ01OwUl3gETl5u0e3/tzMUdJ1LUoSPhDMwcmKw== +"@react-stately/grid@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/grid/-/grid-3.5.0.tgz#345a98a2f541d5372ebefe44d42f54e22c08d54e" + integrity sha512-kCmO2KyHoIJWiCqUXJTD0I/4q/6h3pXGdyD4tWmqWdysxf+x09K/Mx/JwwFqee5LICZgt8MtBrfV+ijLZ8mQAg== dependencies: - "@react-stately/selection" "^3.11.2" - "@react-types/grid" "^3.1.5" - "@react-types/shared" "^3.16.0" + "@react-stately/selection" "^3.12.0" + "@react-types/grid" "^3.1.6" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/layout@^3.10.0": - version "3.10.0" - resolved "https://registry.yarnpkg.com/@react-stately/layout/-/layout-3.10.0.tgz#86bcb9117a05df56f02d7b55d1d24c5593285c18" - integrity sha512-ThFgivQSD5ksLMX7tbu0HqIxbxac/E8a/0vA21wB9QF9IQnUKO796QAQqwfA5rwPvTT41LL2Xn00GkrwQ9g/zg== +"@react-stately/layout@^3.11.0": + version "3.11.0" + resolved "https://registry.yarnpkg.com/@react-stately/layout/-/layout-3.11.0.tgz#e1009eed8cc61fb00691eaf2ea38a5dd5fd49318" + integrity sha512-QNupEFgIv5hqYEbLxDQfHgBkfk6t1VTTxWftBZMXXJEVCC1GH8vUJ35BJGO7hQNhPoTp3xc3X7yEcBlXy1ZmlA== dependencies: - "@react-stately/table" "^3.7.0" - "@react-stately/virtualizer" "^3.4.1" - "@react-types/grid" "^3.1.5" - "@react-types/shared" "^3.16.0" - "@react-types/table" "^3.4.0" + "@react-stately/table" "^3.8.0" + "@react-stately/virtualizer" "^3.5.0" + "@react-types/grid" "^3.1.6" + "@react-types/shared" "^3.17.0" + "@react-types/table" "^3.5.0" "@swc/helpers" "^0.4.14" -"@react-stately/list@^3.2.2", "@react-stately/list@^3.6.1": - version "3.6.1" - resolved "https://registry.yarnpkg.com/@react-stately/list/-/list-3.6.1.tgz#75d07a4e04111b804fb13c975df5a0c1265f3aa1" - integrity sha512-+/fVkK3UO+N2NoUGpe57k9gcnfIsyEgWP8SD6CXZUkJho7BTp6mwrH0Wm8tcOclT3uBk+fZaQrk8mR3uWsPZGw== +"@react-stately/list@^3.2.2", "@react-stately/list@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-stately/list/-/list-3.7.0.tgz#7484cc46d995a18b2b43de50449aba7faae76809" + integrity sha512-/BxCqXFjX9P+OJWjIYmUWaOGJ2hlZHUdymVwZPkIWdO9K7069LWckdYFXRqLFMwIGLUcXVfw4jR0BIQqWlR4eA== dependencies: - "@react-stately/collections" "^3.5.1" - "@react-stately/selection" "^3.11.2" - "@react-stately/utils" "^3.5.2" - "@react-types/shared" "^3.16.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/selection" "^3.12.0" + "@react-stately/utils" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/menu@^3.1.0", "@react-stately/menu@^3.4.4": - version "3.4.4" - resolved "https://registry.yarnpkg.com/@react-stately/menu/-/menu-3.4.4.tgz#222ffd283691f1c4137a85ff0484b98a4385b099" - integrity sha512-WKak1NSV9yDY0tDB4mzsbj0FboTtR06gekio0VmKb1+FmnrC07mef8eGKUn974F0WhTNUy5A1iI5eM0W2YNynA== +"@react-stately/menu@^3.1.0", "@react-stately/menu@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/menu/-/menu-3.5.0.tgz#04fda461dc3971bc84bf49436625b3e044bca3bc" + integrity sha512-JL6TcT+SbYdlxNLOS84SXp6njDNZuXfkt05o4rS51evmjM2+hlYaB9+yUMqrCb/J2nW7vVAg51TDAhLgmGTYKg== dependencies: - "@react-stately/overlays" "^3.4.4" - "@react-stately/utils" "^3.5.2" - "@react-types/menu" "^3.7.3" - "@react-types/shared" "^3.16.0" + "@react-stately/overlays" "^3.5.0" + "@react-stately/utils" "^3.6.0" + "@react-types/menu" "^3.8.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/overlays@^3.1.1", "@react-stately/overlays@^3.4.4": - version "3.4.4" - resolved "https://registry.yarnpkg.com/@react-stately/overlays/-/overlays-3.4.4.tgz#a228a230f46f0d593ffb7bc8f836439bbc08e9ed" - integrity sha512-IIlx+VXtXS4snDXrocUOls8QZ5XBQ4SNonaz1ox8/5W7Nsvq4VtdKsIaXsUP4agOudswaimlpj3pTDO/KuF5tQ== +"@react-stately/overlays@^3.1.1", "@react-stately/overlays@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/overlays/-/overlays-3.5.0.tgz#3c33a6f678f728497c94729e8a861ddf1e8704bb" + integrity sha512-r+U/G0Y4tCfI5wyBeIu+hmcZVRN8ChoK2zM1srPH9nDKsijQard2goX+9YmKng2LJ01Re/P6F8S8jYbpfEdLfQ== dependencies: - "@react-stately/utils" "^3.5.2" - "@react-types/overlays" "^3.6.5" + "@react-stately/utils" "^3.6.0" + "@react-types/overlays" "^3.7.0" "@swc/helpers" "^0.4.14" "@react-stately/radio@3.2.1": @@ -1813,38 +1811,38 @@ "@react-stately/utils" "^3.1.1" "@react-types/radio" "^3.1.1" -"@react-stately/radio@^3.2.1", "@react-stately/radio@^3.6.2": - version "3.6.2" - resolved "https://registry.yarnpkg.com/@react-stately/radio/-/radio-3.6.2.tgz#6a13e3f97d130fccc1b404673cbe1414ac018621" - integrity sha512-qjbebR0YSkdEocLsPSzNnCsUYllWY938/5Z8mETxk4+74PJLxC3z0qjqVRq+aDO8hOgIfqSgrRRp3cJz9vIsBg== +"@react-stately/radio@^3.2.1", "@react-stately/radio@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-stately/radio/-/radio-3.7.0.tgz#5312503f36677fd3a42f8fb7bc820463cf879b08" + integrity sha512-TKyR6RfX1qZRPAxVWIKMTt2s3J+IlxFZHykiEl85gHBmABSWW4JO4RjkgcmbaAGLAhu1pJU8ktJOyi+MyndpHA== dependencies: - "@react-stately/utils" "^3.5.2" - "@react-types/radio" "^3.3.1" - "@react-types/shared" "^3.16.0" + "@react-stately/utils" "^3.6.0" + "@react-types/radio" "^3.4.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/select@^3.1.0", "@react-stately/select@^3.3.4": - version "3.3.4" - resolved "https://registry.yarnpkg.com/@react-stately/select/-/select-3.3.4.tgz#61c3e739175e86babf0e585f8c68e30f3bf6363c" - integrity sha512-gD4JnF9/OIrQNdA4VqPIbifqpBC84BXHR5N7KmG7Ef06K9WGGVNB4FS538wno/znKg7lR6A45CPlaV53qfvWHg== - dependencies: - "@react-stately/collections" "^3.5.1" - "@react-stately/list" "^3.6.1" - "@react-stately/menu" "^3.4.4" - "@react-stately/selection" "^3.11.2" - "@react-stately/utils" "^3.5.2" - "@react-types/select" "^3.6.5" - "@react-types/shared" "^3.16.0" +"@react-stately/select@^3.1.0", "@react-stately/select@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-stately/select/-/select-3.4.0.tgz#e6df572279b5baed264552032f8060dbf49c9ebb" + integrity sha512-thSqD3apMCSgZgKtqHKGVIQRyvG8l0supIuzJicBwq6xg+J8X5muPCZgchCSNmU6im/l81XXE8LGuHGgMilORA== + dependencies: + "@react-stately/collections" "^3.6.0" + "@react-stately/list" "^3.7.0" + "@react-stately/menu" "^3.5.0" + "@react-stately/selection" "^3.12.0" + "@react-stately/utils" "^3.6.0" + "@react-types/select" "^3.7.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/selection@^3.11.2": - version "3.11.2" - resolved "https://registry.yarnpkg.com/@react-stately/selection/-/selection-3.11.2.tgz#15c35dfb386e5218b8106070137a8b3ecded5a8b" - integrity sha512-g21Y36xhYkXO3yzz0BYSBqnD38olvEwsJUqBXGZfx//bshMC2FNmI5sRYMAi36stxWbwzBvB01OytxfLLxCXCA== +"@react-stately/selection@^3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@react-stately/selection/-/selection-3.12.0.tgz#feb5ad753ea93870566f2c0b07f0387b690bd860" + integrity sha512-qgUaPwqtAl7YaZxxGdb55ZaVuMB1rG+Vr+9fgG8dPtDYCNaPeIlg7ndC4ylzDhCWIx8D5qZotcrqCA4+93TwdA== dependencies: - "@react-stately/collections" "^3.5.1" - "@react-stately/utils" "^3.5.2" - "@react-types/shared" "^3.16.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/utils" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" "@react-stately/slider@3.0.1": @@ -1858,29 +1856,29 @@ "@react-stately/utils" "^3.2.0" "@react-types/slider" "^3.0.1" -"@react-stately/slider@^3.0.1", "@react-stately/slider@^3.2.4": - version "3.2.4" - resolved "https://registry.yarnpkg.com/@react-stately/slider/-/slider-3.2.4.tgz#4e9e22cd8c2c449497e8476f2bc8d1399a5b0f80" - integrity sha512-J97lTLqQKsrVSovYr4dTz7IJO/+j9OStT78N6bumDklnIKT7bsH3g857zITUFjs8yCcq0Jt3sfOvEU0ts6vyww== - dependencies: - "@react-aria/i18n" "^3.6.3" - "@react-aria/utils" "^3.14.2" - "@react-stately/utils" "^3.5.2" - "@react-types/shared" "^3.16.0" - "@react-types/slider" "^3.3.1" +"@react-stately/slider@^3.0.1", "@react-stately/slider@^3.3.0": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@react-stately/slider/-/slider-3.3.0.tgz#abfd70be9b8fce5f19898d2dcad116a26dd88781" + integrity sha512-17aGJYHBRY3g4ZeiIgCNOvYl3HBARvSJhUKoNxZMRa2pqREW+WmBRRAXv5KTymW/KfcGb0RCq1ytYsderEgZAQ== + dependencies: + "@react-aria/i18n" "^3.7.0" + "@react-aria/utils" "^3.15.0" + "@react-stately/utils" "^3.6.0" + "@react-types/shared" "^3.17.0" + "@react-types/slider" "^3.4.0" "@swc/helpers" "^0.4.14" -"@react-stately/table@^3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@react-stately/table/-/table-3.7.0.tgz#fbb50081805c391d43de8ca4153bcd89edb82368" - integrity sha512-oPvMEabRUD4LSJ/NZsal3TT2YjoRmpEK8t2pqG20+Vapxy5tC6QKEZQvrDxJwF4Z8fqQnX/GvnqmfypvqWDUSA== - dependencies: - "@react-stately/collections" "^3.5.1" - "@react-stately/grid" "^3.4.2" - "@react-stately/selection" "^3.11.2" - "@react-types/grid" "^3.1.5" - "@react-types/shared" "^3.16.0" - "@react-types/table" "^3.4.0" +"@react-stately/table@^3.8.0": + version "3.8.0" + resolved "https://registry.yarnpkg.com/@react-stately/table/-/table-3.8.0.tgz#2728ee73ab7dd68f009a39252bf075aafbf8d130" + integrity sha512-WmOcW9+4zm6MQZxYEC77u5HMxTcvcotkFptohHd0YtHXx+z5iwClCVKKFG2mc5lE+K4iQE41Q56nVKLjAu+TsA== + dependencies: + "@react-stately/collections" "^3.6.0" + "@react-stately/grid" "^3.5.0" + "@react-stately/selection" "^3.12.0" + "@react-types/grid" "^3.1.6" + "@react-types/shared" "^3.17.0" + "@react-types/table" "^3.5.0" "@swc/helpers" "^0.4.14" "@react-stately/tabs@3.0.0-alpha.0": @@ -1913,56 +1911,56 @@ "@react-types/checkbox" "^3.2.1" "@react-types/shared" "^3.2.1" -"@react-stately/toggle@^3.2.1", "@react-stately/toggle@^3.2.3", "@react-stately/toggle@^3.4.4": - version "3.4.4" - resolved "https://registry.yarnpkg.com/@react-stately/toggle/-/toggle-3.4.4.tgz#b7825bf900725dcee0444fe6132b06948be36b44" - integrity sha512-OwVJpd2M7P7fekTWpl3TUdD3Brq+Z/xElOCJYP5QuVytXCa5seKsk40YPld8JQnA5dRKojpbUxMDOJpb6hOOfw== +"@react-stately/toggle@^3.2.1", "@react-stately/toggle@^3.2.3", "@react-stately/toggle@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/toggle/-/toggle-3.5.0.tgz#fee5a29d7699e43867c52981834af5393f47c1c4" + integrity sha512-vKwLLkFsiIve4pXIQC/dqLAz7Z+qtzJ8+D00EXXO1Nf8YHcyIMDkTmi3NTM8Qtvmt4xX2hbJFiPDF6WvF6mBIg== dependencies: - "@react-stately/utils" "^3.5.2" - "@react-types/checkbox" "^3.4.1" - "@react-types/shared" "^3.16.0" + "@react-stately/utils" "^3.6.0" + "@react-types/checkbox" "^3.4.2" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/tree@^3.4.1": - version "3.4.1" - resolved "https://registry.yarnpkg.com/@react-stately/tree/-/tree-3.4.1.tgz#bb267784000b22c7c1aa6415103ad1b9f3566677" - integrity sha512-kIXeJOHgGGaUFnAD2wyRIiOwOw/+PN1OXo46n8+dPTFIYwR4+IWFNG8OMjVlIiSLPYWMCzzxZBE9a5grmbmNWQ== +"@react-stately/tree@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/tree/-/tree-3.5.0.tgz#1d0dffd93c17b004953c27817be1ae2da9f96e5b" + integrity sha512-5+MzMQUFq3+lbGkZC0SlcIDrYmPvxBKuC8xL5W6SuFekbrrxrS6IJexRe4QulaaAliDpX2/9DVZTt38eVfyf0A== dependencies: - "@react-stately/collections" "^3.5.1" - "@react-stately/selection" "^3.11.2" - "@react-stately/utils" "^3.5.2" - "@react-types/shared" "^3.16.0" + "@react-stately/collections" "^3.6.0" + "@react-stately/selection" "^3.12.0" + "@react-stately/utils" "^3.6.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-stately/utils@^3.0.0-alpha.1", "@react-stately/utils@^3.1.1", "@react-stately/utils@^3.2.0", "@react-stately/utils@^3.2.2", "@react-stately/utils@^3.5.2": - version "3.5.2" - resolved "https://registry.yarnpkg.com/@react-stately/utils/-/utils-3.5.2.tgz#9b5f3bb9ad500bf9c5b636a42988dba60a221669" - integrity sha512-639gSKqamPHIEPaApb9ahVJS0HgAqNdVF3tQRoh+Ky6759Mbk6i3HqG4zk4IGQ1tVlYSYZvCckwehF7b2zndMg== +"@react-stately/utils@^3.0.0-alpha.1", "@react-stately/utils@^3.1.1", "@react-stately/utils@^3.2.0", "@react-stately/utils@^3.2.2", "@react-stately/utils@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@react-stately/utils/-/utils-3.6.0.tgz#f273e7fcb348254347d2e88c8f0c45571060c207" + integrity sha512-rptF7iUWDrquaYvBAS4QQhOBQyLBncDeHF03WnHXAxnuPJXNcr9cXJtjJPGCs036ZB8Q2hc9BGG5wNyMkF5v+Q== dependencies: "@swc/helpers" "^0.4.14" -"@react-stately/virtualizer@^3.4.1": - version "3.4.1" - resolved "https://registry.yarnpkg.com/@react-stately/virtualizer/-/virtualizer-3.4.1.tgz#00c7b36b989244cf985b9ad5fb13dc1ecbb81a0f" - integrity sha512-2S7GARkZl41X7fN0Xa94TkN8ELAUbA89zn1xH59d02NOvAKLAFXHkCe69AivvVvbhXo8/nONzO8NXqqgBS/XQw== +"@react-stately/virtualizer@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-stately/virtualizer/-/virtualizer-3.5.0.tgz#3aa2595757b4120339aadb2c43853137e3742fdc" + integrity sha512-Jjk7V2T9uJ2+1EaVY+v1SJYeKb9dvZKayP35bcUq8/y9+I41kNE+qmgnkr5/SVzkExu4YeZTFxtuOm4l8UX5jg== dependencies: - "@react-aria/utils" "^3.14.2" - "@react-types/shared" "^3.16.0" + "@react-aria/utils" "^3.15.0" + "@react-types/shared" "^3.17.0" "@swc/helpers" "^0.4.14" -"@react-types/button@^3.3.1", "@react-types/button@^3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@react-types/button/-/button-3.7.0.tgz#774c043d8090a505e60fdf26f026d5f0cc968f0f" - integrity sha512-81BQO3QxSgF9PTXsVozNdNCKxBOB1lpbCWocV99dN1ws9s8uaYw8pmJJZ0LJKLiOsIECQ/3QrhQjmWTDW/qTug== +"@react-types/button@^3.3.1", "@react-types/button@^3.7.1": + version "3.7.1" + resolved "https://registry.yarnpkg.com/@react-types/button/-/button-3.7.1.tgz#a51d2617a593d9862c72306b3bf0c4b5bff4793d" + integrity sha512-c+8xjmqWSjI5/mEHVLbVSp0eh/z2UU8Ga+wqjbEUZUjm8uopYj1PaCAwZ7YgcAebyQrL/21GyjK6tFHKzuUdJQ== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/checkbox@^3.2.1", "@react-types/checkbox@^3.2.3", "@react-types/checkbox@^3.4.1": - version "3.4.1" - resolved "https://registry.yarnpkg.com/@react-types/checkbox/-/checkbox-3.4.1.tgz#75a78b3f21f4cc72d2382761ba4c326aefd699db" - integrity sha512-kDMpy9SntjGQ7x00m5zmW8GENPouOtyiDgiEDKsPXUr2iYqHsNtricqVyG9S9+6hqpzuu8BzTcvZamc/xYjzlg== +"@react-types/checkbox@^3.2.1", "@react-types/checkbox@^3.2.3", "@react-types/checkbox@^3.4.2": + version "3.4.2" + resolved "https://registry.yarnpkg.com/@react-types/checkbox/-/checkbox-3.4.2.tgz#6089e9ef2d023415a5f871e312f30bae54143ba5" + integrity sha512-/NWFCEQLvVgo25afPt2jv4syxYvZeY/D/n2Y92IGtoNV4akdz4AuQ65+1X+JOhQc/ZbAblWw5fFWUZoQs3CLZg== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" "@react-types/combobox@3.0.0-alpha.1": version "3.0.0-alpha.1" @@ -1971,90 +1969,90 @@ dependencies: "@react-types/shared" "^3.4.0" -"@react-types/combobox@^3.5.5": - version "3.5.5" - resolved "https://registry.yarnpkg.com/@react-types/combobox/-/combobox-3.5.5.tgz#13410106fc2df8e3d02d53a33e9d2a6f3f2f6b61" - integrity sha512-gpDo/NTQFd5IfCZoNnG16N4/JfvwXpZBNc15Kn7bF+NcpSDhDpI26BZN4mvK4lljKCheD4VrEl9/3PtImCg7cA== +"@react-types/combobox@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@react-types/combobox/-/combobox-3.6.0.tgz#a78e3d0e73723053d49e15b6660883f755734c05" + integrity sha512-tfZtZ12Kf2bKt3EcFKWcUxrLNc61Y1CGynsOQ/KvHTFwlLTTtKnt/wWuf4kxdqlTK7dDqJzWRGWKlWx6eKlx3w== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/grid@^3.1.5": - version "3.1.5" - resolved "https://registry.yarnpkg.com/@react-types/grid/-/grid-3.1.5.tgz#b0efef48202b40aa05913f1fe5b05d80e7d26c15" - integrity sha512-KiEywsOJ+wdzLmJerAKEMADdvdItaLfhdo3bFfn1lgNUaKiNDJctDYWlhOYsRePf7MIrzoZuXEFnJj45jfpiOQ== +"@react-types/grid@^3.1.6": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@react-types/grid/-/grid-3.1.6.tgz#751828e3cfc6bde41e03c3217f0371166f206674" + integrity sha512-j6dO5KgkuIbIhEZYSxd86ZomohCyv3VNQhY2qBHlRoxZs0976komauEOjOpMOu0PxwsFGUgUFqlKOtc34f1SHQ== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/label@^3.7.1": - version "3.7.1" - resolved "https://registry.yarnpkg.com/@react-types/label/-/label-3.7.1.tgz#ad4d3d7a6b5ea6aca70f89661d7c358cf2ab5f94" - integrity sha512-wFpdtjSDBWO4xQQGF57V3PqvVVyE9TPj9ELWLs1yzL09fpXosycuEl5d79RywVlC9aF9dQYUfES09q/DZhRhMQ== +"@react-types/label@^3.7.2": + version "3.7.2" + resolved "https://registry.yarnpkg.com/@react-types/label/-/label-3.7.2.tgz#593bf1171098134cd5dbb6c66bf1063e552d67ea" + integrity sha512-UlsIvxQjBMl9WwJw1bYoJMwiPvYwRsSLl2yoeeGfGr6IaYn5T/2kzBhDLwe5cpKrmi4Mehn1rbReFLGITOy8+g== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/listbox@^3.1.1", "@react-types/listbox@^3.3.5": - version "3.3.5" - resolved "https://registry.yarnpkg.com/@react-types/listbox/-/listbox-3.3.5.tgz#c2222e3f50fbf377ed20b2d16e761b9c09d7adc8" - integrity sha512-7SMRJWUi7ayzQ7SUPCXXwgI/Ua3vg0PPQOZFsmJ4/E8VG/xK82IV7BYSZiNjUQuGpVZJL0VPndt/RwIrQO4S3w== +"@react-types/listbox@^3.1.1", "@react-types/listbox@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-types/listbox/-/listbox-3.4.0.tgz#b1fdad5acf8ffd524a9baf31015ff290414f35a0" + integrity sha512-OvHaX4EBRHxKrfFItdJXjY7dYomzejqJ87P5fTL1l1TbDX8gvEP014S3cI+VLQq+EsXeTZ8E/sx0tFUo7ilchA== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/menu@^3.7.3": - version "3.7.3" - resolved "https://registry.yarnpkg.com/@react-types/menu/-/menu-3.7.3.tgz#beb8d0fb7f1e50254e2e7661dfbfa4bb38826dad" - integrity sha512-3Pax24I/FyNKBjKyNR4ePD8eZs35Th57HzJAVjamQg2fHEDRomg9GQ7fdmfGj72Dv3x3JRCoPYqhJ3L5R3kbzg== +"@react-types/menu@^3.8.0": + version "3.8.0" + resolved "https://registry.yarnpkg.com/@react-types/menu/-/menu-3.8.0.tgz#578d4697caa838e72b2652a81f1241a9cb7815cc" + integrity sha512-1nwGUwKNHJf60vOsg7p48NPQIzMsSprxw8VXfStr8eE5uU4vvKfVNQNUgvpkRmHmel8BrYdh1WnERXJJ3yKUgQ== dependencies: - "@react-types/overlays" "^3.6.5" - "@react-types/shared" "^3.16.0" + "@react-types/overlays" "^3.7.0" + "@react-types/shared" "^3.17.0" -"@react-types/overlays@^3.4.0", "@react-types/overlays@^3.6.5": - version "3.6.5" - resolved "https://registry.yarnpkg.com/@react-types/overlays/-/overlays-3.6.5.tgz#466b325d9be51f67beb98b7bec3fd9295c72efac" - integrity sha512-IeWcF+YTucCYYHagNh8fZLH6R4YUONO1VHY57WJyIHwMy0qgEaKSQCwq72VO1fQJ0ySZgOgm31FniOyKkg6+eQ== +"@react-types/overlays@^3.4.0", "@react-types/overlays@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-types/overlays/-/overlays-3.7.0.tgz#22dcd1bbc1f8e17b0d7a757414c50ce580ae0d26" + integrity sha512-LstucncZ8dM+xJYEijI1V6jGH20w5XO/T60r7JTrgQElMC86phPeoWkMTN4c2lsRikybolDbvXL6XsF76YO56A== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/radio@^3.1.1", "@react-types/radio@^3.3.1": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@react-types/radio/-/radio-3.3.1.tgz#688570ba9901d21850a16c2aaafed5dd83e09966" - integrity sha512-q/x0kMvBsu6mH4bIkp/Jjrm9ff5y/p3UR0V4CmQFI7604gQd2Dt1dZMU/2HV9x70r1JfWRrDeRrVjUHVfFL5Vg== +"@react-types/radio@^3.1.1", "@react-types/radio@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-types/radio/-/radio-3.4.0.tgz#0bfc2bae6b5ac0b57636efdf8d2c90e5826e7c82" + integrity sha512-klgEU+987xVUCRqBoxXJiPJvy0upfo76dFnK5eF7U7BzcxhuiFeLDUcqUHtK92Cy5QOiDAF2ML0vUYGIabKMPA== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/select@^3.6.5": - version "3.6.5" - resolved "https://registry.yarnpkg.com/@react-types/select/-/select-3.6.5.tgz#798abf0073b39eef041952198a9e84eff0ce9edc" - integrity sha512-FDeSA7TYMNnhsbXREnD4dWRSu21T5M4BLy+J/5VgwDpr3IN9pzbvngK8a3jc8Yg2S3igKYLMLYfmcsx+yk7ohA== +"@react-types/select@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-types/select/-/select-3.7.0.tgz#7d1840525d345625ac6ad69005b192930ca5abec" + integrity sha512-BaynMuW0dQ9ModFzW291+3n1D9bwKSFh03g3+1PvhRcBg1EXq1vFyfFBj4uuBymI0T7oCbnjGh19xo0vKIYRrA== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/shared@^3.16.0", "@react-types/shared@^3.2.1", "@react-types/shared@^3.4.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@react-types/shared/-/shared-3.16.0.tgz#cab7bf0376969d1773480ecb2d6da5aa91391db5" - integrity sha512-IQgU4oAEvMwylEvaTsr2XB1G/mAoMe1JFYLD6G78v++oAR9l8o9MQxZ0YSeANDkqTamb2gKezGoT1RxvSKjVxw== +"@react-types/shared@^3.17.0", "@react-types/shared@^3.2.1", "@react-types/shared@^3.4.0": + version "3.17.0" + resolved "https://registry.yarnpkg.com/@react-types/shared/-/shared-3.17.0.tgz#b7c5e318664aadb315d305a27dd2a209d1837d95" + integrity sha512-1SNZ/RhVrrQ1e6yE0bPV7d5Sfp+Uv0dfUEhwF9MAu2v5msu7AMewnsiojKNA0QA6Ing1gpDLjHCxtayQfuxqcg== -"@react-types/slider@^3.0.1", "@react-types/slider@^3.3.1": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@react-types/slider/-/slider-3.3.1.tgz#0e6a8d0767b1ab94f8c32541d50aaa6d93683df4" - integrity sha512-CbEa1v1IcUJD7VrFhWyOOlT7VyQ5DHEf/pNMkvICOBLMAwnWxS+tnTiRFgA/EbvV/vp24ydeszHYtMvsyRONRw== +"@react-types/slider@^3.0.1", "@react-types/slider@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@react-types/slider/-/slider-3.4.0.tgz#3a6e68a0cbe6a9741395eeebb83ca15fbf0893bd" + integrity sha512-Kj+B6njpm4ltiu3gCBOPRnbzllV21IVr0bCQdNnWcf5DX8aN4VdI8EFkTz0DSwMm2WPCwZop0MDWDoRwXJK1ng== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" -"@react-types/switch@^3.2.5": - version "3.2.5" - resolved "https://registry.yarnpkg.com/@react-types/switch/-/switch-3.2.5.tgz#e1db722e8beeed846cfcf9de94cad81b4e0ead78" - integrity sha512-DlUL0Bz79SUTRje/i8m6qn4Ipn+q8QnyIkyJhkoHeH1R0YNude8xZrBPWbj3zfdddAGDFSF1NzP69q0xmNAcTQ== +"@react-types/switch@^3.3.0": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@react-types/switch/-/switch-3.3.0.tgz#80172b8960e36ac1b3c19c69a479af407cffc306" + integrity sha512-6h+s//PwWf7/WJQOZKT6k1vdOQCcvPmMZW333AqyxtZX8WV8Q0illgcLMYo5qxT3IWsjYNuPIqMCY+tRbSeA2Q== dependencies: - "@react-types/checkbox" "^3.4.1" - "@react-types/shared" "^3.16.0" + "@react-types/checkbox" "^3.4.2" + "@react-types/shared" "^3.17.0" -"@react-types/table@^3.4.0": - version "3.4.0" - resolved "https://registry.yarnpkg.com/@react-types/table/-/table-3.4.0.tgz#64715f6c355b880467f67b1e5288e6c28d6092e8" - integrity sha512-G2L5WtaBMeG3v/5Kj/ZXH4ywz95vyPUBj7qy9UZJOYNaAR7uJWZkbe+Ka4xD4H/AaOk4mqW8dSo8cj7gtD66GQ== +"@react-types/table@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@react-types/table/-/table-3.5.0.tgz#25f5576c56e1678367fe687e3a66f9a74b9ff472" + integrity sha512-/Mvn1MQbdnk7i6ivam8kdIh2PKF9GD3A7KC8v1E4JNAgsbOzOkt5JC4PMc1EtAK2eppMEKTN+B84oHKMl1F8Hg== dependencies: - "@react-types/grid" "^3.1.5" - "@react-types/shared" "^3.16.0" + "@react-types/grid" "^3.1.6" + "@react-types/shared" "^3.17.0" "@react-types/tabs@3.0.0-alpha.2": version "3.0.0-alpha.2" @@ -2063,12 +2061,12 @@ dependencies: "@react-types/shared" "^3.2.1" -"@react-types/textfield@^3.6.2": - version "3.6.2" - resolved "https://registry.yarnpkg.com/@react-types/textfield/-/textfield-3.6.2.tgz#6cc87c2bac286a06ba04b9465d23fa9078bf280e" - integrity sha512-QhFcpXvmSEW1/PwkWkvHJkcjsVezLW0OAvA0kMt/FMOChQNxnO36Pha+WjfcVbiFHXMhCBl6akbY2xG9NsHJrQ== +"@react-types/textfield@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@react-types/textfield/-/textfield-3.7.0.tgz#c8e118be03e82a87d2612937accaae903090cdb1" + integrity sha512-4Rqld8VZG324hecw6bqGY2gta1gm5sDhO48nyChfdmjVlFHXLDKazAcrgP76uSmUI6tffUPj3eYxQyTp5uLhyQ== dependencies: - "@react-types/shared" "^3.16.0" + "@react-types/shared" "^3.17.0" "@sideway/address@^4.1.3": version "4.1.4" @@ -2077,10 +2075,10 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@sideway/formula@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" - integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== +"@sideway/formula@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" + integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg== "@sideway/pinpoint@^2.0.0": version "2.0.0" @@ -2088,9 +2086,9 @@ integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== "@sinonjs/commons@^1.7.0": - version "1.8.3" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" - integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== + version "1.8.6" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== dependencies: type-detect "4.0.8" @@ -2114,12 +2112,12 @@ integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.19" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" - integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== + version "7.20.0" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" + integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" "@types/babel__generator" "*" "@types/babel__template" "*" "@types/babel__traverse" "*" @@ -2140,16 +2138,16 @@ "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.18.1" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.1.tgz#ce5e2c8c272b99b7a9fd69fa39f0b4cd85028bd9" - integrity sha512-FSdLaZh2UxaMuLp9lixWaHq/golWTRWOnRsAXzDTDSDOQLuZb1nsdCt6pJSPWSEQt2eFZ2YVk3oYhn+1kLMeMA== + version "7.18.3" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" + integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== dependencies: "@babel/types" "^7.3.0" "@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + version "4.1.6" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" + integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== dependencies: "@types/node" "*" @@ -2173,14 +2171,14 @@ "@types/istanbul-lib-report" "*" "@types/node@*": - version "18.7.15" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.15.tgz#20ae1ec80c57ee844b469f968a1cd511d4088b29" - integrity sha512-XnjpaI8Bgc3eBag2Aw4t2Uj/49lLBSStHWfqKvIuXD7FIrZyMLWp8KuAFHAqxMZYTF9l08N1ctUn9YNybZJVmQ== + version "18.15.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.5.tgz#3af577099a99c61479149b716183e70b5239324a" + integrity sha512-Ark2WDjjZO7GmvsyFFf81MXuGTA/d6oP38anyxWOL6EREyBKAxKoFHwBhaZxCfLRLpO8JgVXwqOwSwa7jRcjew== "@types/prettier@^2.1.5": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.0.tgz#ea03e9f0376a4446f44797ca19d9c46c36e352dc" - integrity sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A== + version "2.7.2" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" + integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== "@types/prop-types@*": version "15.7.5" @@ -2196,16 +2194,16 @@ "@types/react-native" "^0.70" "@types/react-native@^0.70": - version "0.70.9" - resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.70.9.tgz#7d9d11960a4ab78c874e77af895f83d2817aac96" - integrity sha512-0C6sIo13ztzM2llaWdTq0Vpscx3VdU0T8F45kEurWv3l5n+BHm/Mkr8Z+N29eXDYGhTvCz5y2jegB8JyiVa5kw== + version "0.70.12" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.70.12.tgz#48030950e3a00ba46844b78249b0eeb13cb86d91" + integrity sha512-pDGw5THszoFVCO7KdVKV9zltjY9VUwQTavEGQyUbLKhHxoWuOV56Ts8AxGAvWyflujWqfp1lBpwvpjcmjbM7wQ== dependencies: "@types/react" "*" "@types/react@*": - version "18.0.26" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.26.tgz#8ad59fc01fef8eaf5c74f4ea392621749f0b7917" - integrity sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug== + version "18.0.28" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.28.tgz#accaeb8b86f4908057ad629a26635fe641480065" + integrity sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -2227,16 +2225,16 @@ integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^15.0.0": - version "15.0.14" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" - integrity sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ== + version "15.0.15" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.15.tgz#e609a2b1ef9e05d90489c2f5f45bbfb2be092158" + integrity sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg== dependencies: "@types/yargs-parser" "*" "@types/yargs@^16.0.0": - version "16.0.4" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" - integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== + version "16.0.5" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" + integrity sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ== dependencies: "@types/yargs-parser" "*" @@ -2284,9 +2282,9 @@ acorn@^7.1.1: integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== acorn@^8.2.4: - version "8.8.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" - integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== agent-base@6: version "6.0.2" @@ -2296,9 +2294,9 @@ agent-base@6: debug "4" ajv@^8.6.3: - version "8.11.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" - integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg== + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -2364,9 +2362,9 @@ anymatch@^2.0.0: normalize-path "^2.1.1" anymatch@^3.0.3: - version "3.1.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" - integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" picomatch "^2.0.4" @@ -2466,13 +2464,6 @@ babel-jest@^27.2.5, babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" @@ -2494,29 +2485,29 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" -babel-plugin-polyfill-corejs2@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz#e4c31d4c89b56f3cf85b92558954c66b54bd972d" - integrity sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q== +babel-plugin-polyfill-corejs2@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz#5d1bd3836d0a19e1b84bbf2d9640ccb6f951c122" + integrity sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q== dependencies: "@babel/compat-data" "^7.17.7" - "@babel/helper-define-polyfill-provider" "^0.3.2" + "@babel/helper-define-polyfill-provider" "^0.3.3" semver "^6.1.1" -babel-plugin-polyfill-corejs3@^0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz#d7e09c9a899079d71a8b670c6181af56ec19c5c7" - integrity sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw== +babel-plugin-polyfill-corejs3@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz#56ad88237137eade485a71b52f72dbed57c6230a" + integrity sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.2" - core-js-compat "^3.21.0" + "@babel/helper-define-polyfill-provider" "^0.3.3" + core-js-compat "^3.25.1" -babel-plugin-polyfill-regenerator@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.0.tgz#8f51809b6d5883e07e71548d75966ff7635527fe" - integrity sha512-RW1cnryiADFeHmfLS+WW/G431p1PsW5qdRdz0SDRi7TKcUgc7Oh/uXkT7MZ/+tGsT1BkczEAmD5XjUyJ5SWDTw== +babel-plugin-polyfill-regenerator@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz#390f91c38d90473592ed43351e801a9d3e0fd747" + integrity sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.2" + "@babel/helper-define-polyfill-provider" "^0.3.3" babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: version "7.0.0-beta.0" @@ -2670,15 +2661,15 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.20.2, browserslist@^4.21.3: - version "4.21.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.3.tgz#5df277694eb3c48bc5c4b05af3e8b7e09c5a6d1a" - integrity sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ== +browserslist@^4.21.3, browserslist@^4.21.5: + version "4.21.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== dependencies: - caniuse-lite "^1.0.30001370" - electron-to-chromium "^1.4.202" - node-releases "^2.0.6" - update-browserslist-db "^1.0.5" + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" bs-logger@0.x: version "0.2.6" @@ -2737,14 +2728,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -2779,10 +2762,10 @@ camelcase@^6.0.0, camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001370: - version "1.0.30001390" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001390.tgz#158a43011e7068ef7fc73590e9fd91a7cece5e7f" - integrity sha512-sS4CaUM+/+vqQUlCvCJ2WtDlV81aWtHhqeEVkLokVJJa3ViN4zDxAGfq9R8i1m90uGHxo99cy10Od+lvn3hf0g== +caniuse-lite@^1.0.30001449: + version "1.0.30001469" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001469.tgz#3dd505430c8522fdc9f94b4a19518e330f5c945a" + integrity sha512-Rcp7221ScNqQPP3W+lVOYDyjdR6dC+neEQCttoNr5bAyz54AboB4iwpnWgyi8P4YUsPybVzT4LgWiBbI3drL4g== capture-exit@^2.0.0: version "2.0.0" @@ -2828,9 +2811,9 @@ ci-info@^2.0.0: integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.2.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.2.tgz#6d2967ffa407466481c6c90b6e16b3098f080128" - integrity sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg== + version "3.8.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" + integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== cjs-module-lexer@^1.0.0: version "1.2.2" @@ -3032,24 +3015,21 @@ connect@^3.6.5: utils-merge "1.0.1" convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== -core-js-compat@^3.21.0: - version "3.25.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.25.0.tgz#489affbfbf9cb3fa56192fe2dd9ebaee985a66c5" - integrity sha512-extKQM0g8/3GjFx9US12FAgx8KJawB7RCQ5y8ipYLbmfzEzmFRWdDjIlxDx82g7ygcNG85qMVUSRyABouELdow== +core-js-compat@^3.25.1: + version "3.29.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.29.1.tgz#15c0fb812ea27c973c18d425099afa50b934b41b" + integrity sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA== dependencies: - browserslist "^4.21.3" - semver "7.0.0" + browserslist "^4.21.5" core-util-is@~1.0.0: version "1.0.3" @@ -3156,9 +3136,9 @@ data-urls@^2.0.0: whatwg-url "^8.0.0" dayjs@^1.8.15: - version "1.11.5" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.5.tgz#00e8cc627f231f9499c19b38af49f56dc0ac5e93" - integrity sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA== + version "1.11.7" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" + integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ== debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" @@ -3185,14 +3165,14 @@ decamelize@^4.0.0: integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== decimal.js@^10.2.1: - version "10.4.0" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.0.tgz#97a7448873b01e92e5ff9117d89a7bca8e63e0fe" - integrity sha512-Nv6ENEzyPQ6AItkGwLE2PGKinZZ9g59vSh2BeH6NqPu0OTKZ5ruJsVqh/orbAnqXc9pBbgXAIrc2EyaCj8NpGg== + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== +decode-uri-component@^0.2.0, decode-uri-component@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== dedent@^0.7.0: version "0.7.0" @@ -3210,25 +3190,17 @@ deepmerge@^3.2.0: integrity sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA== deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== + 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.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA== + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: clone "^1.0.2" -define-properties@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" - integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== - dependencies: - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - define-property@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" @@ -3277,9 +3249,9 @@ detect-newline@^3.0.0: integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== detox@^19.8.4: - version "19.12.0" - resolved "https://registry.yarnpkg.com/detox/-/detox-19.12.0.tgz#6f95c3ff949be756e5eb27e2155c6b9f6c4799c4" - integrity sha512-mPw9RWczDtjI5gx4wTpITFfi/StfwnTyRHx4YC0qpguPe5FMb7cemJ7Jy5MFzg+AsxPDl8+iVS4SHIJ/y81Krg== + version "19.13.0" + resolved "https://registry.yarnpkg.com/detox/-/detox-19.13.0.tgz#6eae8b4e5ef5ca913d465ddc5bd7855fe8834c5c" + integrity sha512-tKg0m5wlb4r1MISFtqPFXwdLncXWQhWaoAV6nuC3MmBGcJnTSrSa7wNZG26HhfEeR8c6eRUqMFHKefiZnWoO1Q== dependencies: ajv "^8.6.3" bunyan "^1.8.12" @@ -3366,10 +3338,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.4.202: - version "1.4.243" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.243.tgz#9d5f1b10eafd6e434b687a88f1e7b0441dee168a" - integrity sha512-BgLD2gBX43OSXwlT01oYRRD5NIB4n3okTRxkzEAC6G0SZG4TTlyrWMjbOo0fajCwqwpRtMHXQNMjtRN6qpNtfw== +electron-to-chromium@^1.4.284: + version "1.4.334" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.334.tgz#eacdcb1145534202d569610c5915b63a3fec0eb9" + integrity sha512-laZ1odk+TRen6q0GeyQx/JEkpD3iSZT7ewopCpKqg9bTjP1l8XRfU3Bg20CFjNPZkp5+NDBl3iqd4o/kPO+Vew== emittery@^0.8.1: version "0.8.1" @@ -3605,9 +3577,9 @@ fast-loops@^1.1.3: integrity sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g== fb-watchman@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" - integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" @@ -3676,9 +3648,9 @@ flat@^5.0.2: integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flow-parser@0.*: - version "0.186.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.186.0.tgz#ef6f4c7a3d8eb29fdd96e1d1f651b7ccb210f8e9" - integrity sha512-QaPJczRxNc/yvp3pawws439VZ/vHGq+i1/mZ3bEdSaRy8scPgZgiWklSB6jN7y5NR9sfgL4GGIiBcMXTj3Opqg== + version "0.202.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.202.0.tgz#534178266d3ceec5368415e59990db97eece5bd0" + integrity sha512-ZiXxSIXK3zPmY3zrzCofFonM2T+/3Jz5QZKJyPVtUERQEJUnYkXBQ+0H3FzyqiyJs+VXqb/UNU6/K6sziVYdxw== flow-parser@^0.121.0: version "0.121.0" @@ -3768,15 +3740,6 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" - integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.3" - get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -3828,9 +3791,9 @@ globals@^11.1.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9, 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== has-flag@^3.0.0: version "3.0.0" @@ -3842,18 +3805,6 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== - has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -4018,18 +3969,18 @@ inline-style-prefixer@^6.0.1: css-in-js-utils "^3.1.0" fast-loops "^1.1.3" -"instabug-reactnative@link:..": +"instabug-reactnative@link:../..": version "0.0.0" uid "" intl-messageformat@^10.1.0: - version "10.3.0" - resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.3.0.tgz#6a3a30882bf94dfa7014cc642c66abdafd942c0e" - integrity sha512-FKeBZKH9T2Ue4RUXCuwY/hEaRHU8cgICevlGKog0qSBuz/amtRKNBLetBLmRxiHeEkF7JBBckC+56GIwshlRwA== + version "10.3.3" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.3.3.tgz#576798d31c9f8d90f9beadaa5a3878b8d30177a2" + integrity sha512-un/f07/g2e/3Q8e1ghDKET+el22Bi49M7O/rHxd597R+oLpPOMykSv5s51cABVfu3FZW+fea4hrzf2MHu1W4hw== dependencies: "@formatjs/ecma402-abstract" "1.14.3" - "@formatjs/fast-memoize" "1.2.8" - "@formatjs/icu-messageformat-parser" "2.2.0" + "@formatjs/fast-memoize" "2.0.1" + "@formatjs/icu-messageformat-parser" "2.3.0" tslib "^2.4.0" invariant@^2.2.4: @@ -4081,9 +4032,9 @@ is-ci@^2.0.0: ci-info "^2.0.0" is-core-module@^2.9.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" - integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== + 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== dependencies: has "^1.0.3" @@ -4233,9 +4184,9 @@ istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f" - integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A== + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" @@ -4520,9 +4471,9 @@ jest-mock@^27.5.1: "@types/node" "*" jest-pnp-resolver@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" - integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== jest-regex-util@^26.0.0: version "26.0.0" @@ -4752,14 +4703,14 @@ jetifier@^1.6.2: integrity sha512-3Zi16h6L5tXDRQJTb221cnRoVG9/9OvreLdLU2/ZjRv/GILL+2Cemt0IKvkowwkDpvouAU1DQPOJ7qaiHeIdrw== joi@^17.2.1: - version "17.6.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" - integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== + version "17.9.1" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.9.1.tgz#74899b9fa3646904afa984a11df648eca66c9018" + integrity sha512-FariIi9j6QODKATGBrEX7HZcja8Bsh3rfdGYy/Sb65sGlZWK/QWesU1ghk7aJWDj95knjXlQfSmzFSPPkLVsfw== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" "@sideway/address" "^4.1.3" - "@sideway/formula" "^3.0.0" + "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: @@ -4863,16 +4814,11 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -json5@2.x: +json5@2.x, json5@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== - jsonfile@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" @@ -5026,6 +4972,11 @@ lodash.throttle@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" integrity sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ== +lodash.uniqueid@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.uniqueid/-/lodash.uniqueid-4.0.1.tgz#3268f26a7c88e4f4b1758d679271814e31fa5b26" + integrity sha512-GQQWaIeGlL6DIIr06kj1j6sSmBxyNMwI8kaX9aKpHR/XsMTiaXDVPNPAkiboOTK9OJpTJF/dXT3xYoFQnj386Q== + lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" @@ -5062,6 +5013,13 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -5451,9 +5409,9 @@ mimic-fn@^2.1.0: brace-expansion "^1.1.7" minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" - integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== mixin-deep@^1.2.0: version "1.3.2" @@ -5500,9 +5458,9 @@ mv@~2: rimraf "~2.4.0" nan@^2.14.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916" - integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA== + version "2.17.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" + integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== nanoid@^3.1.23: version "3.3.4" @@ -5527,18 +5485,18 @@ nanomatch@^1.2.9: to-regex "^3.0.1" native-base@^3.4.25: - version "3.4.25" - resolved "https://registry.yarnpkg.com/native-base/-/native-base-3.4.25.tgz#0b5871855be4c48ef72768e50db002d6a0e1ad23" - integrity sha512-MOeqNji6eAXge9uWsKgfyna8kakdoQuynxoDlVgzTrXXT0o/UrmIUAz+xNPM7rjYHd0MM+UdohPilV1/Z5pB9Q== + version "3.4.28" + resolved "https://registry.yarnpkg.com/native-base/-/native-base-3.4.28.tgz#81b174c8fab1a38fc4560abc12b63dc836c6a14a" + integrity sha512-EDg9UFDNmfYXPInpRbxce+4oWFEIGaM7aG6ey4hVllcvMC3PkgCvkiXEB+7EemgC7Qr8CuFjgMTx7P0vvnwZeQ== dependencies: "@react-aria/visually-hidden" "^3.2.1" "@react-native-aria/button" "^0.2.4" - "@react-native-aria/checkbox" "^0.2.2" + "@react-native-aria/checkbox" "^0.2.3" "@react-native-aria/combobox" "^0.2.4-alpha.0" "@react-native-aria/focus" "^0.2.6" "@react-native-aria/interactions" "^0.2.2" "@react-native-aria/listbox" "^0.2.4-alpha.3" - "@react-native-aria/overlays" "0.3.3-rc.0" + "@react-native-aria/overlays" "^0.3.3" "@react-native-aria/radio" "^0.2.4" "@react-native-aria/slider" "^0.2.5-alpha.1" "@react-native-aria/tabs" "^0.2.7" @@ -5562,9 +5520,10 @@ native-base@^3.4.25: lodash.omit "^4.5.0" lodash.omitby "^4.6.0" lodash.pick "^4.4.0" + lodash.uniqueid "^4.0.1" stable-hash "^0.0.2" tinycolor2 "^1.4.2" - use-subscription "^1.8.0" + use-sync-external-store "^1.2.0" natural-compare@^1.4.0: version "1.4.0" @@ -5604,9 +5563,9 @@ node-dir@^0.1.17: minimatch "^3.0.2" node-fetch@^2.2.0, node-fetch@^2.6.0: - version "2.6.7" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" - integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + version "2.6.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" + integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== dependencies: whatwg-url "^5.0.0" @@ -5615,10 +5574,10 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503" - integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== +node-releases@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== node-stream-zip@^1.9.1: version "1.15.0" @@ -5692,11 +5651,6 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" @@ -5704,16 +5658,6 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.1.0: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - has-symbols "^1.0.3" - object-keys "^1.1.1" - object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" @@ -5978,9 +5922,9 @@ promise-polyfill@^6.0.1: integrity sha512-g0LWaH0gFsxovsU7R5LrrhHhWAWiHRnh1GPrhXnPgYsDkIqjRYUYSZEsej/wtleDrz5xVSIDbeKfidztp2XHFQ== promise@^8.0.3: - version "8.2.0" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.2.0.tgz#a1f6280ab67457fbfc8aad2b198c9497e9e5c806" - integrity sha512-+CMAlLHqwRYwBMXKCP+o8ns7DN+xHDUiI+0nArsiJ9y+kJVPLFxEaSw6Ha9s9H0tftxg2Yzl25wqj9G7m5wLZg== + version "8.3.0" + resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" + integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg== dependencies: asap "~2.0.6" @@ -6029,16 +5973,16 @@ pump@^3.0.0: once "^1.3.1" punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== -query-string@^7.0.0: - version "7.1.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.1.tgz#754620669db978625a90f635f12617c271a088e1" - integrity sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w== +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.0" + decode-uri-component "^0.2.2" filter-obj "^1.1.0" split-on-first "^1.0.0" strict-uri-encode "^2.0.0" @@ -6054,9 +5998,9 @@ range-parser@~1.2.1: integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== react-devtools-core@^4.13.0: - version "4.25.0" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.25.0.tgz#78b11a2c9f81dd9ebff3745ab4ee2147cc96c12a" - integrity sha512-iewRrnu0ZnmfL+jJayKphXj04CFh6i3ezVnpCtcnZbTPSQgN09XqHAzXbKbqNDl7aTg9QLNkQRP6M3DvdrinWA== + 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== dependencies: shell-quote "^1.6.1" ws "^7" @@ -6096,9 +6040,9 @@ react-native-safe-area-context@^3.3.2: integrity sha512-xfpVd0CiZR7oBhuwJ2HcZMehg5bjha1Ohu1XHpcT+9ykula0TgovH2BNU0R5Krzf/jBR1LMjR6VabxdlUjqxcA== react-native-screens@^3.8.0: - version "3.17.0" - resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.17.0.tgz#b099b3ec9d46de07c857f14d713c293024c7c842" - integrity sha512-OZCQU7+3neHNaM19jBkYRjL50kXz7p7MUgWQTCcdRoshcCiolf8aXs4eRVQKGK6m1RmoB8UL0//m5R9KoR+41w== + version "3.20.0" + resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.20.0.tgz#4d154177395e5541387d9a05bc2e12e54d2fb5b1" + integrity sha512-joWUKWAVHxymP3mL9gYApFHAsbd9L6ZcmpoZa6Sl3W/82bvvNVMqcfP7MeNqVCg73qZ8yL4fW+J/syusHleUgg== dependencies: react-freeze "^1.0.0" warn-once "^0.1.0" @@ -6188,9 +6132,9 @@ react@17.0.2: object-assign "^4.1.1" readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -6215,10 +6159,10 @@ recast@^0.20.3: source-map "~0.6.1" tslib "^2.0.1" -regenerate-unicode-properties@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56" - integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw== +regenerate-unicode-properties@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" + integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== dependencies: regenerate "^1.4.2" @@ -6227,20 +6171,15 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.13.11: +regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.2: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== -regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.4: - version "0.13.9" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" - integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== - -regenerator-transform@^0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.0.tgz#cbd9ead5d77fae1a48d957cf889ad0586adb6537" - integrity sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg== +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" @@ -6252,27 +6191,22 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexpu-core@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.1.0.tgz#2f8504c3fd0ebe11215783a41541e21c79942c6d" - integrity sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA== +regexpu-core@^5.3.1: + 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" - regenerate-unicode-properties "^10.0.1" - regjsgen "^0.6.0" - regjsparser "^0.8.2" + regenerate-unicode-properties "^10.1.0" + regjsparser "^0.9.1" unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.0.0" - -regjsgen@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d" - integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA== + unicode-match-property-value-ecmascript "^2.1.0" -regjsparser@^0.8.2: - version "0.8.4" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f" - integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA== +regjsparser@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" + integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== dependencies: jsesc "~0.5.0" @@ -6334,9 +6268,9 @@ resolve-url@^0.2.1: integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve.exports@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" - integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== + version "1.1.1" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" + integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== resolve@^1.14.2, resolve@^1.20.0: version "1.22.1" @@ -6467,12 +6401,7 @@ scheduler@^0.20.2: loose-envify "^1.1.0" object-assign "^4.1.1" -semver@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== - -semver@7.x: +semver@7.x, semver@^7.0.0, semver@^7.3.2: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== @@ -6489,13 +6418,6 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.0.0, semver@^7.3.2: - version "7.3.7" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" - integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== - dependencies: - lru-cache "^6.0.0" - send@0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" @@ -6589,9 +6511,9 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shell-quote@^1.6.1, shell-quote@^1.7.2, shell-quote@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" - integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== + 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== signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.7" @@ -6725,9 +6647,9 @@ stable-hash@^0.0.2: integrity sha512-tPwQ3c1rLIwbJpq59duoznegEbmgfV630C2n4R4G96LKBFljgK8j+O9AxjqB6cAzu4gE7s4pByrLWtZel8E+Mg== stack-utils@^2.0.3: - version "2.0.5" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" - integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" @@ -6874,9 +6796,9 @@ symbol-tree@^3.2.4: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== tail@^2.0.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/tail/-/tail-2.2.4.tgz#90dd4c5a174a3fa39dcb65a1df1950a4a0093a41" - integrity sha512-PX8klSxW1u3SdgDrDeewh5GNE+hkJ4h02JvHfV6YrHqWOVJ88nUdSQqtsUf/gWhgZlPAws3fiZ+F1f8euspcuQ== + version "2.2.6" + resolved "https://registry.yarnpkg.com/tail/-/tail-2.2.6.tgz#24abd701963639b896c42496d5f416216ec0b558" + integrity sha512-IQ6G4wK/t8VBauYiGPLx+d3fA5XjSVagjWV5SIYzvEvglbQjwEcukeYI68JOPpdydjxhZ9sIgzRlSmwSpphHyw== telnet-client@1.2.8: version "1.2.8" @@ -6936,9 +6858,9 @@ throat@^5.0.0: integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== throat@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" - integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== + version "6.0.2" + resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" + integrity sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ== through2@^2.0.1: version "2.0.5" @@ -6949,9 +6871,9 @@ through2@^2.0.1: xtend "~4.0.1" tinycolor2@^1.4.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.5.2.tgz#7d30b4584d8b7d62b9a94dacc505614a6516a95f" - integrity sha512-h80m9GPFGbcLzZByXlNSEhp1gf8Dy+VX/2JCGUZsWLo7lV1mnE/XlxGYgRBoMLJh1lIDXP0EMC4RPTjlRaV+Bg== + version "1.6.0" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.6.0.tgz#f98007460169b0263b97072c5ae92484ce02d09e" + integrity sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw== tmpl@1.0.5: version "1.0.5" @@ -7043,12 +6965,7 @@ ts-jest@^27.0.0: semver "7.x" yargs-parser "20.x" -tslib@^2.0.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" - integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== - -tslib@^2.4.0: +tslib@^2.0.1, tslib@^2.4.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== @@ -7088,9 +7005,9 @@ typedarray-to-buffer@^3.1.5: is-typedarray "^1.0.0" typescript@^4.9.4: - version "4.9.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78" - integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg== + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== uglify-es@^3.1.9: version "3.3.9" @@ -7118,15 +7035,15 @@ unicode-match-property-ecmascript@^2.0.0: unicode-canonical-property-names-ecmascript "^2.0.0" unicode-property-aliases-ecmascript "^2.0.0" -unicode-match-property-value-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" - integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== +unicode-match-property-value-ecmascript@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== unicode-property-aliases-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" - integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" + integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== union-value@^1.0.0: version "1.0.1" @@ -7161,10 +7078,10 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -update-browserslist-db@^1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.7.tgz#16279639cff1d0f800b14792de43d97df2d11b7d" - integrity sha512-iN/XYesmZ2RmmWAiI4Z5rq0YqSiv0brj9Ce9CfhNE4xIW2h+MFxcgkxIzZ+ShkFPUkjU3gQ+3oypadD3RAMtrg== +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== dependencies: escalade "^3.1.1" picocolors "^1.0.0" @@ -7194,7 +7111,7 @@ use-latest-callback@^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== -use-subscription@^1.0.0, use-subscription@^1.8.0: +use-subscription@^1.0.0: version "1.8.0" resolved "https://registry.yarnpkg.com/use-subscription/-/use-subscription-1.8.0.tgz#f118938c29d263c2bce12fc5585d3fe694d4dbce" integrity sha512-LISuG0/TmmoDoCRmV5XAqYkd3UCBNM0ML3gGBndze65WITcsExCD3DTvXXTLyNcOC0heFQZzluW88bN/oC1DQQ== @@ -7442,9 +7359,9 @@ xmlchars@^2.2.0: integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== xmldoc@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.2.0.tgz#7554371bfd8c138287cff01841ae4566d26e5541" - integrity sha512-2eN8QhjBsMW2uVj7JHLHkMytpvGHLHxKXBy4J3fAT/HujsEtM6yU84iGjpESYGHg6XwK0Vu4l+KgqQ2dv2cCqg== + version "1.3.0" + resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.3.0.tgz#7823225b096c74036347c9ec5924d06b6a3cebab" + integrity sha512-y7IRWW6PvEnYQZNZFMRLNJw+p3pezM4nKYPfr15g4OOW9i8VpeydycFuipE2297OvZnh3jSb2pxOt9QpkZUVng== dependencies: sax "^1.2.4" @@ -7468,6 +7385,11 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" diff --git a/ios/RNInstabug/InstabugReactBridge.h b/ios/RNInstabug/InstabugReactBridge.h index 2cd6fa84d..9491640b6 100644 --- a/ios/RNInstabug/InstabugReactBridge.h +++ b/ios/RNInstabug/InstabugReactBridge.h @@ -27,7 +27,7 @@ - (void)setEnabled:(BOOL)isEnabled; -- (void)init:(NSString *)token invocationEvents:(NSArray *)invocationEventsArray debugLogsLevel:(IBGSDKDebugLogsLevel)sdkDebugLogsLevel; +- (void)init:(NSString *)token invocationEvents:(NSArray *)invocationEventsArray debugLogsLevel:(IBGSDKDebugLogsLevel)sdkDebugLogsLevel codePushLabel:(NSString *)codePushLabel; - (void)setUserData:(NSString *)userData; diff --git a/ios/RNInstabug/InstabugReactBridge.m b/ios/RNInstabug/InstabugReactBridge.m index 3989f8a58..8ce22b5ac 100644 --- a/ios/RNInstabug/InstabugReactBridge.m +++ b/ios/RNInstabug/InstabugReactBridge.m @@ -24,10 +24,7 @@ + (void)setWillSendReportHandler_private:(void(^)(IBGReport *report, void(^repor @implementation InstabugReactBridge - (NSArray *)supportedEvents { - return @[ - @"IBGpreSendingHandler", - @"IBGSetNetworkDataObfuscationHandler", - ]; + return @[@"IBGpreSendingHandler"]; } RCT_EXPORT_MODULE(Instabug) @@ -41,7 +38,7 @@ - (dispatch_queue_t)methodQueue { Instabug.enabled = isEnabled; } -RCT_EXPORT_METHOD(init:(NSString *)token invocationEvents:(NSArray*)invocationEventsArray debugLogsLevel:(IBGSDKDebugLogsLevel)sdkDebugLogsLevel) { +RCT_EXPORT_METHOD(init:(NSString *)token invocationEvents:(NSArray*)invocationEventsArray debugLogsLevel:(IBGSDKDebugLogsLevel)sdkDebugLogsLevel codePushLabel:(NSString *)codePushLabel) { SEL setPrivateApiSEL = NSSelectorFromString(@"setCurrentPlatform:"); if ([[Instabug class] respondsToSelector:setPrivateApiSEL]) { NSInteger *platform = IBGPlatformReactNative; @@ -56,6 +53,8 @@ - (dispatch_queue_t)methodQueue { for (NSNumber *boxedValue in invocationEventsArray) { invocationEvents |= [boxedValue intValue]; } + + [Instabug setCodePushVersion:codePushLabel]; [Instabug startWithToken:token invocationEvents:invocationEvents]; [Instabug setSdkDebugLogsLevel:sdkDebugLogsLevel]; diff --git a/jest.config.js b/jest.config.js index 111db9562..ccdb05d2b 100644 --- a/jest.config.js +++ b/jest.config.js @@ -9,7 +9,7 @@ module.exports = { collectCoverageFrom: ['./src/**/*.(js|ts)'], setupFilesAfterEnv: ['./test/setup.ts'], moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], - modulePathIgnorePatterns: ['example'], + modulePathIgnorePatterns: ['examples'], transform: { '^.+\\.jsx$': 'babel-jest', '^.+\\.tsx?$': 'ts-jest', diff --git a/package.json b/package.json index f1e7c8284..d4f731f6c 100644 --- a/package.json +++ b/package.json @@ -33,8 +33,8 @@ "build": "yarn build:lib && yarn build:cli", "build:lib": "tsc", "build:cli": "npx rollup -c rollup.config.js --bundleConfigAsCjs", - "example": "yarn --cwd example", - "pods": "cd example && pod-install --quiet", + "example": "yarn --cwd examples/default", + "pods": "cd examples/default && pod-install --quiet", "bootstrap": "yarn example && yarn && yarn pods" }, "peerDependencies": { diff --git a/src/index.ts b/src/index.ts index dc26cb2dc..75d434101 100644 --- a/src/index.ts +++ b/src/index.ts @@ -9,7 +9,7 @@ import * as CrashReporting from './modules/CrashReporting'; import * as FeatureRequests from './modules/FeatureRequests'; import * as Instabug from './modules/Instabug'; import * as NetworkLogger from './modules/NetworkLogger'; -import type { NetworkData } from './modules/NetworkLogger'; +import type { NetworkData, NetworkDataObfuscationHandler } from './modules/NetworkLogger'; import * as Replies from './modules/Replies'; import type { Survey } from './modules/Surveys'; import * as Surveys from './modules/Surveys'; @@ -26,8 +26,6 @@ export { Replies, Surveys, }; -export type { InstabugConfig }; -export type { Survey }; -export type { NetworkData }; +export type { InstabugConfig, Survey, NetworkData, NetworkDataObfuscationHandler }; export default Instabug; diff --git a/src/models/InstabugConfig.ts b/src/models/InstabugConfig.ts index 827e7746f..bbaa681f4 100644 --- a/src/models/InstabugConfig.ts +++ b/src/models/InstabugConfig.ts @@ -14,4 +14,10 @@ export interface InstabugConfig { * An optional LogLevel to indicate the verbosity of SDK logs. Default is Error. */ debugLogsLevel?: LogLevel; + /** + * An optional CodePush version label. Default is an empty string. + * The version name and code are read from the native files + * build.gradle and Info.plist for Android and iOS respectively. + */ + codePushLabel?: string; } diff --git a/src/models/Report.ts b/src/models/Report.ts index b61da4dc9..4af0a8458 100644 --- a/src/models/Report.ts +++ b/src/models/Report.ts @@ -1,6 +1,6 @@ import { Platform } from 'react-native'; -import { NativeInstabug } from '../native'; +import { NativeInstabug } from '../native/NativeInstabug'; interface LogInfo { log: string; diff --git a/src/models/Trace.ts b/src/models/Trace.ts index ab86ba05f..6baa5aec2 100644 --- a/src/models/Trace.ts +++ b/src/models/Trace.ts @@ -1,4 +1,4 @@ -import { NativeAPM } from '../native'; +import { NativeAPM } from '../native/NativeAPM'; export default class Trace { constructor( diff --git a/src/modules/APM.ts b/src/modules/APM.ts index a9df302f0..26170375a 100644 --- a/src/modules/APM.ts +++ b/src/modules/APM.ts @@ -1,7 +1,8 @@ import { Platform } from 'react-native'; import Trace from '../models/Trace'; -import { NativeAPM, NativeInstabug } from '../native'; +import { NativeAPM } from '../native/NativeAPM'; +import { NativeInstabug } from '../native/NativeInstabug'; import { logLevel } from '../utils/ArgsRegistry'; export { logLevel }; diff --git a/src/modules/BugReporting.ts b/src/modules/BugReporting.ts index 0efee28da..8f9b0eb64 100644 --- a/src/modules/BugReporting.ts +++ b/src/modules/BugReporting.ts @@ -1,6 +1,6 @@ import { Platform } from 'react-native'; -import { NativeBugReporting } from '../native'; +import { NativeBugReporting, NativeEvents, emitter } from '../native/NativeBugReporting'; import { dismissType, extendedBugReportMode, @@ -19,8 +19,6 @@ import type { RecordingButtonPosition, ReportType, } from '../utils/Enums'; -import IBGEventEmitter from '../utils/IBGEventEmitter'; -import InstabugConstants from '../utils/InstabugConstants'; export { invocationEvent, extendedBugReportMode, reportType, option, position }; @@ -57,7 +55,7 @@ export const setOptions = (options: option[] | InvocationOption[]) => { * @param handler A callback that gets executed before invoking the SDK */ export const onInvokeHandler = (handler: () => void) => { - IBGEventEmitter.addListener(NativeBugReporting, InstabugConstants.ON_INVOKE_HANDLER, handler); + emitter.addListener(NativeEvents.ON_INVOKE_HANDLER, handler); NativeBugReporting.setOnInvokeHandler(handler); }; @@ -70,13 +68,9 @@ export const onInvokeHandler = (handler: () => void) => { export const onSDKDismissedHandler = ( handler: (dismissType: dismissType | DismissType, reportType: reportType | ReportType) => void, ) => { - IBGEventEmitter.addListener( - NativeBugReporting, - InstabugConstants.ON_SDK_DISMISSED_HANDLER, - (payload) => { - handler(payload.dismissType, payload.reportType); - }, - ); + emitter.addListener(NativeEvents.ON_DISMISS_HANDLER, (payload) => { + handler(payload.dismissType, payload.reportType); + }); NativeBugReporting.setOnSDKDismissedHandler(handler); }; @@ -193,13 +187,9 @@ export const setDidSelectPromptOptionHandler = (handler: (promptOption: string) if (Platform.OS === 'android') { return; } - IBGEventEmitter.addListener( - NativeBugReporting, - InstabugConstants.DID_SELECT_PROMPT_OPTION_HANDLER, - (payload) => { - handler(payload.promptOption); - }, - ); + emitter.addListener(NativeEvents.DID_SELECT_PROMPT_OPTION_HANDLER, (payload) => { + handler(payload.promptOption); + }); NativeBugReporting.setDidSelectPromptOptionHandler(handler); }; diff --git a/src/modules/CrashReporting.ts b/src/modules/CrashReporting.ts index c9b827eea..5687b2f53 100644 --- a/src/modules/CrashReporting.ts +++ b/src/modules/CrashReporting.ts @@ -1,8 +1,8 @@ import { Platform } from 'react-native'; import type { ExtendedError } from 'react-native/Libraries/Core/Devtools/parseErrorStack'; -import { NativeCrashReporting } from '../native'; -import type { CrashData } from '../native/CrashReportingNativeModule'; +import type { CrashData } from '../native/NativeCrashReporting'; +import { NativeCrashReporting } from '../native/NativeCrashReporting'; import InstabugUtils from '../utils/InstabugUtils'; /** diff --git a/src/modules/FeatureRequests.ts b/src/modules/FeatureRequests.ts index 08453a7ee..aa5d2596d 100644 --- a/src/modules/FeatureRequests.ts +++ b/src/modules/FeatureRequests.ts @@ -1,4 +1,4 @@ -import { NativeFeatureRequests } from '../native'; +import { NativeFeatureRequests } from '../native/NativeFeatureRequests'; import { actionTypes } from '../utils/ArgsRegistry'; import type { ActionType } from '../utils/Enums'; diff --git a/src/modules/Instabug.ts b/src/modules/Instabug.ts index dd569ebb9..44de699f5 100644 --- a/src/modules/Instabug.ts +++ b/src/modules/Instabug.ts @@ -7,7 +7,7 @@ import type { NavigationAction, NavigationState as NavigationStateV4 } from 'rea import type { InstabugConfig } from '../models/InstabugConfig'; import Report from '../models/Report'; -import { NativeInstabug } from '../native'; +import { NativeEvents, NativeInstabug, emitter } from '../native/NativeInstabug'; import { IBGPosition, actionTypes, @@ -31,8 +31,6 @@ import { StringKey, WelcomeMessageMode, } from '../utils/Enums'; -import IBGEventEmitter from '../utils/IBGEventEmitter'; -import InstabugConstants from '../utils/InstabugConstants'; import InstabugUtils, { stringifyIfNotString } from '../utils/InstabugUtils'; import * as NetworkLogger from './NetworkLogger'; @@ -92,6 +90,7 @@ export const init = (config: InstabugConfig) => { config.token, config.invocationEvents, config.debugLogsLevel ?? LogLevel.error, + config.codePushLabel ?? '', ); _isFirstScreen = true; @@ -435,7 +434,7 @@ export const setDebugEnabled = (isEnabled: boolean) => { */ export const enable = () => { if (Platform.OS === 'android') { - NativeInstabug.enable(); + setEnabled(true); } }; @@ -447,7 +446,7 @@ export const enable = () => { */ export const disable = () => { if (Platform.OS === 'android') { - NativeInstabug.disable(); + setEnabled(false); } }; @@ -533,7 +532,7 @@ export const show = () => { }; export const onReportSubmitHandler = (handler?: (report: Report) => void) => { - IBGEventEmitter.addListener(NativeInstabug, InstabugConstants.PRESENDING_HANDLER, (report) => { + emitter.addListener(NativeEvents.PRESENDING_HANDLER, (report) => { const { tags, consoleLogs, instabugLogs, userAttributes, fileAttachments } = report; const reportObj = new Report(tags, consoleLogs, instabugLogs, userAttributes, fileAttachments); handler && handler(reportObj); diff --git a/src/modules/NetworkLogger.ts b/src/modules/NetworkLogger.ts index 3ec57c705..8e102e3ab 100644 --- a/src/modules/NetworkLogger.ts +++ b/src/modules/NetworkLogger.ts @@ -2,14 +2,15 @@ import { Platform } from 'react-native'; import type { RequestHandler } from '@apollo/client'; -import { NativeAPM, NativeInstabug } from '../native'; -import IBGEventEmitter from '../utils/IBGEventEmitter'; +import { NativeAPM } from '../native/NativeAPM'; +import { NativeInstabug } from '../native/NativeInstabug'; import InstabugConstants from '../utils/InstabugConstants'; import xhr, { NetworkData, ProgressCallback } from '../utils/XhrNetworkInterceptor'; export type { NetworkData }; -let _networkDataObfuscationHandlerSet = false; +export type NetworkDataObfuscationHandler = (data: NetworkData) => Promise; +let _networkDataObfuscationHandler: NetworkDataObfuscationHandler | null | undefined; let _requestFilterExpression = 'false'; /** @@ -20,23 +21,23 @@ let _requestFilterExpression = 'false'; export const setEnabled = (isEnabled: boolean) => { if (isEnabled) { xhr.enableInterception(); - xhr.setOnDoneCallback((network) => { + xhr.setOnDoneCallback(async (network) => { // eslint-disable-next-line no-new-func const predicate = Function('network', 'return ' + _requestFilterExpression); if (!predicate(network)) { - if (_networkDataObfuscationHandlerSet) { - IBGEventEmitter.emit(InstabugConstants.NETWORK_DATA_OBFUSCATION_HANDLER_EVENT, network); - } else { - try { - if (Platform.OS === 'android') { - NativeInstabug.networkLog(JSON.stringify(network)); - NativeAPM.networkLog(JSON.stringify(network)); - } else { - NativeInstabug.networkLog(network); - } - } catch (e) { - console.error(e); + try { + if (_networkDataObfuscationHandler) { + network = await _networkDataObfuscationHandler(network); } + + if (Platform.OS === 'android') { + NativeInstabug.networkLog(JSON.stringify(network)); + NativeAPM.networkLog(JSON.stringify(network)); + } else { + NativeInstabug.networkLog(network); + } + } catch (e) { + console.error(e); } } }); @@ -50,32 +51,9 @@ export const setEnabled = (isEnabled: boolean) => { * @param handler */ export const setNetworkDataObfuscationHandler = ( - handler: (data: NetworkData) => Promise, + handler?: NetworkDataObfuscationHandler | null | undefined, ) => { - if (handler === null) { - _networkDataObfuscationHandlerSet = false; - return; - } - _networkDataObfuscationHandlerSet = true; - - IBGEventEmitter.addListener( - NativeInstabug, - InstabugConstants.NETWORK_DATA_OBFUSCATION_HANDLER_EVENT, - async (data: NetworkData) => { - try { - const newData = await handler(data); - - if (Platform.OS === 'android') { - NativeInstabug.networkLog(JSON.stringify(newData)); - NativeAPM.networkLog(JSON.stringify(newData)); - } else { - NativeInstabug.networkLog(newData); - } - } catch (e) { - console.error(e); - } - }, - ); + _networkDataObfuscationHandler = handler; }; /** diff --git a/src/modules/Replies.ts b/src/modules/Replies.ts index 5d2317a60..26d253d50 100644 --- a/src/modules/Replies.ts +++ b/src/modules/Replies.ts @@ -1,8 +1,6 @@ import { Platform } from 'react-native'; -import { NativeReplies } from '../native'; -import IBGEventEmitter from '../utils/IBGEventEmitter'; -import InstabugConstants from '../utils/InstabugConstants'; +import { NativeEvents, NativeReplies, emitter } from '../native/NativeReplies'; /** * Enables and disables everything related to receiving replies. @@ -32,7 +30,7 @@ export const show = () => { * @param handler A callback that gets executed when a new message is received. */ export const setOnNewReplyReceivedHandler = (handler: () => void) => { - IBGEventEmitter.addListener(NativeReplies, InstabugConstants.ON_REPLY_RECEIVED_HANDLER, handler); + emitter.addListener(NativeEvents.ON_REPLY_RECEIVED_HANDLER, handler); NativeReplies.setOnNewReplyReceivedHandler(handler); }; diff --git a/src/modules/Surveys.ts b/src/modules/Surveys.ts index b66fdbff0..790cf4fb0 100644 --- a/src/modules/Surveys.ts +++ b/src/modules/Surveys.ts @@ -1,9 +1,7 @@ import { Platform } from 'react-native'; -import { NativeSurveys } from '../native'; -import type { Survey } from '../native/SurveysNativeModule'; -import IBGEventEmitter from '../utils/IBGEventEmitter'; -import InstabugConstants from '../utils/InstabugConstants'; +import { NativeEvents, NativeSurveys, emitter } from '../native/NativeSurveys'; +import type { Survey } from '../native/NativeSurveys'; export type { Survey }; @@ -55,11 +53,7 @@ export const setAutoShowingEnabled = (autoShowingSurveysEnabled: boolean) => { * presenting the survey's UI. */ export const setOnShowHandler = (onShowHandler: () => void) => { - IBGEventEmitter.addListener( - NativeSurveys, - InstabugConstants.WILL_SHOW_SURVEY_HANDLER, - onShowHandler, - ); + emitter.addListener(NativeEvents.WILL_SHOW_SURVEY_HANDLER, onShowHandler); NativeSurveys.setOnShowHandler(onShowHandler); }; @@ -71,11 +65,7 @@ export const setOnShowHandler = (onShowHandler: () => void) => { * the survey's UI is dismissed. */ export const setOnDismissHandler = (onDismissHandler: () => void) => { - IBGEventEmitter.addListener( - NativeSurveys, - InstabugConstants.DID_DISMISS_SURVEY_HANDLER, - onDismissHandler, - ); + emitter.addListener(NativeEvents.DID_DISMISS_SURVEY_HANDLER, onDismissHandler); NativeSurveys.setOnDismissHandler(onDismissHandler); }; diff --git a/src/native/ApmNativeModule.ts b/src/native/NativeAPM.ts similarity index 89% rename from src/native/ApmNativeModule.ts rename to src/native/NativeAPM.ts index f398509ea..30067b779 100644 --- a/src/native/ApmNativeModule.ts +++ b/src/native/NativeAPM.ts @@ -1,6 +1,7 @@ import type { NativeModule } from 'react-native'; import type { logLevel } from '../utils/ArgsRegistry'; +import { NativeModules } from './NativePackage'; export interface ApmNativeModule extends NativeModule { // Essential APIs // @@ -28,3 +29,5 @@ export interface ApmNativeModule extends NativeModule { /** @deprecated */ setLogLevel(level: logLevel): void; } + +export const NativeAPM = NativeModules.IBGAPM; diff --git a/src/native/BugReportingNativeModule.ts b/src/native/NativeBugReporting.ts similarity index 82% rename from src/native/BugReportingNativeModule.ts rename to src/native/NativeBugReporting.ts index cc4dbe59d..827fa6836 100644 --- a/src/native/BugReportingNativeModule.ts +++ b/src/native/NativeBugReporting.ts @@ -1,4 +1,4 @@ -import type { NativeModule } from 'react-native'; +import { NativeEventEmitter, NativeModule } from 'react-native'; import type { dismissType, @@ -18,6 +18,7 @@ import type { RecordingButtonPosition, ReportType, } from '../utils/Enums'; +import { NativeModules } from './NativePackage'; export interface BugReportingNativeModule extends NativeModule { // Essential APIs // @@ -57,3 +58,13 @@ export interface BugReportingNativeModule extends NativeModule { handler: (dismissType: dismissType | DismissType, reportType: reportType | ReportType) => void, ): void; } + +export const NativeBugReporting = NativeModules.IBGBugReporting; + +export enum NativeEvents { + ON_INVOKE_HANDLER = 'IBGpreInvocationHandler', + ON_DISMISS_HANDLER = 'IBGpostInvocationHandler', + DID_SELECT_PROMPT_OPTION_HANDLER = 'IBGDidSelectPromptOptionHandler', +} + +export const emitter = new NativeEventEmitter(NativeBugReporting); diff --git a/src/native/CrashReportingNativeModule.ts b/src/native/NativeCrashReporting.ts similarity index 81% rename from src/native/CrashReportingNativeModule.ts rename to src/native/NativeCrashReporting.ts index 8124c2a0f..b10d9674b 100644 --- a/src/native/CrashReportingNativeModule.ts +++ b/src/native/NativeCrashReporting.ts @@ -1,6 +1,8 @@ import type { NativeModule, Platform } from 'react-native'; import type { StackFrame } from 'react-native/Libraries/Core/Devtools/parseErrorStack'; +import { NativeModules } from './NativePackage'; + export interface CrashData { message: string; e_message: string; @@ -15,3 +17,5 @@ export interface CrashReportingNativeModule extends NativeModule { sendJSCrash(data: CrashData | string): void; sendHandledJSCrash(data: CrashData | string): void; } + +export const NativeCrashReporting = NativeModules.IBGCrashReporting; diff --git a/src/native/FeatureRequestsNativeModule.ts b/src/native/NativeFeatureRequests.ts similarity index 77% rename from src/native/FeatureRequestsNativeModule.ts rename to src/native/NativeFeatureRequests.ts index 6fc8d6529..dc74690d6 100644 --- a/src/native/FeatureRequestsNativeModule.ts +++ b/src/native/NativeFeatureRequests.ts @@ -2,6 +2,7 @@ import type { NativeModule } from 'react-native'; import type { actionTypes } from '../utils/ArgsRegistry'; import type { ActionType } from '../utils/Enums'; +import { NativeModules } from './NativePackage'; export interface FeatureRequestsNativeModule extends NativeModule { setEnabled(isEnabled: boolean): void; @@ -11,3 +12,5 @@ export interface FeatureRequestsNativeModule extends NativeModule { types: actionTypes[] | ActionType[], ): void; } + +export const NativeFeatureRequests = NativeModules.IBGFeatureRequests; diff --git a/src/native/InstabugNativeModule.ts b/src/native/NativeInstabug.ts similarity index 91% rename from src/native/InstabugNativeModule.ts rename to src/native/NativeInstabug.ts index ab37e9c6b..8e11b6f32 100644 --- a/src/native/InstabugNativeModule.ts +++ b/src/native/NativeInstabug.ts @@ -1,4 +1,4 @@ -import type { NativeModule, ProcessedColorValue } from 'react-native'; +import { NativeEventEmitter, NativeModule, ProcessedColorValue } from 'react-native'; import type Report from '../models/Report'; import type { @@ -21,6 +21,7 @@ import type { } from '../utils/Enums'; import type { NetworkData } from '../utils/XhrNetworkInterceptor'; import type { NativeConstants } from './NativeConstants'; +import { NativeModules } from './NativePackage'; export interface InstabugNativeModule extends NativeModule { getConstants(): NativeConstants; @@ -31,6 +32,7 @@ export interface InstabugNativeModule extends NativeModule { token: string, invocationEvents: InvocationEvent[] | invocationEvent[], debugLogsLevel: LogLevel, + codePushLabel: string, ): void; show(): void; @@ -112,11 +114,15 @@ export interface InstabugNativeModule extends NativeModule { /** @deprecated */ setDebugEnabled(isEnabled: boolean): void; /** @deprecated */ - enable(): void; - /** @deprecated */ - disable(): void; - /** @deprecated */ isRunningLive(callback: (isLive: boolean) => void): void; /** @deprecated */ callPrivateApi(apiName: string, param: any[]): void; } + +export const NativeInstabug = NativeModules.Instabug; + +export enum NativeEvents { + PRESENDING_HANDLER = 'IBGpreSendingHandler', +} + +export const emitter = new NativeEventEmitter(NativeInstabug); diff --git a/src/native/NativePackage.ts b/src/native/NativePackage.ts new file mode 100644 index 000000000..2f74572f0 --- /dev/null +++ b/src/native/NativePackage.ts @@ -0,0 +1,21 @@ +import { NativeModules as ReactNativeModules } from 'react-native'; + +import type { ApmNativeModule } from './NativeAPM'; +import type { BugReportingNativeModule } from './NativeBugReporting'; +import type { CrashReportingNativeModule } from './NativeCrashReporting'; +import type { FeatureRequestsNativeModule } from './NativeFeatureRequests'; +import type { InstabugNativeModule } from './NativeInstabug'; +import type { RepliesNativeModule } from './NativeReplies'; +import type { SurveysNativeModule } from './NativeSurveys'; + +export interface InstabugNativePackage { + IBGAPM: ApmNativeModule; + IBGBugReporting: BugReportingNativeModule; + IBGCrashReporting: CrashReportingNativeModule; + IBGFeatureRequests: FeatureRequestsNativeModule; + Instabug: InstabugNativeModule; + IBGReplies: RepliesNativeModule; + IBGSurveys: SurveysNativeModule; +} + +export const NativeModules = ReactNativeModules as InstabugNativePackage; diff --git a/src/native/RepliesNativeModule.ts b/src/native/NativeReplies.ts similarity index 72% rename from src/native/RepliesNativeModule.ts rename to src/native/NativeReplies.ts index b3db292da..e7624d5dc 100644 --- a/src/native/RepliesNativeModule.ts +++ b/src/native/NativeReplies.ts @@ -1,4 +1,6 @@ -import type { NativeModule } from 'react-native'; +import { NativeEventEmitter, NativeModule } from 'react-native'; + +import { NativeModules } from './NativePackage'; export interface RepliesNativeModule extends NativeModule { // Essential APIs // @@ -22,3 +24,11 @@ export interface RepliesNativeModule extends NativeModule { setPushNotificationChannelId(id: string): void; setSystemReplyNotificationSoundEnabled(isEnabled: boolean): void; } + +export const NativeReplies = NativeModules.IBGReplies; + +export enum NativeEvents { + ON_REPLY_RECEIVED_HANDLER = 'IBGOnNewReplyReceivedCallback', +} + +export const emitter = new NativeEventEmitter(NativeReplies); diff --git a/src/native/SurveysNativeModule.ts b/src/native/NativeSurveys.ts similarity index 67% rename from src/native/SurveysNativeModule.ts rename to src/native/NativeSurveys.ts index 575a26d3e..9c1233c27 100644 --- a/src/native/SurveysNativeModule.ts +++ b/src/native/NativeSurveys.ts @@ -1,4 +1,6 @@ -import type { NativeModule } from 'react-native'; +import { NativeEventEmitter, NativeModule } from 'react-native'; + +import { NativeModules } from './NativePackage'; export interface Survey { title: string; @@ -24,3 +26,12 @@ export interface SurveysNativeModule extends NativeModule { setOnShowHandler(onShowHandler: () => void): void; setOnDismissHandler(onDismissHandler: () => void): void; } + +export const NativeSurveys = NativeModules.IBGSurveys; + +export enum NativeEvents { + WILL_SHOW_SURVEY_HANDLER = 'IBGWillShowSurvey', + DID_DISMISS_SURVEY_HANDLER = 'IBGDidDismissSurvey', +} + +export const emitter = new NativeEventEmitter(NativeSurveys); diff --git a/src/native/index.ts b/src/native/index.ts deleted file mode 100644 index ba8940177..000000000 --- a/src/native/index.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { NativeModules as ReactNativeModules } from 'react-native'; - -import type { ApmNativeModule } from './ApmNativeModule'; -import type { BugReportingNativeModule } from './BugReportingNativeModule'; -import type { CrashReportingNativeModule } from './CrashReportingNativeModule'; -import type { FeatureRequestsNativeModule } from './FeatureRequestsNativeModule'; -import type { InstabugNativeModule } from './InstabugNativeModule'; -import type { RepliesNativeModule } from './RepliesNativeModule'; -import type { SurveysNativeModule } from './SurveysNativeModule'; - -export interface InstabugNativePackage { - IBGAPM: ApmNativeModule; - IBGBugReporting: BugReportingNativeModule; - IBGCrashReporting: CrashReportingNativeModule; - IBGFeatureRequests: FeatureRequestsNativeModule; - Instabug: InstabugNativeModule; - IBGReplies: RepliesNativeModule; - IBGSurveys: SurveysNativeModule; -} - -export const NativeModules = ReactNativeModules as InstabugNativePackage; - -export const NativeAPM = NativeModules.IBGAPM; -export const NativeBugReporting = NativeModules.IBGBugReporting; -export const NativeCrashReporting = NativeModules.IBGCrashReporting; -export const NativeFeatureRequests = NativeModules.IBGFeatureRequests; -export const NativeInstabug = NativeModules.Instabug; -export const NativeReplies = NativeModules.IBGReplies; -export const NativeSurveys = NativeModules.IBGSurveys; diff --git a/src/utils/ArgsRegistry.ts b/src/utils/ArgsRegistry.ts index 028d57039..08b52b7cd 100644 --- a/src/utils/ArgsRegistry.ts +++ b/src/utils/ArgsRegistry.ts @@ -1,4 +1,4 @@ -import { NativeInstabug } from '../native'; +import { NativeInstabug } from '../native/NativeInstabug'; const constants = NativeInstabug.getConstants(); diff --git a/src/utils/Enums.ts b/src/utils/Enums.ts index e5f3fcaae..bdae6fbbf 100644 --- a/src/utils/Enums.ts +++ b/src/utils/Enums.ts @@ -1,4 +1,4 @@ -import { NativeInstabug } from '../native'; +import { NativeInstabug } from '../native/NativeInstabug'; const constants = NativeInstabug.getConstants(); diff --git a/src/utils/IBGEventEmitter.ts b/src/utils/IBGEventEmitter.ts deleted file mode 100644 index 556f9ccaf..000000000 --- a/src/utils/IBGEventEmitter.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { DeviceEventEmitter, NativeAppEventEmitter, NativeModule, Platform } from 'react-native'; - -export default { - addListener: (nativeModule: NativeModule, eventName: string, callback: (data: any) => void) => { - if (Platform.OS === 'ios') { - nativeModule.addListener(eventName); - NativeAppEventEmitter.addListener(eventName, callback); - } else { - DeviceEventEmitter.addListener(eventName, callback); - } - }, - emit: (eventName: string, ...eventParams: any[]) => { - if (Platform.OS === 'ios') { - NativeAppEventEmitter.emit(eventName, ...eventParams); - } else { - DeviceEventEmitter.emit(eventName, ...eventParams); - } - }, - removeAllListeners: () => { - if (Platform.OS === 'ios') { - NativeAppEventEmitter.removeAllListeners(); - } else { - DeviceEventEmitter.removeAllListeners(); - } - }, - getListeners: (eventName: string) => { - // Dirty trick to get tests passing before the events migration - if (Platform.OS === 'ios') { - return { length: NativeAppEventEmitter.listenerCount(eventName) }; - } else { - return { length: DeviceEventEmitter.listenerCount(eventName) }; - } - }, -}; diff --git a/src/utils/InstabugConstants.ts b/src/utils/InstabugConstants.ts index cd42e77c5..c7b498877 100644 --- a/src/utils/InstabugConstants.ts +++ b/src/utils/InstabugConstants.ts @@ -1,12 +1,4 @@ enum InstabugConstants { - NETWORK_DATA_OBFUSCATION_HANDLER_EVENT = 'IBGSetNetworkDataObfuscationHandler', - PRESENDING_HANDLER = 'IBGpreSendingHandler', - ON_INVOKE_HANDLER = 'IBGpreInvocationHandler', - ON_SDK_DISMISSED_HANDLER = 'IBGpostInvocationHandler', - ON_REPLY_RECEIVED_HANDLER = 'IBGOnNewReplyReceivedCallback', - WILL_SHOW_SURVEY_HANDLER = 'IBGWillShowSurvey', - DID_DISMISS_SURVEY_HANDLER = 'IBGDidDismissSurvey', - DID_SELECT_PROMPT_OPTION_HANDLER = 'IBGDidSelectPromptOptionHandler', GRAPHQL_HEADER = 'ibg-graphql-header', } diff --git a/src/utils/InstabugUtils.ts b/src/utils/InstabugUtils.ts index f107eb137..d88bce470 100644 --- a/src/utils/InstabugUtils.ts +++ b/src/utils/InstabugUtils.ts @@ -7,8 +7,8 @@ import parseErrorStackLib, { import type { NavigationState as NavigationStateV5, PartialState } from '@react-navigation/native'; import type { NavigationState as NavigationStateV4 } from 'react-navigation'; -import { NativeCrashReporting } from '../native'; -import type { CrashData } from '../native/CrashReportingNativeModule'; +import type { CrashData } from '../native/NativeCrashReporting'; +import { NativeCrashReporting } from '../native/NativeCrashReporting'; export const parseErrorStack = (error: ExtendedError): StackFrame[] => { return parseErrorStackLib(error); diff --git a/test/mocks/mockAPM.ts b/test/mocks/mockAPM.ts index 8b8c4c681..c0465c7bb 100644 --- a/test/mocks/mockAPM.ts +++ b/test/mocks/mockAPM.ts @@ -1,4 +1,4 @@ -import type { ApmNativeModule } from '../../src/native/ApmNativeModule'; +import type { ApmNativeModule } from '../../src/native/NativeAPM'; const mockAPM: ApmNativeModule = { addListener: jest.fn(), diff --git a/test/mocks/mockBugReporting.ts b/test/mocks/mockBugReporting.ts index fa0f07d19..03d3bd35d 100644 --- a/test/mocks/mockBugReporting.ts +++ b/test/mocks/mockBugReporting.ts @@ -1,4 +1,4 @@ -import type { BugReportingNativeModule } from '../../src/native/BugReportingNativeModule'; +import type { BugReportingNativeModule } from '../../src/native/NativeBugReporting'; const mockBugReporting: BugReportingNativeModule = { addListener: jest.fn(), diff --git a/test/mocks/mockCrashReporting.ts b/test/mocks/mockCrashReporting.ts index 43daecca0..0d2685156 100644 --- a/test/mocks/mockCrashReporting.ts +++ b/test/mocks/mockCrashReporting.ts @@ -1,4 +1,4 @@ -import type { CrashReportingNativeModule } from '../../src/native/CrashReportingNativeModule'; +import type { CrashReportingNativeModule } from '../../src/native/NativeCrashReporting'; const mockCrashReporting: CrashReportingNativeModule = { addListener: jest.fn(), diff --git a/test/mocks/mockFeatureRequests.ts b/test/mocks/mockFeatureRequests.ts index 9ed48c02b..1e1023e46 100644 --- a/test/mocks/mockFeatureRequests.ts +++ b/test/mocks/mockFeatureRequests.ts @@ -1,4 +1,4 @@ -import type { FeatureRequestsNativeModule } from '../../src/native/FeatureRequestsNativeModule'; +import type { FeatureRequestsNativeModule } from '../../src/native/NativeFeatureRequests'; const mockFeatureRequests: FeatureRequestsNativeModule = { addListener: jest.fn(), diff --git a/test/mocks/mockInstabug.ts b/test/mocks/mockInstabug.ts index f8bf85ff1..bfd049019 100644 --- a/test/mocks/mockInstabug.ts +++ b/test/mocks/mockInstabug.ts @@ -1,4 +1,4 @@ -import type { InstabugNativeModule } from '../../src/native/InstabugNativeModule'; +import type { InstabugNativeModule } from '../../src/native/NativeInstabug'; const mockInstabug: InstabugNativeModule = { addListener: jest.fn(), @@ -34,8 +34,6 @@ const mockInstabug: InstabugNativeModule = { getAllUserAttributes: jest.fn((cb) => cb({ age: '24' })), clearAllUserAttributes: jest.fn(), setDebugEnabled: jest.fn(), - enable: jest.fn(), - disable: jest.fn(), isRunningLive: jest.fn((cb) => cb(true)), showWelcomeMessageWithMode: jest.fn(), setWelcomeMessageMode: jest.fn(), diff --git a/test/mocks/mockNativeModules.ts b/test/mocks/mockNativeModules.ts index 9112004f1..b53fa2351 100644 --- a/test/mocks/mockNativeModules.ts +++ b/test/mocks/mockNativeModules.ts @@ -1,4 +1,4 @@ -import type { InstabugNativePackage } from '../../src/native'; +import type { InstabugNativePackage } from '../../src/native/NativePackage'; import mockAPM from './mockAPM'; import mockBugReporting from './mockBugReporting'; import mockCrashReporting from './mockCrashReporting'; diff --git a/test/mocks/mockReplies.ts b/test/mocks/mockReplies.ts index c2c86b731..3247155cb 100644 --- a/test/mocks/mockReplies.ts +++ b/test/mocks/mockReplies.ts @@ -1,4 +1,4 @@ -import type { RepliesNativeModule } from '../../src/native/RepliesNativeModule'; +import type { RepliesNativeModule } from '../../src/native/NativeReplies'; const mockReplies: RepliesNativeModule = { addListener: jest.fn(), diff --git a/test/mocks/mockSurveys.ts b/test/mocks/mockSurveys.ts index d94af4f51..4f886536e 100644 --- a/test/mocks/mockSurveys.ts +++ b/test/mocks/mockSurveys.ts @@ -1,4 +1,4 @@ -import type { SurveysNativeModule } from '../../src/native/SurveysNativeModule'; +import type { SurveysNativeModule } from '../../src/native/NativeSurveys'; const mockSurveys: SurveysNativeModule = { addListener: jest.fn(), diff --git a/test/models/Report.spec.ts b/test/models/Report.spec.ts index c75d46e8a..20c6c8952 100644 --- a/test/models/Report.spec.ts +++ b/test/models/Report.spec.ts @@ -1,7 +1,7 @@ import { Platform } from 'react-native'; import Report from '../../src/models/Report'; -import { NativeInstabug } from '../../src/native'; +import { NativeInstabug } from '../../src/native/NativeInstabug'; describe('Report Model', () => { let report: Report; diff --git a/test/models/Trace.spec.ts b/test/models/Trace.spec.ts index a37d72216..8421b419a 100644 --- a/test/models/Trace.spec.ts +++ b/test/models/Trace.spec.ts @@ -1,5 +1,5 @@ import Trace from '../../src/models/Trace'; -import { NativeAPM } from '../../src/native'; +import { NativeAPM } from '../../src/native/NativeAPM'; describe('Trace Model', () => { it('should set the id, name and attributes if passed', () => { diff --git a/test/modules/APM.spec.ts b/test/modules/APM.spec.ts index b8dcfd29d..fdf90a967 100644 --- a/test/modules/APM.spec.ts +++ b/test/modules/APM.spec.ts @@ -4,7 +4,8 @@ import { mocked } from 'ts-jest/utils'; import Trace from '../../src/models/Trace'; import * as APM from '../../src/modules/APM'; -import { NativeAPM, NativeInstabug } from '../../src/native'; +import { NativeAPM } from '../../src/native/NativeAPM'; +import { NativeInstabug } from '../../src/native/NativeInstabug'; describe('APM Module', () => { it('should call the native method setEnabled', () => { diff --git a/test/modules/BugReporting.spec.ts b/test/modules/BugReporting.spec.ts index 93003fee8..c825b5b96 100644 --- a/test/modules/BugReporting.spec.ts +++ b/test/modules/BugReporting.spec.ts @@ -1,7 +1,7 @@ import { Platform } from 'react-native'; import * as BugReporting from '../../src/modules/BugReporting'; -import { NativeBugReporting } from '../../src/native'; +import { NativeBugReporting, NativeEvents, emitter } from '../../src/native/NativeBugReporting'; import { ExtendedBugReportMode, FloatingButtonPosition, @@ -10,10 +10,15 @@ import { RecordingButtonPosition, ReportType, } from '../../src/utils/Enums'; -import IBGEventEmitter from '../../src/utils/IBGEventEmitter'; -import IBGConstants from '../../src/utils/InstabugConstants'; describe('Testing BugReporting Module', () => { + beforeEach(() => { + const events = Object.values(NativeEvents); + events.forEach((event) => { + emitter.removeAllListeners(event); + }); + }); + it('should call the native method setBugReportingEnabled', () => { BugReporting.setEnabled(true); @@ -131,9 +136,9 @@ describe('Testing BugReporting Module', () => { it('should invoke callback on emitting the event IBGpreInvocationHandler', () => { const callback = jest.fn(); BugReporting.onInvokeHandler(callback); - IBGEventEmitter.emit(IBGConstants.ON_INVOKE_HANDLER); + emitter.emit(NativeEvents.ON_INVOKE_HANDLER); - expect(IBGEventEmitter.getListeners(IBGConstants.ON_INVOKE_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.ON_INVOKE_HANDLER)).toBe(1); expect(callback).toHaveBeenCalled(); }); @@ -151,12 +156,12 @@ describe('Testing BugReporting Module', () => { const callback = jest.fn(); BugReporting.onSDKDismissedHandler(callback); - IBGEventEmitter.emit(IBGConstants.ON_SDK_DISMISSED_HANDLER, { + emitter.emit(NativeEvents.ON_DISMISS_HANDLER, { dismissType: dismissType, reportType: reportType, }); - expect(IBGEventEmitter.getListeners(IBGConstants.ON_SDK_DISMISSED_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.ON_DISMISS_HANDLER)).toBe(1); expect(callback).toBeCalledTimes(1); expect(callback).toBeCalledWith(dismissType, reportType); }); @@ -192,12 +197,10 @@ describe('Testing BugReporting Module', () => { Platform.OS = 'android'; BugReporting.setDidSelectPromptOptionHandler(jest.fn()); - IBGEventEmitter.emit(IBGConstants.DID_SELECT_PROMPT_OPTION_HANDLER, {}); + emitter.emit(NativeEvents.DID_SELECT_PROMPT_OPTION_HANDLER, {}); expect(NativeBugReporting.setDidSelectPromptOptionHandler).not.toBeCalled(); - expect( - IBGEventEmitter.getListeners(IBGConstants.DID_SELECT_PROMPT_OPTION_HANDLER).length, - ).toEqual(0); + expect(emitter.listenerCount(NativeEvents.DID_SELECT_PROMPT_OPTION_HANDLER)).toBe(0); }); it('should call setDidSelectPromptOptionHandler event listener when platform is iOS', () => { @@ -206,10 +209,9 @@ describe('Testing BugReporting Module', () => { const payload = { promptOption: 'bug' }; BugReporting.setDidSelectPromptOptionHandler(callback); - IBGEventEmitter.emit(IBGConstants.DID_SELECT_PROMPT_OPTION_HANDLER, payload); + emitter.emit(NativeEvents.DID_SELECT_PROMPT_OPTION_HANDLER, payload); - const listeners = IBGEventEmitter.getListeners(IBGConstants.DID_SELECT_PROMPT_OPTION_HANDLER); - expect(listeners.length).toBe(1); + expect(emitter.listenerCount(NativeEvents.DID_SELECT_PROMPT_OPTION_HANDLER)).toBe(1); expect(callback).toBeCalledTimes(1); expect(callback).toBeCalledWith(payload.promptOption); }); diff --git a/test/modules/CrashReporting.spec.ts b/test/modules/CrashReporting.spec.ts index f998a3930..62f4ed3c9 100644 --- a/test/modules/CrashReporting.spec.ts +++ b/test/modules/CrashReporting.spec.ts @@ -3,7 +3,7 @@ import '../mocks/mockInstabugUtils'; import { Platform } from 'react-native'; import * as CrashReporting from '../../src/modules/CrashReporting'; -import { NativeCrashReporting } from '../../src/native'; +import { NativeCrashReporting } from '../../src/native/NativeCrashReporting'; describe('CrashReporting Module', () => { it('should call the native method setEnabled', () => { diff --git a/test/modules/FeatureRequests.spec.ts b/test/modules/FeatureRequests.spec.ts index b19aeeb49..6f7c02860 100644 --- a/test/modules/FeatureRequests.spec.ts +++ b/test/modules/FeatureRequests.spec.ts @@ -1,5 +1,5 @@ import * as FeatureRequests from '../../src/modules/FeatureRequests'; -import { NativeFeatureRequests } from '../../src/native'; +import { NativeFeatureRequests } from '../../src/native/NativeFeatureRequests'; import { ActionType } from '../../src/utils/Enums'; describe('Feature Requests Module', () => { diff --git a/test/modules/Instabug.spec.ts b/test/modules/Instabug.spec.ts index b208caf1b..d53455cb3 100644 --- a/test/modules/Instabug.spec.ts +++ b/test/modules/Instabug.spec.ts @@ -6,7 +6,7 @@ import waitForExpect from 'wait-for-expect'; import Report from '../../src/models/Report'; import * as Instabug from '../../src/modules/Instabug'; -import { NativeInstabug } from '../../src/native'; +import { NativeEvents, NativeInstabug, emitter } from '../../src/native/NativeInstabug'; import { ColorTheme, InvocationEvent, @@ -16,11 +16,16 @@ import { StringKey, WelcomeMessageMode, } from '../../src/utils/Enums'; -import IBGEventEmitter from '../../src/utils/IBGEventEmitter'; -import IBGConstants from '../../src/utils/InstabugConstants'; import InstabugUtils from '../../src/utils/InstabugUtils'; describe('Instabug Module', () => { + beforeEach(() => { + const events = Object.values(NativeEvents); + events.forEach((event) => { + emitter.removeAllListeners(event); + }); + }); + it('should call the native method setEnabled', () => { Instabug.setEnabled(true); @@ -161,11 +166,12 @@ describe('Instabug Module', () => { await waitForExpect(() => expect(NativeInstabug.reportScreenChange).toBeCalledTimes(2)); }); - it('should call the native method init', () => { + it('should call the native method init with optional parameters set', () => { const instabugConfig = { token: 'some-token', invocationEvents: [InvocationEvent.floatingButton, InvocationEvent.shake], debugLogsLevel: LogLevel.debug, + codePushLabel: 'v123', }; Instabug.init(instabugConfig); @@ -174,6 +180,23 @@ describe('Instabug Module', () => { instabugConfig.token, instabugConfig.invocationEvents, instabugConfig.debugLogsLevel, + instabugConfig.codePushLabel, + ); + }); + + it('should call the native method init with default optional parameters', () => { + const instabugConfig = { + token: 'some-token', + invocationEvents: [InvocationEvent.floatingButton, InvocationEvent.shake], + }; + Instabug.init(instabugConfig); + + expect(NativeInstabug.init).toBeCalledTimes(1); + expect(NativeInstabug.init).toBeCalledWith( + instabugConfig.token, + instabugConfig.invocationEvents, + LogLevel.error, + '', ); }); @@ -498,32 +521,46 @@ describe('Instabug Module', () => { expect(NativeInstabug.setDebugEnabled).not.toBeCalled(); }); - it('should call the native method enable', () => { + it('should map deprecated enable to setEnabled on android', () => { + const setEnabled = jest.spyOn(Instabug, 'setEnabled'); Platform.OS = 'android'; Instabug.enable(); - expect(NativeInstabug.enable).toBeCalledTimes(1); + expect(setEnabled).toBeCalledTimes(1); + expect(setEnabled).toBeCalledWith(true); + + setEnabled.mockRestore(); }); - it('should not call the native method enable when platform is ios', () => { + it('should not map deprecated enable to setEnabled on ios', () => { + const setEnabled = jest.spyOn(Instabug, 'setEnabled'); Platform.OS = 'ios'; Instabug.enable(); - expect(NativeInstabug.enable).not.toBeCalled(); + expect(setEnabled).not.toBeCalled(); + + setEnabled.mockRestore(); }); - it('should call the native method disable', () => { + it('should map deprecated disable to setEnabled on android', () => { + const setEnabled = jest.spyOn(Instabug, 'setEnabled'); Platform.OS = 'android'; Instabug.disable(); - expect(NativeInstabug.disable).toBeCalledTimes(1); + expect(setEnabled).toBeCalledTimes(1); + expect(setEnabled).toBeCalledWith(false); + + setEnabled.mockRestore(); }); - it('should not call the native method disable when platform is ios', () => { + it('should not map deprecated disable to setEnabled on ios', () => { + const setEnabled = jest.spyOn(Instabug, 'setEnabled'); Platform.OS = 'ios'; Instabug.disable(); - expect(NativeInstabug.disable).not.toBeCalled(); + expect(setEnabled).not.toBeCalled(); + + setEnabled.mockRestore(); }); it('should call the native method isRunningLive', (done) => { @@ -636,9 +673,9 @@ describe('Instabug Module', () => { done(); }; Instabug.onReportSubmitHandler(callback); - IBGEventEmitter.emit(IBGConstants.PRESENDING_HANDLER, report); + emitter.emit(NativeEvents.PRESENDING_HANDLER, report); - expect(IBGEventEmitter.getListeners(IBGConstants.PRESENDING_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.PRESENDING_HANDLER)).toBe(1); }); it('should invoke the native method callPrivateApi', () => { diff --git a/test/modules/NetworkLogger.spec.ts b/test/modules/NetworkLogger.spec.ts index 758d4466b..de121c636 100644 --- a/test/modules/NetworkLogger.spec.ts +++ b/test/modules/NetworkLogger.spec.ts @@ -5,9 +5,8 @@ import { Platform } from 'react-native'; import waitForExpect from 'wait-for-expect'; import * as NetworkLogger from '../../src/modules/NetworkLogger'; -import { NativeAPM, NativeInstabug } from '../../src/native'; -import IBGEventEmitter from '../../src/utils/IBGEventEmitter'; -import IBGConstants from '../../src/utils/InstabugConstants'; +import { NativeAPM } from '../../src/native/NativeAPM'; +import { NativeInstabug } from '../../src/native/NativeInstabug'; import Interceptor from '../../src/utils/XhrNetworkInterceptor'; const clone = (obj: any) => { @@ -109,9 +108,6 @@ describe('NetworkLogger Module', () => { }); NetworkLogger.setEnabled(true); - expect( - IBGEventEmitter.getListeners(IBGConstants.NETWORK_DATA_OBFUSCATION_HANDLER_EVENT).length, - ).toEqual(1); await waitForExpect(() => { const newData = clone(network); newData.requestHeaders.token = randomString; @@ -131,9 +127,6 @@ describe('NetworkLogger Module', () => { }); NetworkLogger.setEnabled(true); - expect( - IBGEventEmitter.getListeners(IBGConstants.NETWORK_DATA_OBFUSCATION_HANDLER_EVENT).length, - ).toEqual(1); await waitForExpect(() => { const newData = clone(network); newData.requestHeaders.token = randomString; diff --git a/test/modules/Replies.spec.ts b/test/modules/Replies.spec.ts index d8784364d..26fc49b1d 100644 --- a/test/modules/Replies.spec.ts +++ b/test/modules/Replies.spec.ts @@ -1,11 +1,16 @@ import { Platform } from 'react-native'; import * as Replies from '../../src/modules/Replies'; -import { NativeReplies } from '../../src/native'; -import IBGEventEmitter from '../../src/utils/IBGEventEmitter'; -import IBGConstants from '../../src/utils/InstabugConstants'; +import { NativeEvents, NativeReplies, emitter } from '../../src/native/NativeReplies'; describe('Replies Module', () => { + beforeEach(() => { + const events = Object.values(NativeEvents); + events.forEach((event) => { + emitter.removeAllListeners(event); + }); + }); + it('should call the native method setRepliesEnabled', () => { Replies.setEnabled(true); @@ -39,9 +44,9 @@ describe('Replies Module', () => { it('should invoke callback on emitting the event IBGOnNewReplyReceivedCallback', () => { const callback = jest.fn(); Replies.setOnNewReplyReceivedHandler(callback); - IBGEventEmitter.emit(IBGConstants.ON_REPLY_RECEIVED_HANDLER); + emitter.emit(NativeEvents.ON_REPLY_RECEIVED_HANDLER); - expect(IBGEventEmitter.getListeners(IBGConstants.ON_REPLY_RECEIVED_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.ON_REPLY_RECEIVED_HANDLER)).toBe(1); expect(callback).toHaveBeenCalled(); }); diff --git a/test/modules/Surveys.spec.ts b/test/modules/Surveys.spec.ts index ebb842118..d55760752 100644 --- a/test/modules/Surveys.spec.ts +++ b/test/modules/Surveys.spec.ts @@ -1,11 +1,16 @@ import { Platform } from 'react-native'; import * as Surveys from '../../src/modules/Surveys'; -import { NativeSurveys } from '../../src/native'; -import IBGEventEmitter from '../../src/utils/IBGEventEmitter'; -import IBGConstants from '../../src/utils/InstabugConstants'; +import { NativeEvents, NativeSurveys, emitter } from '../../src/native/NativeSurveys'; describe('Surveys Module', () => { + beforeEach(() => { + const events = Object.values(NativeEvents); + events.forEach((event) => { + emitter.removeAllListeners(event); + }); + }); + it('should call the native method setSurveysEnabled', () => { Surveys.setEnabled(true); @@ -60,9 +65,9 @@ describe('Surveys Module', () => { it('should invoke callback on emitting the event IBGWillShowSurvey', () => { const callback = jest.fn(); Surveys.setOnShowHandler(callback); - IBGEventEmitter.emit(IBGConstants.WILL_SHOW_SURVEY_HANDLER); + emitter.emit(NativeEvents.WILL_SHOW_SURVEY_HANDLER); - expect(IBGEventEmitter.getListeners(IBGConstants.WILL_SHOW_SURVEY_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.WILL_SHOW_SURVEY_HANDLER)).toBe(1); expect(callback).toHaveBeenCalled(); }); @@ -77,9 +82,9 @@ describe('Surveys Module', () => { it('should invoke callback on emitting the event IBGDidDismissSurvey', () => { const callback = jest.fn(); Surveys.setOnDismissHandler(callback); - IBGEventEmitter.emit(IBGConstants.DID_DISMISS_SURVEY_HANDLER); + emitter.emit(NativeEvents.DID_DISMISS_SURVEY_HANDLER); - expect(IBGEventEmitter.getListeners(IBGConstants.DID_DISMISS_SURVEY_HANDLER).length).toEqual(1); + expect(emitter.listenerCount(NativeEvents.DID_DISMISS_SURVEY_HANDLER)).toBe(1); expect(callback).toHaveBeenCalled(); }); diff --git a/test/setup.ts b/test/setup.ts index 62dcf6a7c..f18030d28 100644 --- a/test/setup.ts +++ b/test/setup.ts @@ -7,15 +7,11 @@ import 'react-native/Libraries/Network/fetch'; import nock from 'nock'; import XHR from 'xhr2'; -import IBGEventEmitter from '../src/utils/IBGEventEmitter'; - global.XMLHttpRequest = XHR; nock.disableNetConnect(); beforeEach(() => { - IBGEventEmitter.removeAllListeners(); - jest.spyOn(Platform, 'constants', 'get').mockReturnValue({ isTesting: true, reactNativeVersion: { diff --git a/test/utils/InstabugUtils.spec.ts b/test/utils/InstabugUtils.spec.ts index b60aeef73..1e28530ad 100644 --- a/test/utils/InstabugUtils.spec.ts +++ b/test/utils/InstabugUtils.spec.ts @@ -4,7 +4,7 @@ import { Platform } from 'react-native'; import parseErrorStackLib from 'react-native/Libraries/Core/Devtools/parseErrorStack'; import * as Instabug from '../../src/modules/Instabug'; -import { NativeCrashReporting } from '../../src/native'; +import { NativeCrashReporting } from '../../src/native/NativeCrashReporting'; import { InvocationEvent } from '../../src/utils/Enums'; import InstabugUtils from '../../src/utils/InstabugUtils';