From 346adafa06dede4a0d2df8b695dbfb1ff85987d8 Mon Sep 17 00:00:00 2001 From: kikimaxs Date: Sat, 18 May 2024 00:47:34 +0700 Subject: [PATCH 1/2] Add local network merged --- README.md | 268 ++++----- example/ios/RNPermissionsExample/Info.plist | 26 +- example/package.json | 54 +- ios/LocalNetworkPrivacy/LocalNetworkPrivacy.h | 5 + ios/LocalNetworkPrivacy/LocalNetworkPrivacy.m | 47 ++ .../Permission-LocalNetworkPrivacy.podspec | 20 + .../RNPermissionHandlerLocalNetworkPrivacy.h | 5 + .../RNPermissionHandlerLocalNetworkPrivacy.m | 33 ++ ios/LocalNetworkPrivacy/RNPermissionsHelper.h | 93 +++ .../RNPermissionsModule.mm | 548 ++++++++++++++++++ src/permissions.ios.ts | 4 +- 11 files changed, 919 insertions(+), 184 deletions(-) create mode 100644 ios/LocalNetworkPrivacy/LocalNetworkPrivacy.h create mode 100644 ios/LocalNetworkPrivacy/LocalNetworkPrivacy.m create mode 100644 ios/LocalNetworkPrivacy/Permission-LocalNetworkPrivacy.podspec create mode 100644 ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.h create mode 100644 ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.m create mode 100644 ios/LocalNetworkPrivacy/RNPermissionsHelper.h create mode 100644 ios/LocalNetworkPrivacy/RNPermissionsModule.mm diff --git a/README.md b/README.md index bb61533d..9cac3c6e 100644 --- a/README.md +++ b/README.md @@ -11,10 +11,21 @@ An unified permissions API for React Native on iOS, Android and Windows.
[![platform - ios](https://img.shields.io/badge/platform-iOS-000.svg?logo=apple&style=for-the-badge)](https://developer.apple.com/ios) [![platform - windows](https://img.shields.io/badge/platform-Windows-0067b8.svg?logo=windows&style=for-the-badge)](https://www.microsoft.com/en-us/windows) +## Funding + + + This library helped you? Consider sponsoring! + + +This module is provided **as is**, I work on it in my free time. + +If your company uses it in a production app, consider sponsoring this project 💰. You also can contact me for **premium** enterprise support, help with issues, prioritize bugfixes, feature requests, etc. + ## Support -This library follows the React Native [releases support policy](https://github.com/reactwg/react-native-releases/blob/main/docs/support.md).
-It is supporting the **latest version**, and the **two previous minor series**. +| version | react-native version | Xcode version | +| ------- | -------------------- | ------------- | +| 3.0.0+ | 0.63.0+ | 12+ | ## Setup @@ -26,80 +37,44 @@ $ yarn add react-native-permissions ### iOS -1. By default, no permissions are avilable. First, require the `setup` script in your `Podfile`: - -If you're using React Native 0.72+: - -```diff -# Transform this into a `node_require` generic function: -- # Resolve react_native_pods.rb with node to allow for hoisting -- require Pod::Executable.execute_command('node', ['-p', -- 'require.resolve( -- "react-native/scripts/react_native_pods.rb", -- {paths: [process.argv[1]]}, -- )', __dir__]).strip - -+ def node_require(script) -+ # Resolve script with node to allow for hoisting -+ require Pod::Executable.execute_command('node', ['-p', -+ "require.resolve( -+ '#{script}', -+ {paths: [process.argv[1]]}, -+ )", __dir__]).strip -+ end - -# Use it to require both react-native's and this package's scripts: -+ node_require('react-native/scripts/react_native_pods.rb') -+ node_require('react-native-permissions/scripts/setup.rb') -``` - -If you're using React Native < 0.72: - -```diff -require_relative '../node_modules/react-native/scripts/react_native_pods' -require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' - -# Add a require_relative for this package's script: -+ require_relative '../node_modules/react-native-permissions/scripts/setup' -``` - -2. In the same `Podfile`, call `setup_permissions` with the permissions you need. Only the permissions specified here will be added: - -```ruby -# … - -platform :ios, min_ios_version_supported -prepare_react_native_project! - -# ⬇️ uncomment the permissions you need -setup_permissions([ - # 'AppTrackingTransparency', - # 'Bluetooth', - # 'Calendars', - # 'CalendarsWriteOnly', - # 'Camera', - # 'Contacts', - # 'FaceID', - # 'LocationAccuracy', - # 'LocationAlways', - # 'LocationWhenInUse', - # 'MediaLibrary', - # 'Microphone', - # 'Motion', - # 'Notifications', - # 'PhotoLibrary', - # 'PhotoLibraryAddOnly', - # 'Reminders', - # 'Siri', - # 'SpeechRecognition', - # 'StoreKit', -]) - -# … -``` - -3. Then execute `pod install` in your `ios` directory _(📌  Note that it must be re-executed each time you update this config)_. -4. Finally, add the corresponding permissions usage descriptions to your `Info.plist`. For example: +By default no permission handler is linked. To add one, update your `package.json` by adding the permissions used in your app, then run `npx react-native setup-ios-permissions` followed by `pod install` (`reactNativePermissionsIOS.json` is also supported). + +_📌  Note that these commands must be re-executed each time you update this config, delete the `node_modules` directory or update this library. An useful trick to cover a lot of these cases is running them on `postinstall` and just run `yarn` or `npm install` manually when needed._ + +```json +{ + "reactNativePermissionsIOS": [ + "AppTrackingTransparency", + "BluetoothPeripheral", + "Calendars", + "Camera", + "Contacts", + "FaceID", + "LocalNetworkPrivacy", + "LocationAccuracy", + "LocationAlways", + "LocationWhenInUse", + "MediaLibrary", + "Microphone", + "Motion", + "Notifications", + "PhotoLibrary", + "PhotoLibraryAddOnly", + "Reminders", + "Siri", + "SpeechRecognition", + "StoreKit" + ], + "devDependencies": { + "pod-install": "0.1.38" + }, + "scripts": { + "postinstall": "react-native setup-ios-permissions && pod-install" + } +} +``` + +Then update your `Info.plist` with wanted permissions usage descriptions: ```xml @@ -107,49 +82,58 @@ setup_permissions([ - + NSAppleMusicUsageDescription - [REASON] + YOUR TEXT NSBluetoothAlwaysUsageDescription - [REASON] + YOUR TEXT NSBluetoothPeripheralUsageDescription - [REASON] - NSCalendarsFullAccessUsageDescription - [REASON] - NSCalendarsWriteOnlyAccessUsageDescription - [REASON] + YOUR TEXT + NSCalendarsUsageDescription + YOUR TEXT NSCameraUsageDescription - [REASON] + YOUR TEXT NSContactsUsageDescription - [REASON] + YOUR TEXT NSFaceIDUsageDescription - [REASON] + YOUR TEXT + NSLocalNetworkUsageDescription + YOUR TEXT NSLocationAlwaysAndWhenInUseUsageDescription - [REASON] + YOUR TEXT + NSLocationAlwaysUsageDescription + YOUR TEXT NSLocationTemporaryUsageDescriptionDictionary YOUR-PURPOSE-KEY - [REASON] + YOUR TEXT NSLocationWhenInUseUsageDescription - [REASON] + YOUR TEXT NSMicrophoneUsageDescription - [REASON] + YOUR TEXT NSMotionUsageDescription - [REASON] + YOUR TEXT NSPhotoLibraryUsageDescription - [REASON] + YOUR TEXT NSPhotoLibraryAddUsageDescription - [REASON] - NSRemindersFullAccessUsageDescription - [REASON] + YOUR TEXT + NSRemindersUsageDescription + YOUR TEXT NSSpeechRecognitionUsageDescription - [REASON] + YOUR TEXT NSSiriUsageDescription - [REASON] + YOUR TEXT NSUserTrackingUsageDescription - [REASON] + YOUR TEXT + + + + NSBonjourServices + + _lnp._tcp. + @@ -157,33 +141,6 @@ setup_permissions([ ``` -
- 🧩 For expo users, see the plugin instructions - -Add wanted permissions (see step 1) to the plugin config: - -```json -{ - "name": "My awesome app", - "plugins": [ - [ - "react-native-permissions", - { - "iosPermissions": [ - "AppTrackingTransparency", - "Bluetooth", - "CalendarsWriteOnly", - "Notifications", - "SpeechRecognition" - ] - } - ] - ] -} -``` - -
- ### Android Add all wanted permissions to your app `android/app/src/main/AndroidManifest.xml` file: @@ -219,7 +176,6 @@ Add all wanted permissions to your app `android/app/src/main/AndroidManifest.xml - @@ -246,7 +202,7 @@ Open the project solution file from the `windows` folder. In the app project ope ## 🆘 Manual linking -Because this package targets recent React Native versions, you probably don't need to link it manually. But if you have a special case, follow these additional instructions: +Because this package targets React Native 0.63.0+, you probably won't need to link it manually. Otherwise if it's not the case, follow these additional instructions. You also need to manual link the module on Windows when using React Native Windows prior to 0.63:
👀 See manual linking instructions @@ -512,7 +468,6 @@ PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE; PERMISSIONS.ANDROID.READ_MEDIA_AUDIO; PERMISSIONS.ANDROID.READ_MEDIA_IMAGES; PERMISSIONS.ANDROID.READ_MEDIA_VIDEO; -PERMISSIONS.ANDROID.READ_MEDIA_VISUAL_USER_SELECTED; PERMISSIONS.ANDROID.READ_PHONE_NUMBERS; PERMISSIONS.ANDROID.READ_PHONE_STATE; PERMISSIONS.ANDROID.READ_SMS; @@ -538,12 +493,12 @@ PERMISSIONS.ANDROID.WRITE_EXTERNAL_STORAGE; import {PERMISSIONS} from 'react-native-permissions'; PERMISSIONS.IOS.APP_TRACKING_TRANSPARENCY; -PERMISSIONS.IOS.BLUETOOTH; +PERMISSIONS.IOS.BLUETOOTH_PERIPHERAL; PERMISSIONS.IOS.CALENDARS; -PERMISSIONS.IOS.CALENDARS_WRITE_ONLY; PERMISSIONS.IOS.CAMERA; PERMISSIONS.IOS.CONTACTS; PERMISSIONS.IOS.FACE_ID; +PERMISSIONS.IOS.LOCAL_NETWORK_PRIVACY; PERMISSIONS.IOS.LOCATION_ALWAYS; PERMISSIONS.IOS.LOCATION_WHEN_IN_USE; PERMISSIONS.IOS.MEDIA_LIBRARY; @@ -734,7 +689,7 @@ type PermissionStatus = 'unavailable' | 'denied' | 'limited' | 'granted' | 'bloc Check one permission status. -_⚠️  Android will never return `blocked` on `check`, you have to call `request` to get the info._ +_⚠️  Android will never return `blocked` after a `check`, you have to request the permission to get the info._ ```ts function check(permission: string): Promise; @@ -768,11 +723,13 @@ check(PERMISSIONS.IOS.LOCATION_ALWAYS) }); ``` +--- + #### request Request one permission. -The `rationale` is only available and used on Android. It can be a native alert (a `Rationale` object) or a custom implementation (that resolves with a `boolean`). +Note that the `rationale` parameter is only available and used on Android. ```ts type Rationale = { @@ -783,10 +740,7 @@ type Rationale = { buttonNeutral?: string; }; -function request( - permission: string, - rationale?: Rationale | (() => Promise), -): Promise; +function request(permission: string, rationale?: Rationale): Promise; ``` ```js @@ -797,6 +751,8 @@ request(PERMISSIONS.IOS.LOCATION_ALWAYS).then((result) => { }); ``` +--- + #### checkNotifications Check notifications permission status and get notifications settings values. @@ -830,11 +786,13 @@ checkNotifications().then(({status, settings}) => { }); ``` +--- + #### requestNotifications Request notifications permission status and get notifications settings values. -- You have to [target at least SDK 33](https://github.com/zoontek/react-native-permissions/releases/tag/3.5.0) to perform request on Android 13+. +- You have to [target at least SDK 33](https://github.com/zoontek/react-native-permissions/releases/tag/3.5.0) to perform request on Android 13+. The permission is always granted for prior versions. - You cannot request notifications permissions on Windows. Disabling / enabling them can only be done through the App Settings. ```ts @@ -876,11 +834,13 @@ requestNotifications(['alert', 'sound']).then(({status, settings}) => { }); ``` +--- + #### checkMultiple Check multiples permissions in parallel. -_⚠️  Android will never return `blocked` on `checkMultiple`, you have to call `requestMultiple` to get the info._ +_⚠️  Android will never return `blocked` after a `check`, you have to request the permission to get the info._ ```ts function checkMultiple

( @@ -897,6 +857,8 @@ checkMultiple([PERMISSIONS.IOS.CAMERA, PERMISSIONS.IOS.FACE_ID]).then((statuses) }); ``` +--- + #### requestMultiple Request multiple permissions in sequence. @@ -916,6 +878,8 @@ requestMultiple([PERMISSIONS.IOS.CAMERA, PERMISSIONS.IOS.FACE_ID]).then((statuse }); ``` +--- + #### openSettings Open application settings. @@ -930,22 +894,26 @@ import {openSettings} from 'react-native-permissions'; openSettings().catch(() => console.warn('cannot open settings')); ``` -#### openPhotoPicker (iOS 14+) +--- + +#### openLimitedPhotoLibraryPicker (iOS 14+) Open a picker to update the photo selection when `PhotoLibrary` permission is `limited`. This will reject if unsupported or if full permission is already `granted`. ```ts -function openPhotoPicker(): Promise; +function openLimitedPhotoLibraryPicker(): Promise; ``` ```js -import {openPhotoPicker} from 'react-native-permissions'; +import {openLimitedPhotoLibraryPicker} from 'react-native-permissions'; -openPhotoPicker().catch(() => { +openLimitedPhotoLibraryPicker().catch(() => { console.warn('Cannot open photo library picker'); }); ``` +--- + #### checkLocationAccuracy (iOS 14+) When `LocationAlways` or `LocationWhenInUse` is `granted`, allow checking if the user share his precise location. @@ -964,6 +932,8 @@ checkLocationAccuracy() .catch(() => console.warn('Cannot check location accuracy')); ``` +--- + #### requestLocationAccuracy (iOS 14+) When `LocationAlways` or `LocationWhenInUse` is `granted`, allow requesting the user for his precise location. Will resolve immediately if `full` accuracy is already authorized. @@ -992,9 +962,7 @@ If you are requesting `PERMISSIONS.IOS.LOCATION_ALWAYS`, there won't be a `Alway When requesting `PERMISSIONS.IOS.LOCATION_ALWAYS`, if the user choose `Allow While Using App`, a provisional "always" status will be granted. The user will see `While Using` in the settings and later will be informed that your app is using the location in background. That looks like this: -

- Screenshot -

+![alt text](https://camo.githubusercontent.com/e8357168f4c8e754adfd940fc065520de838a21a80001839d5e740c18893ec67/68747470733a2f2f636d732e717a2e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031392f30392f696f732d31332d6c6f636174696f6e732d7465736c612d31393230783938322e6a70673f7175616c6974793d37352673747269703d616c6c26773d3132303026683d3930302663726f703d31 'Screenshot') Subsequently, if you are requesting `LOCATION_ALWAYS` permission, there is no need to request `LOCATION_WHEN_IN_USE`. If the user accepts, `LOCATION_WHEN_IN_USE` will be granted too. If the user denies, `LOCATION_WHEN_IN_USE` will be denied too. @@ -1011,11 +979,3 @@ You can then add the following line to that setup file to mock the `NativeModule ```js jest.mock('react-native-permissions', () => require('react-native-permissions/mock')); ``` - -## Sponsors - -This module is provided **as is**, I work on it in my free time. - -If you or your company uses it in a production app, consider sponsoring this project 💰. You also can contact me for **premium** enterprise support: help with issues, prioritize bugfixes, feature requests, etc. - -Sponsors list diff --git a/example/ios/RNPermissionsExample/Info.plist b/example/ios/RNPermissionsExample/Info.plist index bff9a18e..bc76b70d 100644 --- a/example/ios/RNPermissionsExample/Info.plist +++ b/example/ios/RNPermissionsExample/Info.plist @@ -26,20 +26,26 @@ NSAppTransportSecurity - NSAllowsArbitraryLoads - - NSAllowsLocalNetworking - + NSExceptionDomains + + localhost + + NSExceptionAllowsInsecureHTTPLoads + + + + NSBonjourServices + + _lnp._tcp. + NSAppleMusicUsageDescription Let me use your media library NSBluetoothAlwaysUsageDescription Let me use bluetooth NSBluetoothPeripheralUsageDescription Let me use bluetooth - NSCalendarsFullAccessUsageDescription - Let me use your calendars - NSCalendarsWriteOnlyAccessUsageDescription + NSCalendarsUsageDescription Let me use your calendars NSCameraUsageDescription Let me use the camera @@ -47,8 +53,12 @@ Let me use your contacts NSFaceIDUsageDescription Let me use FaceID + NSLocalNetworkUsageDescription + Let me use your local network NSLocationAlwaysAndWhenInUseUsageDescription Let me use your location, even in background + NSLocationAlwaysUsageDescription + Let me use your location, even in background NSLocationTemporaryUsageDescriptionDictionary full-accuracy @@ -64,7 +74,7 @@ Let me add photos NSPhotoLibraryUsageDescription Let me use your photo library - NSRemindersFullAccessUsageDescription + NSRemindersUsageDescription Let me use your reminders NSSpeechRecognitionUsageDescription Let me use speech recognition diff --git a/example/package.json b/example/package.json index be896c52..d3799d1f 100644 --- a/example/package.json +++ b/example/package.json @@ -2,37 +2,51 @@ "name": "react-native-permissions-example", "version": "0.0.1", "private": true, - "engines": { - "node": ">=18" - }, "scripts": { - "pod-backup": "cp ../RNPermissions.podspec ../RNPermissions.podspec.bak", - "pod-restore": "mv ../RNPermissions.podspec.bak ../RNPermissions.podspec", - "pod-update": "yarn pod-backup && cd ios && pod update && cd .. && yarn pod-restore", - "pod-install": "yarn pod-backup && cd ios && pod install && cd .. && yarn pod-restore", + "clean-modules": "rm -rf ./node_modules/react-native-permissions/{example,node_modules}", "clean": "rm -rf ./node_modules ./ios/Pods", - "preinstall": "cd .. && yarn && yarn build && cd example", - "postinstall": "yarn pod-install", + "preinstall": "cd .. && yarn prepack && cd example", + "postinstall": "yarn clean-modules && react-native setup-ios-permissions && pod-install", "start": "react-native start", "reinstall": "yarn clean && yarn install" }, + "reactNativePermissionsIOS": [ + "AppTrackingTransparency", + "BluetoothPeripheral", + "Calendars", + "Camera", + "Contacts", + "FaceID", + "LocalNetworkPrivacy", + "LocationAccuracy", + "LocationAlways", + "LocationWhenInUse", + "MediaLibrary", + "Microphone", + "Motion", + "Notifications", + "PhotoLibrary", + "PhotoLibraryAddOnly", + "Reminders", + "SpeechRecognition", + "StoreKit" + ], "dependencies": { "react": "18.2.0", - "react-native": "0.73.4", - "react-native-paper": "^5.11.6", - "react-native-permissions": "link:../", - "react-native-safe-area-context": "^4.8.2", - "react-native-vector-icons": "^10.0.3", - "react-native-windows": "0.73.2" + "react-native": "0.71.4", + "react-native-paper": "^5.4.1", + "react-native-permissions": "../", + "react-native-safe-area-context": "^4.5.0", + "react-native-vector-icons": "^9.2.0", + "react-native-windows": "0.71.3" }, "devDependencies": { "@babel/core": "^7.20.0", "@babel/preset-env": "^7.20.0", "@babel/runtime": "^7.20.0", - "@react-native/babel-preset": "0.73.21", - "@react-native/metro-config": "0.73.5", - "@types/react": "^18.2.47", - "babel-plugin-module-resolver": "^5.0.0", - "typescript": "^5.3.3" + "@types/react": "^18.0.28", + "metro-react-native-babel-preset": "0.73.8", + "pod-install": "0.1.38", + "typescript": "^4.9.5" } } diff --git a/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.h b/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.h new file mode 100644 index 00000000..3c0a8b24 --- /dev/null +++ b/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.h @@ -0,0 +1,5 @@ +@interface LocalNetworkPrivacy : NSObject + +- (void)checkAccessState:(void (^)(BOOL))completion; + +@end diff --git a/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.m b/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.m new file mode 100644 index 00000000..9ea9fa95 --- /dev/null +++ b/ios/LocalNetworkPrivacy/LocalNetworkPrivacy.m @@ -0,0 +1,47 @@ +#import +#import "LocalNetworkPrivacy.h" + +@interface LocalNetworkPrivacy () + +@property (nonatomic) NSNetService *service; +@property (nonatomic) void (^completion)(BOOL); +@property (nonatomic) NSTimer *timer; +@property (nonatomic) BOOL publishing; + +@end + +@implementation LocalNetworkPrivacy + +- (instancetype)init { + if (self = [super init]) { + self.service = [[NSNetService alloc] initWithDomain:@"local." type:@"_lnp._tcp." name:@"LocalNetworkPrivacy" port:1100]; + } + return self; +} + +- (void)dealloc { + [self.service stop]; +} + +- (void)checkAccessState:(void (^)(BOOL))completion { + self.completion = completion; + + self.publishing = YES; + self.service.delegate = self; + [self.service publish]; + + self.timer = [NSTimer scheduledTimerWithTimeInterval:2 repeats:NO block:^(NSTimer * _Nonnull timer) { + [self.timer invalidate]; + self.completion(NO); + }]; +} + + +#pragma mark - NSNetServiceDelegate + +- (void)netServiceDidPublish:(NSNetService *)sender { + [self.timer invalidate]; + self.completion(YES); +} + +@end diff --git a/ios/LocalNetworkPrivacy/Permission-LocalNetworkPrivacy.podspec b/ios/LocalNetworkPrivacy/Permission-LocalNetworkPrivacy.podspec new file mode 100644 index 00000000..52cefb09 --- /dev/null +++ b/ios/LocalNetworkPrivacy/Permission-LocalNetworkPrivacy.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-LocalNetworkPrivacy" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.h b/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.h new file mode 100644 index 00000000..c25281db --- /dev/null +++ b/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.h @@ -0,0 +1,5 @@ +#import "RNPermissions.h" + +@interface RNPermissionHandlerLocalNetworkPrivacy : NSObject + +@end diff --git a/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.m b/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.m new file mode 100644 index 00000000..0e69ab09 --- /dev/null +++ b/ios/LocalNetworkPrivacy/RNPermissionHandlerLocalNetworkPrivacy.m @@ -0,0 +1,33 @@ +#import "RNPermissionHandlerLocalNetworkPrivacy.h" +#import "LocalNetworkPrivacy.h" + +@implementation RNPermissionHandlerLocalNetworkPrivacy + ++ (NSArray * _Nonnull)usageDescriptionKeys { + return @[@"NSLocalNetworkUsageDescription"]; +} + ++ (NSString * _Nonnull)handlerUniqueId { + return @"ios.permission.LOCAL_NETWORK_PRIVACY"; +} + +- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { + if (![RNPermissionsHelper isFlaggedAsRequested:[[self class] handlerUniqueId]]) { + return resolve(RNPermissionStatusNotDetermined); + } + + [self requestWithResolver:resolve rejecter:reject]; +} + +- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + [RNPermissionsHelper flagAsRequested:[[self class] handlerUniqueId]]; + + LocalNetworkPrivacy *local = [LocalNetworkPrivacy new]; + [local checkAccessState:^(BOOL granted) { + resolve(granted ? RNPermissionStatusAuthorized : RNPermissionStatusDenied); + }]; +} + +@end diff --git a/ios/LocalNetworkPrivacy/RNPermissionsHelper.h b/ios/LocalNetworkPrivacy/RNPermissionsHelper.h new file mode 100644 index 00000000..19340823 --- /dev/null +++ b/ios/LocalNetworkPrivacy/RNPermissionsHelper.h @@ -0,0 +1,93 @@ +#import + +typedef NS_ENUM(NSInteger, RNPermission) { + RNPermissionUnknown = 0, +#if __has_include("RNPermissionHandlerBluetoothPeripheral.h") + RNPermissionBluetoothPeripheral = 1, +#endif +#if __has_include("RNPermissionHandlerCalendars.h") + RNPermissionCalendars = 2, +#endif +#if __has_include("RNPermissionHandlerCamera.h") + RNPermissionCamera = 3, +#endif +#if __has_include("RNPermissionHandlerContacts.h") + RNPermissionContacts = 4, +#endif +#if __has_include("RNPermissionHandlerFaceID.h") + RNPermissionFaceID = 5, +#endif +#if __has_include("RNPermissionHandlerLocationAlways.h") + RNPermissionLocationAlways = 6, +#endif +#if __has_include("RNPermissionHandlerLocationWhenInUse.h") + RNPermissionLocationWhenInUse = 7, +#endif +#if __has_include("RNPermissionHandlerMediaLibrary.h") + RNPermissionMediaLibrary = 8, +#endif +#if __has_include("RNPermissionHandlerMicrophone.h") + RNPermissionMicrophone = 9, +#endif +#if __has_include("RNPermissionHandlerMotion.h") + RNPermissionMotion = 10, +#endif +#if __has_include("RNPermissionHandlerPhotoLibrary.h") + RNPermissionPhotoLibrary = 11, +#endif +#if __has_include("RNPermissionHandlerReminders.h") + RNPermissionReminders = 12, +#endif +#if __has_include("RNPermissionHandlerSiri.h") + RNPermissionSiri = 13, +#endif +#if __has_include("RNPermissionHandlerSpeechRecognition.h") + RNPermissionSpeechRecognition = 14, +#endif +#if __has_include("RNPermissionHandlerStoreKit.h") + RNPermissionStoreKit = 15, +#endif +#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") + RNPermissionAppTrackingTransparency = 16, +#endif +#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") + RNPermissionPhotoLibraryAddOnly = 17, +#endif +#if __has_include("RNPermissionHandlerLocalNetworkPrivacy.h") + RNPermissionLocalNetworkPrivacy = 18, +#endif +}; + +typedef enum { + RNPermissionStatusNotAvailable = 0, + RNPermissionStatusNotDetermined = 1, + RNPermissionStatusRestricted = 2, + RNPermissionStatusDenied = 3, + RNPermissionStatusAuthorized = 4, + RNPermissionStatusLimited = 5, +} RNPermissionStatus; + +@protocol RNPermissionHandler + +@required + ++ (NSArray * _Nonnull)usageDescriptionKeys; + ++ (NSString * _Nonnull)handlerUniqueId; + +- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus status))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull error))reject; + +- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus status))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull error))reject; + +@end + + +@interface RNPermissionsHelper : NSObject + ++ (bool)isFlaggedAsRequested:(NSString * _Nonnull)handlerId; + ++ (void)flagAsRequested:(NSString * _Nonnull)handlerId; + +@end diff --git a/ios/LocalNetworkPrivacy/RNPermissionsModule.mm b/ios/LocalNetworkPrivacy/RNPermissionsModule.mm new file mode 100644 index 00000000..53d75062 --- /dev/null +++ b/ios/LocalNetworkPrivacy/RNPermissionsModule.mm @@ -0,0 +1,548 @@ +#import "RNPermissionsModule.h" +#import + +#if __has_include("RNPermissionHandlerBluetoothPeripheral.h") +#import "RNPermissionHandlerBluetoothPeripheral.h" +#endif +#if __has_include("RNPermissionHandlerCalendars.h") +#import "RNPermissionHandlerCalendars.h" +#endif +#if __has_include("RNPermissionHandlerCamera.h") +#import "RNPermissionHandlerCamera.h" +#endif +#if __has_include("RNPermissionHandlerContacts.h") +#import "RNPermissionHandlerContacts.h" +#endif +#if __has_include("RNPermissionHandlerFaceID.h") +#import "RNPermissionHandlerFaceID.h" +#endif +#if __has_include("RNPermissionHandlerLocationAlways.h") +#import "RNPermissionHandlerLocationAlways.h" +#endif +#if __has_include("RNPermissionHandlerLocationWhenInUse.h") +#import "RNPermissionHandlerLocationWhenInUse.h" +#endif +#if __has_include("RNPermissionHandlerMediaLibrary.h") +#import "RNPermissionHandlerMediaLibrary.h" +#endif +#if __has_include("RNPermissionHandlerMicrophone.h") +#import "RNPermissionHandlerMicrophone.h" +#endif +#if __has_include("RNPermissionHandlerMotion.h") +#import "RNPermissionHandlerMotion.h" +#endif +#if __has_include("RNPermissionHandlerNotifications.h") +#import "RNPermissionHandlerNotifications.h" +#endif +#if __has_include("RNPermissionHandlerPhotoLibrary.h") +#import "RNPermissionHandlerPhotoLibrary.h" +#endif +#if __has_include("RNPermissionHandlerReminders.h") +#import "RNPermissionHandlerReminders.h" +#endif +#if __has_include("RNPermissionHandlerSiri.h") +#import "RNPermissionHandlerSiri.h" +#endif +#if __has_include("RNPermissionHandlerSpeechRecognition.h") +#import "RNPermissionHandlerSpeechRecognition.h" +#endif +#if __has_include("RNPermissionHandlerStoreKit.h") +#import "RNPermissionHandlerStoreKit.h" +#endif +#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") +#import "RNPermissionHandlerAppTrackingTransparency.h" +#endif +#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") +#import "RNPermissionHandlerPhotoLibraryAddOnly.h" +#endif +#if __has_include("RNPermissionHandlerLocationAccuracy.h") +#import "RNPermissionHandlerLocationAccuracy.h" +#endif +#if __has_include("RNPermissionHandlerLocalNetworkPrivacy.h") +#import "RNPermissionHandlerLocalNetworkPrivacy.h" +#endif + +@implementation RCTConvert(RNPermission) + +RCT_ENUM_CONVERTER(RNPermission, (@{ +#if __has_include("RNPermissionHandlerBluetoothPeripheral.h") + [RNPermissionHandlerBluetoothPeripheral handlerUniqueId]: @(RNPermissionBluetoothPeripheral), +#endif +#if __has_include("RNPermissionHandlerCalendars.h") + [RNPermissionHandlerCalendars handlerUniqueId]: @(RNPermissionCalendars), +#endif +#if __has_include("RNPermissionHandlerCamera.h") + [RNPermissionHandlerCamera handlerUniqueId]: @(RNPermissionCamera), +#endif +#if __has_include("RNPermissionHandlerContacts.h") + [RNPermissionHandlerContacts handlerUniqueId]: @(RNPermissionContacts), +#endif +#if __has_include("RNPermissionHandlerFaceID.h") + [RNPermissionHandlerFaceID handlerUniqueId]: @(RNPermissionFaceID), +#endif +#if __has_include("RNPermissionHandlerLocationAlways.h") + [RNPermissionHandlerLocationAlways handlerUniqueId]: @(RNPermissionLocationAlways), +#endif +#if __has_include("RNPermissionHandlerLocationWhenInUse.h") + [RNPermissionHandlerLocationWhenInUse handlerUniqueId]: @(RNPermissionLocationWhenInUse), +#endif +#if __has_include("RNPermissionHandlerMediaLibrary.h") + [RNPermissionHandlerMediaLibrary handlerUniqueId]: @(RNPermissionMediaLibrary), +#endif +#if __has_include("RNPermissionHandlerMicrophone.h") + [RNPermissionHandlerMicrophone handlerUniqueId]: @(RNPermissionMicrophone), +#endif +#if __has_include("RNPermissionHandlerMotion.h") + [RNPermissionHandlerMotion handlerUniqueId]: @(RNPermissionMotion), +#endif +#if __has_include("RNPermissionHandlerPhotoLibrary.h") + [RNPermissionHandlerPhotoLibrary handlerUniqueId]: @(RNPermissionPhotoLibrary), +#endif +#if __has_include("RNPermissionHandlerReminders.h") + [RNPermissionHandlerReminders handlerUniqueId]: @(RNPermissionReminders), +#endif +#if __has_include("RNPermissionHandlerSiri.h") + [RNPermissionHandlerSiri handlerUniqueId]: @(RNPermissionSiri), +#endif +#if __has_include("RNPermissionHandlerSpeechRecognition.h") + [RNPermissionHandlerSpeechRecognition handlerUniqueId]: @(RNPermissionSpeechRecognition), +#endif +#if __has_include("RNPermissionHandlerStoreKit.h") + [RNPermissionHandlerStoreKit handlerUniqueId]: @(RNPermissionStoreKit), +#endif +#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") + [RNPermissionHandlerAppTrackingTransparency handlerUniqueId]: @(RNPermissionAppTrackingTransparency), +#endif +#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") + [RNPermissionHandlerPhotoLibraryAddOnly handlerUniqueId]: @(RNPermissionPhotoLibraryAddOnly), +#endif +#if __has_include("RNPermissionHandlerLocalNetworkPrivacy.h") + [RNPermissionHandlerLocalNetworkPrivacy handlerUniqueId]: @(RNPermissionLocalNetworkPrivacy), +#endif +}), RNPermissionUnknown, integerValue); + +@end + +@interface RNPermissionsModule() + +@property (nonatomic, strong) NSMutableDictionary> *_Nonnull handlers; + +@end + +@implementation RNPermissionsModule + +RCT_EXPORT_MODULE(); + ++ (BOOL)requiresMainQueueSetup { + return YES; +} + +- (dispatch_queue_t)methodQueue { + return dispatch_get_main_queue(); +} + +- (NSDictionary *)constantsToExport { + NSMutableArray *available = [NSMutableArray new]; + +#if __has_include("RNPermissionHandlerBluetoothPeripheral.h") + [available addObject:[RNPermissionHandlerBluetoothPeripheral handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerCalendars.h") + [available addObject:[RNPermissionHandlerCalendars handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerCamera.h") + [available addObject:[RNPermissionHandlerCamera handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerContacts.h") + [available addObject:[RNPermissionHandlerContacts handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerFaceID.h") + [available addObject:[RNPermissionHandlerFaceID handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerLocationAlways.h") + [available addObject:[RNPermissionHandlerLocationAlways handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerLocationWhenInUse.h") + [available addObject:[RNPermissionHandlerLocationWhenInUse handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerMediaLibrary.h") + [available addObject:[RNPermissionHandlerMediaLibrary handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerMicrophone.h") + [available addObject:[RNPermissionHandlerMicrophone handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerMotion.h") + [available addObject:[RNPermissionHandlerMotion handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerNotifications.h") + [available addObject:[RNPermissionHandlerNotifications handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerPhotoLibrary.h") + [available addObject:[RNPermissionHandlerPhotoLibrary handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerReminders.h") + [available addObject:[RNPermissionHandlerReminders handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerSiri.h") + [available addObject:[RNPermissionHandlerSiri handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerSpeechRecognition.h") + [available addObject:[RNPermissionHandlerSpeechRecognition handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerStoreKit.h") + [available addObject:[RNPermissionHandlerStoreKit handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") + [available addObject:[RNPermissionHandlerAppTrackingTransparency handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") + [available addObject:[RNPermissionHandlerPhotoLibraryAddOnly handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerLocationAccuracy.h") + [available addObject:[RNPermissionHandlerLocationAccuracy handlerUniqueId]]; +#endif +#if __has_include("RNPermissionHandlerLocalNetworkPrivacy.h") + [available addObject:[RNPermissionHandlerLocalNetworkPrivacy handlerUniqueId]]; +#endif + +#if RCT_DEV + if ([available count] == 0) { + NSMutableString *message = [NSMutableString new]; + + [message appendString:@"⚠ No permission handler detected.\n\n"]; + [message appendString:@"• Check that you added at least one permission handler in your package.json reactNativePermissionsIOS config.\n"]; + [message appendString:@"• Uninstall this app, reinstall your Pods, delete your Xcode DerivedData folder and rebuild it.\n"]; + + RCTLogError(@"%@", message); + } +#endif + + return @{ @"available": available }; +} + +- (void)checkUsageDescriptionKeys:(NSArray * _Nonnull)keys { +#if RCT_DEV + for (NSString *key in keys) { + if (![[NSBundle mainBundle] objectForInfoDictionaryKey:key]) { + RCTLogError(@"Cannot check or request permission without the required \"%@\" entry in your app \"Info.plist\" file", key); + return; + } + } +#endif +} + +- (id _Nullable)handlerForPermission:(RNPermission)permission { + id handler = nil; + + switch (permission) { +#if __has_include("RNPermissionHandlerBluetoothPeripheral.h") + case RNPermissionBluetoothPeripheral: + handler = [RNPermissionHandlerBluetoothPeripheral new]; + break; +#endif +#if __has_include("RNPermissionHandlerCalendars.h") + case RNPermissionCalendars: + handler = [RNPermissionHandlerCalendars new]; + break; +#endif +#if __has_include("RNPermissionHandlerCamera.h") + case RNPermissionCamera: + handler = [RNPermissionHandlerCamera new]; + break; +#endif +#if __has_include("RNPermissionHandlerContacts.h") + case RNPermissionContacts: + handler = [RNPermissionHandlerContacts new]; + break; +#endif +#if __has_include("RNPermissionHandlerFaceID.h") + case RNPermissionFaceID: + handler = [RNPermissionHandlerFaceID new]; + break; +#endif +#if __has_include("RNPermissionHandlerLocationAlways.h") + case RNPermissionLocationAlways: + handler = [RNPermissionHandlerLocationAlways new]; + break; +#endif +#if __has_include("RNPermissionHandlerLocationWhenInUse.h") + case RNPermissionLocationWhenInUse: + handler = [RNPermissionHandlerLocationWhenInUse new]; + break; +#endif +#if __has_include("RNPermissionHandlerMediaLibrary.h") + case RNPermissionMediaLibrary: + handler = [RNPermissionHandlerMediaLibrary new]; + break; +#endif +#if __has_include("RNPermissionHandlerMicrophone.h") + case RNPermissionMicrophone: + handler = [RNPermissionHandlerMicrophone new]; + break; +#endif +#if __has_include("RNPermissionHandlerMotion.h") + case RNPermissionMotion: + handler = [RNPermissionHandlerMotion new]; + break; +#endif +#if __has_include("RNPermissionHandlerPhotoLibrary.h") + case RNPermissionPhotoLibrary: + handler = [RNPermissionHandlerPhotoLibrary new]; + break; +#endif +#if __has_include("RNPermissionHandlerReminders.h") + case RNPermissionReminders: + handler = [RNPermissionHandlerReminders new]; + break; +#endif +#if __has_include("RNPermissionHandlerSiri.h") + case RNPermissionSiri: + handler = [RNPermissionHandlerSiri new]; + break; +#endif +#if __has_include("RNPermissionHandlerSpeechRecognition.h") + case RNPermissionSpeechRecognition: + handler = [RNPermissionHandlerSpeechRecognition new]; + break; +#endif +#if __has_include("RNPermissionHandlerStoreKit.h") + case RNPermissionStoreKit: + handler = [RNPermissionHandlerStoreKit new]; + break; +#endif +#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") + case RNPermissionAppTrackingTransparency: + handler = [RNPermissionHandlerAppTrackingTransparency new]; + break; +#endif +#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") + case RNPermissionPhotoLibraryAddOnly: + handler = [RNPermissionHandlerPhotoLibraryAddOnly new]; + break; +#endif +#if __has_include("RNPermissionHandlerLocalNetworkPrivacy.h") + case RNPermissionLocalNetworkPrivacy: + handler = [RNPermissionHandlerLocalNetworkPrivacy new]; + break; +#endif + case RNPermissionUnknown: + break; // RCTConvert prevents this case + } + + [self checkUsageDescriptionKeys:[[handler class] usageDescriptionKeys]]; + return handler; +} + +- (NSString *)stringForStatus:(RNPermissionStatus)status { + switch (status) { + case RNPermissionStatusNotAvailable: + case RNPermissionStatusRestricted: + return @"unavailable"; + case RNPermissionStatusNotDetermined: + return @"denied"; + case RNPermissionStatusDenied: + return @"blocked"; + case RNPermissionStatusLimited: + return @"limited"; + case RNPermissionStatusAuthorized: + return @"granted"; + } +} + +- (NSString *)lockHandler:(id)handler { + if (_handlers == nil) { + _handlers = [NSMutableDictionary new]; + } + + NSString *lockId = [[NSUUID UUID] UUIDString]; + [_handlers setObject:handler forKey:lockId]; + + return lockId; +} + +- (void)unlockHandler:(NSString * _Nonnull)lockId { + if (_handlers != nil) { + [self.handlers removeObjectForKey:lockId]; + } +} + +RCT_EXPORT_METHOD(openSettings:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { + UIApplication *sharedApplication = [UIApplication sharedApplication]; + NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; + + [sharedApplication openURL:url options:@{} completionHandler:^(BOOL success) { + if (success) { + resolve(@(true)); + } else { + reject(@"cannot_open_settings", @"Cannot open application settings", nil); + } + }]; +} + +RCT_EXPORT_METHOD(check: +#ifdef RCT_NEW_ARCH_ENABLED + (NSString *)permission +#else + (RNPermission)permission +#endif + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#ifdef RCT_NEW_ARCH_ENABLED + id handler = [self handlerForPermission:[RCTConvert RNPermission:permission]]; +#else + id handler = [self handlerForPermission:permission]; +#endif + + NSString *lockId = [self lockHandler:handler]; + + [handler checkWithResolver:^(RNPermissionStatus status) { + resolve([self stringForStatus:status]); + [self unlockHandler:lockId]; + } rejecter:^(NSError *error) { + reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); + [self unlockHandler:lockId]; + }]; +} + +RCT_EXPORT_METHOD(request: +#ifdef RCT_NEW_ARCH_ENABLED + (NSString *)permission +#else + (RNPermission)permission +#endif + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#ifdef RCT_NEW_ARCH_ENABLED + id handler = [self handlerForPermission:[RCTConvert RNPermission:permission]]; +#else + id handler = [self handlerForPermission:permission]; +#endif + + NSString *lockId = [self lockHandler:handler]; + + [handler requestWithResolver:^(RNPermissionStatus status) { + resolve([self stringForStatus:status]); + [self unlockHandler:lockId]; + } rejecter:^(NSError *error) { + reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); + [self unlockHandler:lockId]; + }]; +} + +RCT_EXPORT_METHOD(checkNotifications:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#if __has_include("RNPermissionHandlerNotifications.h") + RNPermissionHandlerNotifications *handler = [RNPermissionHandlerNotifications new]; + NSString *lockId = [self lockHandler:(id)handler]; + + [handler checkWithResolver:^(RNPermissionStatus status, NSDictionary * _Nonnull settings) { + resolve(@{ @"status": [self stringForStatus:status], @"settings": settings }); + [self unlockHandler:lockId]; + } rejecter:^(NSError * _Nonnull error) { + reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); + [self unlockHandler:lockId]; + }]; +#else + reject(@"notifications_pod_missing", @"Notifications permission pod is missing", nil); +#endif +} + +RCT_EXPORT_METHOD(requestNotifications:(NSArray * _Nonnull)options + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#if __has_include("RNPermissionHandlerNotifications.h") + RNPermissionHandlerNotifications *handler = [RNPermissionHandlerNotifications new]; + NSString *lockId = [self lockHandler:(id)handler]; + + [handler requestWithResolver:^(RNPermissionStatus status, NSDictionary * _Nonnull settings) { + resolve(@{ @"status": [self stringForStatus:status], @"settings": settings }); + [self unlockHandler:lockId]; + } rejecter:^(NSError * _Nonnull error) { + reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); + [self unlockHandler:lockId]; + } options:options]; +#else + reject(@"notifications_pod_missing", @"Notifications permission pod is missing", nil); +#endif +} + +RCT_EXPORT_METHOD(openLimitedPhotoLibraryPicker:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#if __has_include("RNPermissionHandlerPhotoLibrary.h") + RNPermissionHandlerPhotoLibrary *handler = [RNPermissionHandlerPhotoLibrary new]; + [handler openLimitedPhotoLibraryPickerWithResolver:resolve rejecter:reject]; +#else + reject(@"photo_library_pod_missing", @"PhotoLibrary permission pod is missing", nil); +#endif +} + +RCT_EXPORT_METHOD(checkLocationAccuracy:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#if __has_include("RNPermissionHandlerLocationAccuracy.h") + [self checkUsageDescriptionKeys:[RNPermissionHandlerLocationAccuracy usageDescriptionKeys]]; + + RNPermissionHandlerLocationAccuracy *handler = [RNPermissionHandlerLocationAccuracy new]; + [handler checkWithResolver:resolve rejecter:reject]; +#else + reject(@"location_accuracy_pod_missing", @"LocationAccuracy permission pod is missing", nil); +#endif +} + +RCT_EXPORT_METHOD(requestLocationAccuracy:(NSString * _Nonnull)purposeKey + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject) { +#if __has_include("RNPermissionHandlerLocationAccuracy.h") + [self checkUsageDescriptionKeys:[RNPermissionHandlerLocationAccuracy usageDescriptionKeys]]; + + RNPermissionHandlerLocationAccuracy *handler = [RNPermissionHandlerLocationAccuracy new]; + [handler requestWithPurposeKey:purposeKey resolver:resolve rejecter:reject]; +#else + reject(@"location_accuracy_pod_missing", @"LocationAccuracy permission pod is missing", nil); +#endif +} + +- (void)checkMultiplePermissions:(NSArray *)permissions + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject { + reject(@"RNPermissions:checkMultiplePermissions", @"checkMultiplePermissions is not supported on iOS", nil); +} + +- (void)checkPermission:(NSString *)permission + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject { + reject(@"RNPermissions:checkPermission", @"checkPermission is not supported on iOS", nil); +} + +- (void)requestMultiplePermissions:(NSArray *)permissions + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject { + reject(@"RNPermissions:requestMultiplePermissions", @"requestMultiplePermissions is not supported on iOS", nil); +} + +- (void)requestPermission:(NSString *)permission + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject { + reject(@"RNPermissions:requestPermission", @"requestPermission is not supported on iOS", nil); +} + +- (void)shouldShowRequestPermissionRationale:(NSString *)permission + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject { + reject(@"RNPermissions:shouldShowRequestPermissionRationale", @"shouldShowRequestPermissionRationale is not supported on iOS", nil); +} + +#if RCT_NEW_ARCH_ENABLED + +- (facebook::react::ModuleConstants)getConstants { + return [self constantsToExport]; +} + +- (std::shared_ptr)getTurboModule: + (const facebook::react::ObjCTurboModule::InitParams &)params { + return std::make_shared(params); +} + +#endif + +@end diff --git a/src/permissions.ios.ts b/src/permissions.ios.ts index 33082e07..264bef72 100644 --- a/src/permissions.ios.ts +++ b/src/permissions.ios.ts @@ -3,12 +3,12 @@ import type {WindowsPermissionMap} from './permissions.windows'; const IOS = Object.freeze({ APP_TRACKING_TRANSPARENCY: 'ios.permission.APP_TRACKING_TRANSPARENCY', - BLUETOOTH: 'ios.permission.BLUETOOTH', + BLUETOOTH_PERIPHERAL: 'ios.permission.BLUETOOTH_PERIPHERAL', CALENDARS: 'ios.permission.CALENDARS', - CALENDARS_WRITE_ONLY: 'ios.permission.CALENDARS_WRITE_ONLY', CAMERA: 'ios.permission.CAMERA', CONTACTS: 'ios.permission.CONTACTS', FACE_ID: 'ios.permission.FACE_ID', + LOCAL_NETWORK_PRIVACY: 'ios.permission.LOCAL_NETWORK_PRIVACY', LOCATION_ALWAYS: 'ios.permission.LOCATION_ALWAYS', LOCATION_WHEN_IN_USE: 'ios.permission.LOCATION_WHEN_IN_USE', MEDIA_LIBRARY: 'ios.permission.MEDIA_LIBRARY', From 261d744e0fa3d3afd3de8a311371db4d59d4e8f3 Mon Sep 17 00:00:00 2001 From: kikimaxs Date: Sat, 18 May 2024 02:07:37 +0700 Subject: [PATCH 2/2] old data --- RNPermissions.podspec | 53 +- android/build.gradle | 108 +- android/src/main/AndroidManifest.xml | 4 +- android/src/main/AndroidManifestNew.xml | 3 - .../rnpermissions/RNPermissionsModule.java | 433 ++ .../RNPermissionsModuleImpl.java | 366 -- .../rnpermissions/RNPermissionsPackage.java | 115 +- .../rnpermissions/RNPermissionsModule.java | 96 - .../rnpermissions/RNPermissionsModule.java | 100 - .../NativePermissionsModuleSpec.java | 112 + example/.node-version | 1 + example/.ruby-version | 1 + example/{src => }/App.tsx | 11 +- example/Gemfile | 7 +- example/android/app/build.gradle | 63 +- .../android/app/src/debug/AndroidManifest.xml | 6 +- .../ReactNativeFlipper.java | 75 + .../android/app/src/main/AndroidManifest.xml | 35 +- .../assets/fonts/MaterialCommunityIcons.ttf | Bin 1147844 -> 899432 bytes .../rnpermissionsexample/MainActivity.java | 35 + .../com/rnpermissionsexample/MainActivity.kt | 22 - .../rnpermissionsexample/MainApplication.java | 62 + .../rnpermissionsexample/MainApplication.kt | 45 - .../ReactNativeFlipper.java | 20 + example/android/build.gradle | 18 +- example/android/gradle.properties | 3 + .../android/gradle/wrapper/gradle-wrapper.jar | Bin 63721 -> 59821 bytes .../gradle/wrapper/gradle-wrapper.properties | 4 +- example/android/gradlew | 282 +- example/android/gradlew.bat | 181 +- example/android/settings.gradle | 2 +- example/babel.config.js | 11 +- example/index.js | 2 +- example/ios/Podfile | 52 +- example/ios/Podfile.lock | 1417 +---- .../project.pbxproj | 47 +- .../ios/RNPermissionsExample/AppDelegate.mm | 15 +- example/metro.config.js | 53 +- example/react-native.config.js | 7 - example/tsconfig.json | 29 +- example/windows/Example/Example.vcxproj | 16 +- example/windows/Example/packages.config | 6 +- example/yarn.lock | 4669 +++++++------- ...Permission-AppTrackingTransparency.podspec | 21 + ...PermissionHandlerAppTrackingTransparency.h | 2 +- ...ermissionHandlerAppTrackingTransparency.m} | 38 +- ios/Bluetooth/RNPermissionHandlerBluetooth.h | 5 - .../Permission-BluetoothPeripheral.podspec | 20 + .../RNPermissionHandlerBluetoothPeripheral.h | 5 + .../RNPermissionHandlerBluetoothPeripheral.m} | 12 +- ios/Calendars/Permission-Calendars.podspec | 20 + ios/Calendars/RNPermissionHandlerCalendars.h | 2 +- ...dars.mm => RNPermissionHandlerCalendars.m} | 20 +- .../RNPermissionHandlerCalendarsWriteOnly.h | 5 - .../RNPermissionHandlerCalendarsWriteOnly.mm | 49 - ios/Camera/Permission-Camera.podspec | 20 + ios/Camera/RNPermissionHandlerCamera.h | 2 +- ...rCamera.mm => RNPermissionHandlerCamera.m} | 2 +- ios/Contacts/Permission-Contacts.podspec | 20 + ios/Contacts/RNPermissionHandlerContacts.h | 2 +- ...tacts.mm => RNPermissionHandlerContacts.m} | 2 +- ios/FaceID/Permission-FaceID.podspec | 20 + ios/FaceID/RNPermissionHandlerFaceID.h | 2 +- ios/FaceID/RNPermissionHandlerFaceID.m | 107 + ios/FaceID/RNPermissionHandlerFaceID.mm | 116 - .../Permission-LocationAccuracy.podspec | 20 + .../RNPermissionHandlerLocationAccuracy.h | 2 +- ... => RNPermissionHandlerLocationAccuracy.m} | 10 +- .../Permission-LocationAlways.podspec | 20 + .../RNPermissionHandlerLocationAlways.h | 2 +- ...mm => RNPermissionHandlerLocationAlways.m} | 15 +- .../Permission-LocationWhenInUse.podspec | 20 + .../RNPermissionHandlerLocationWhenInUse.h | 2 +- ...=> RNPermissionHandlerLocationWhenInUse.m} | 9 +- .../Permission-MediaLibrary.podspec | 20 + .../RNPermissionHandlerMediaLibrary.h | 2 +- ...y.mm => RNPermissionHandlerMediaLibrary.m} | 6 +- ios/Microphone/Permission-Microphone.podspec | 20 + .../RNPermissionHandlerMicrophone.h | 2 +- .../RNPermissionHandlerMicrophone.m | 34 + .../RNPermissionHandlerMicrophone.mm | 51 - ios/Motion/Permission-Motion.podspec | 20 + ios/Motion/RNPermissionHandlerMotion.h | 2 +- ...rMotion.mm => RNPermissionHandlerMotion.m} | 30 +- .../Permission-Notifications.podspec | 20 + .../RNPermissionHandlerNotifications.h | 2 +- ....mm => RNPermissionHandlerNotifications.m} | 54 +- .../Permission-PhotoLibrary.podspec | 21 + .../RNPermissionHandlerPhotoLibrary.h | 6 +- ...y.mm => RNPermissionHandlerPhotoLibrary.m} | 35 +- .../Permission-PhotoLibraryAddOnly.podspec | 20 + .../RNPermissionHandlerPhotoLibraryAddOnly.h | 2 +- ... RNPermissionHandlerPhotoLibraryAddOnly.m} | 2 +- ios/PrivacyInfo.xcprivacy | 23 - ios/RNPermissions.h | 38 - ios/RNPermissions.mm | 454 -- ios/RNPermissions.xcodeproj/project.pbxproj | 14 +- .../RNPermissionsHelper.h | 0 ios/RNPermissionsHelper.m | 27 + ios/RNPermissionsModule.h | 20 + .../RNPermissionsModule.mm | 0 ios/Reminders/Permission-Reminders.podspec | 20 + ios/Reminders/RNPermissionHandlerReminders.h | 2 +- ...ders.mm => RNPermissionHandlerReminders.m} | 20 +- ios/Siri/Permission-Siri.podspec | 20 + ios/Siri/RNPermissionHandlerSiri.h | 2 +- ...ndlerSiri.mm => RNPermissionHandlerSiri.m} | 2 +- .../Permission-SpeechRecognition.podspec | 20 + .../RNPermissionHandlerSpeechRecognition.h | 2 +- ...=> RNPermissionHandlerSpeechRecognition.m} | 2 +- ios/StoreKit/Permission-StoreKit.podspec | 20 + ios/StoreKit/RNPermissionHandlerStoreKit.h | 2 +- ...reKit.mm => RNPermissionHandlerStoreKit.m} | 2 +- mock.js | 4 +- package.json | 58 +- react-native.config.js | 74 + src/NativePermissionsModule.ts | 29 + src/NativeRNPermissions.ts | 31 - src/contract.ts | 8 +- src/expo.ts | 75 - src/index.ts | 4 +- src/methods.android.ts | 78 +- src/methods.ios.ts | 16 +- src/methods.ts | 15 +- src/methods.windows.ts | 6 +- src/permissions.android.ts | 1 - src/unsupportedPlatformMethods.ts | 2 +- tsconfig.json | 23 +- windows/RNPermissions/RNPermissions.vcxproj | 13 +- windows/RNPermissions/packages.config | 6 +- yarn.lock | 5446 +++++++++-------- 131 files changed, 7972 insertions(+), 8135 deletions(-) delete mode 100644 android/src/main/AndroidManifestNew.xml create mode 100644 android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModule.java delete mode 100644 android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModuleImpl.java delete mode 100644 android/src/newarch/com/zoontek/rnpermissions/RNPermissionsModule.java delete mode 100644 android/src/oldarch/com/zoontek/rnpermissions/RNPermissionsModule.java create mode 100644 android/src/paper/java/com/zoontek/rnpermissions/NativePermissionsModuleSpec.java create mode 100644 example/.node-version create mode 100644 example/.ruby-version rename example/{src => }/App.tsx (93%) create mode 100644 example/android/app/src/debug/java/com/rnpermissionsexample/ReactNativeFlipper.java create mode 100644 example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.java delete mode 100644 example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.kt create mode 100644 example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.java delete mode 100644 example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.kt create mode 100644 example/android/app/src/release/java/com/rnpermissionsexample/ReactNativeFlipper.java delete mode 100644 example/react-native.config.js create mode 100644 ios/AppTrackingTransparency/Permission-AppTrackingTransparency.podspec rename ios/AppTrackingTransparency/{RNPermissionHandlerAppTrackingTransparency.mm => RNPermissionHandlerAppTrackingTransparency.m} (70%) delete mode 100644 ios/Bluetooth/RNPermissionHandlerBluetooth.h create mode 100644 ios/BluetoothPeripheral/Permission-BluetoothPeripheral.podspec create mode 100644 ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.h rename ios/{Bluetooth/RNPermissionHandlerBluetooth.mm => BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.m} (91%) create mode 100644 ios/Calendars/Permission-Calendars.podspec rename ios/Calendars/{RNPermissionHandlerCalendars.mm => RNPermissionHandlerCalendars.m} (67%) delete mode 100644 ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.h delete mode 100644 ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.mm create mode 100644 ios/Camera/Permission-Camera.podspec rename ios/Camera/{RNPermissionHandlerCamera.mm => RNPermissionHandlerCamera.m} (97%) create mode 100644 ios/Contacts/Permission-Contacts.podspec rename ios/Contacts/{RNPermissionHandlerContacts.mm => RNPermissionHandlerContacts.m} (97%) create mode 100644 ios/FaceID/Permission-FaceID.podspec create mode 100644 ios/FaceID/RNPermissionHandlerFaceID.m delete mode 100644 ios/FaceID/RNPermissionHandlerFaceID.mm create mode 100644 ios/LocationAccuracy/Permission-LocationAccuracy.podspec rename ios/LocationAccuracy/{RNPermissionHandlerLocationAccuracy.mm => RNPermissionHandlerLocationAccuracy.m} (91%) create mode 100644 ios/LocationAlways/Permission-LocationAlways.podspec rename ios/LocationAlways/{RNPermissionHandlerLocationAlways.mm => RNPermissionHandlerLocationAlways.m} (84%) create mode 100644 ios/LocationWhenInUse/Permission-LocationWhenInUse.podspec rename ios/LocationWhenInUse/{RNPermissionHandlerLocationWhenInUse.mm => RNPermissionHandlerLocationWhenInUse.m} (89%) create mode 100644 ios/MediaLibrary/Permission-MediaLibrary.podspec rename ios/MediaLibrary/{RNPermissionHandlerMediaLibrary.mm => RNPermissionHandlerMediaLibrary.m} (93%) create mode 100644 ios/Microphone/Permission-Microphone.podspec create mode 100644 ios/Microphone/RNPermissionHandlerMicrophone.m delete mode 100644 ios/Microphone/RNPermissionHandlerMicrophone.mm create mode 100644 ios/Motion/Permission-Motion.podspec rename ios/Motion/{RNPermissionHandlerMotion.mm => RNPermissionHandlerMotion.m} (70%) create mode 100644 ios/Notifications/Permission-Notifications.podspec rename ios/Notifications/{RNPermissionHandlerNotifications.mm => RNPermissionHandlerNotifications.m} (67%) create mode 100644 ios/PhotoLibrary/Permission-PhotoLibrary.podspec rename ios/PhotoLibrary/{RNPermissionHandlerPhotoLibrary.mm => RNPermissionHandlerPhotoLibrary.m} (63%) create mode 100644 ios/PhotoLibraryAddOnly/Permission-PhotoLibraryAddOnly.podspec rename ios/PhotoLibraryAddOnly/{RNPermissionHandlerPhotoLibraryAddOnly.mm => RNPermissionHandlerPhotoLibraryAddOnly.m} (98%) delete mode 100644 ios/PrivacyInfo.xcprivacy delete mode 100644 ios/RNPermissions.h delete mode 100644 ios/RNPermissions.mm rename ios/{LocalNetworkPrivacy => }/RNPermissionsHelper.h (100%) create mode 100644 ios/RNPermissionsHelper.m create mode 100644 ios/RNPermissionsModule.h rename ios/{LocalNetworkPrivacy => }/RNPermissionsModule.mm (100%) create mode 100644 ios/Reminders/Permission-Reminders.podspec rename ios/Reminders/{RNPermissionHandlerReminders.mm => RNPermissionHandlerReminders.m} (67%) create mode 100644 ios/Siri/Permission-Siri.podspec rename ios/Siri/{RNPermissionHandlerSiri.mm => RNPermissionHandlerSiri.m} (97%) create mode 100644 ios/SpeechRecognition/Permission-SpeechRecognition.podspec rename ios/SpeechRecognition/{RNPermissionHandlerSpeechRecognition.mm => RNPermissionHandlerSpeechRecognition.m} (98%) create mode 100644 ios/StoreKit/Permission-StoreKit.podspec rename ios/StoreKit/{RNPermissionHandlerStoreKit.mm => RNPermissionHandlerStoreKit.m} (97%) create mode 100644 react-native.config.js create mode 100644 src/NativePermissionsModule.ts delete mode 100644 src/NativeRNPermissions.ts delete mode 100644 src/expo.ts diff --git a/RNPermissions.podspec b/RNPermissions.podspec index 6bc38ffe..4185650f 100644 --- a/RNPermissions.podspec +++ b/RNPermissions.podspec @@ -1,27 +1,46 @@ -require "json" +require 'json' +package = JSON.parse(File.read('./package.json')) -package = JSON.parse(File.read(File.join(__dir__, "package.json"))) +fabric_enabled = ENV['RCT_NEW_ARCH_ENABLED'] == '1' Pod::Spec.new do |s| - s.name = "RNPermissions" + s.name = "RNPermissions" - s.version = package["version"] - s.license = package["license"] - s.summary = package["description"] - s.author = package["author"] - s.homepage = package["homepage"] + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] - s.platforms = { :ios => "12.4", :tvos => "12.4" } - s.requires_arc = true + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true - s.source = { :git => package["repository"]["url"], :tag => s.version } - s.source_files = "ios/*.{h,mm}" - # s.frameworks = - # s.resource_bundles = + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "ios/*.{h,m,mm}" - if ENV['RCT_NEW_ARCH_ENABLED'] == "1" then - install_modules_dependencies(s) + if fabric_enabled + folly_compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32' + + s.pod_target_xcconfig = { + 'HEADER_SEARCH_PATHS' => '"$(PODS_ROOT)/boost" "$(PODS_ROOT)/boost-for-react-native" "$(PODS_ROOT)/RCT-Folly"', + 'CLANG_CXX_LANGUAGE_STANDARD' => 'c++17', + } + + s.platforms = { ios: '11.0', tvos: '11.0' } + s.compiler_flags = folly_compiler_flags + ' -DRCT_NEW_ARCH_ENABLED' + + s.dependency "React" + s.dependency "React-RCTFabric" # This is for fabric component + s.dependency "React-Codegen" + s.dependency "RCT-Folly" + s.dependency "RCTRequired" + s.dependency "RCTTypeSafety" + s.dependency "ReactCommon/turbomodule/core" else - s.dependency "React-Core" + s.platforms = { :ios => "9.0", :tvos => "9.0" } + + s.dependency "React-Core" end + end diff --git a/android/build.gradle b/android/build.gradle index 23378a83..dada51b0 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,71 +1,111 @@ +def safeExtGet(prop, fallback) { + rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback +} + buildscript { - ext.safeExtGet = {prop, fallback -> - rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback + // The Android Gradle plugin is only required when opening the android folder stand-alone. + // This avoids unnecessary downloads and potential conflicts when the library is included as a + // module dependency in an application project. + if (project == rootProject) { + repositories { + google() + mavenCentral() + } + dependencies { + classpath("com.android.tools.build:gradle:4.2.2") + } } - repositories { - google() - gradlePluginPortal() +} + +apply plugin: "com.android.library" + +def resolveReactNativeDirectory() { + // monorepo workaround (react-native can be hoisted or in project's own node_modules) + def reactNativeFromProjectNodeModules = file("${rootProject.projectDir}/../node_modules/react-native") + if (reactNativeFromProjectNodeModules.exists()) { + return reactNativeFromProjectNodeModules } - dependencies { - classpath("com.android.tools.build:gradle:7.3.1") + + def reactNativeFromNodeModulesWithLibrary = file("${projectDir}/../../react-native") + if (reactNativeFromNodeModulesWithLibrary.exists()) { + return reactNativeFromNodeModulesWithLibrary } + + throw new Exception( + "[react-native-permissions] Unable to resolve react-native location in " + + "node_modules. You should add project extension property (in app/build.gradle) " + + "`REACT_NATIVE_NODE_MODULES_DIR` with path to react-native." + ) } +def REACT_NATIVE_DIR = resolveReactNativeDirectory() + +def reactProperties = new Properties() +file("$REACT_NATIVE_DIR/ReactAndroid/gradle.properties").withInputStream { reactProperties.load(it) } + +def REACT_NATIVE_VERSION = reactProperties.getProperty("VERSION_NAME") +def REACT_NATIVE_MINOR_VERSION = REACT_NATIVE_VERSION.startsWith("0.0.0-") ? 1000 : REACT_NATIVE_VERSION.split("\\.")[1].toInteger() + def isNewArchitectureEnabled() { + // To opt-in for the New Architecture, you can either: + // - Set `newArchEnabled` to true inside the `gradle.properties` file + // - Invoke gradle with `-newArchEnabled=true` + // - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true` return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true" } -apply plugin: "com.android.library" - if (isNewArchitectureEnabled()) { apply plugin: "com.facebook.react" } android { - buildToolsVersion safeExtGet("buildToolsVersion", "33.0.0") - compileSdkVersion safeExtGet("compileSdkVersion", 33) - - if (project.android.hasProperty("namespace")) { - namespace "com.zoontek.rnpermissions" - - buildFeatures { - buildConfig true - } - sourceSets { - main { - manifest.srcFile "src/main/AndroidManifestNew.xml" - } - } + // Used to override the NDK path/version on internal CI or by allowing + // users to customize the NDK path/version from their root project (e.g. for M1 support) + if (rootProject.hasProperty("ndkPath")) { + ndkPath rootProject.ext.ndkPath } + if (rootProject.hasProperty("ndkVersion")) { + ndkVersion rootProject.ext.ndkVersion + } + + compileSdkVersion safeExtGet("compileSdkVersion", 33) + buildToolsVersion safeExtGet("buildToolsVersion", "33.0.0") defaultConfig { - buildConfigField("boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()) minSdkVersion safeExtGet("minSdkVersion", 21) targetSdkVersion safeExtGet("targetSdkVersion", 33) } lintOptions { abortOnError false } - sourceSets { - main { - if (isNewArchitectureEnabled()) { - java.srcDirs += ["src/newarch"] - } else { - java.srcDirs += ["src/oldarch"] + + sourceSets.main { + java { + if (!isNewArchitectureEnabled()) { + srcDirs += 'src/paper/java' } } } } repositories { + mavenLocal() + mavenCentral() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url("$rootDir/../node_modules/react-native/android") + url "$rootDir/../node_modules/react-native/android" + } + maven { + // Android JSC is installed from npm + url "$rootDir/../node_modules/jsc-android/dist" } - mavenCentral() google() } dependencies { - //noinspection GradleDynamicVersion - implementation "com.facebook.react:react-native:+" // From node_modules + if (isNewArchitectureEnabled() && REACT_NATIVE_MINOR_VERSION < 71) { + implementation project(":ReactAndroid") + } else { + //noinspection GradleDynamicVersion + implementation 'com.facebook.react:react-native:+' + } } diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml index 429e192e..59b84088 100644 --- a/android/src/main/AndroidManifest.xml +++ b/android/src/main/AndroidManifest.xml @@ -1,2 +1,4 @@ - + diff --git a/android/src/main/AndroidManifestNew.xml b/android/src/main/AndroidManifestNew.xml deleted file mode 100644 index 9a40236b..00000000 --- a/android/src/main/AndroidManifestNew.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModule.java b/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModule.java new file mode 100644 index 00000000..02c9e338 --- /dev/null +++ b/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModule.java @@ -0,0 +1,433 @@ +package com.zoontek.rnpermissions; + +import android.Manifest; +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.content.pm.PackageManager; +import android.net.Uri; +import android.os.Build; +import android.os.Process; +import android.provider.Settings; +import android.util.SparseArray; + +import androidx.annotation.Nullable; +import androidx.core.app.NotificationManagerCompat; + +import com.facebook.react.bridge.Arguments; +import com.facebook.react.bridge.Callback; +import com.facebook.react.bridge.Promise; +import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.bridge.ReactMethod; +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.bridge.WritableMap; +import com.facebook.react.bridge.WritableNativeMap; +import com.facebook.react.module.annotations.ReactModule; +import com.facebook.react.modules.core.PermissionAwareActivity; +import com.facebook.react.modules.core.PermissionListener; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; + +@ReactModule(name = RNPermissionsModule.NAME) +public class RNPermissionsModule extends NativePermissionsModuleSpec implements PermissionListener { + + private static final String ERROR_INVALID_ACTIVITY = "E_INVALID_ACTIVITY"; + public static final String NAME = "RNPermissionsModule"; + + private final SparseArray mCallbacks; + private int mRequestCode = 0; + private final String GRANTED = "granted"; + private final String DENIED = "denied"; + private final String UNAVAILABLE = "unavailable"; + private final String BLOCKED = "blocked"; + + public RNPermissionsModule(ReactApplicationContext reactContext) { + super(reactContext); + mCallbacks = new SparseArray(); + } + + @Override + public String getName() { + return NAME; + } + + private @Nullable String getFieldName(final String permission) { + if (permission.equals("android.permission.ACCEPT_HANDOVER")) + return "ACCEPT_HANDOVER"; + if (permission.equals("android.permission.ACCESS_BACKGROUND_LOCATION")) + return "ACCESS_BACKGROUND_LOCATION"; + if (permission.equals("android.permission.ACCESS_COARSE_LOCATION")) + return "ACCESS_COARSE_LOCATION"; + if (permission.equals("android.permission.ACCESS_FINE_LOCATION")) + return "ACCESS_FINE_LOCATION"; + if (permission.equals("android.permission.ACCESS_MEDIA_LOCATION")) + return "ACCESS_MEDIA_LOCATION"; + if (permission.equals("android.permission.ACTIVITY_RECOGNITION")) + return "ACTIVITY_RECOGNITION"; + if (permission.equals("com.android.voicemail.permission.ADD_VOICEMAIL")) + return "ADD_VOICEMAIL"; + if (permission.equals("android.permission.ANSWER_PHONE_CALLS")) + return "ANSWER_PHONE_CALLS"; + if (permission.equals("android.permission.BLUETOOTH_ADVERTISE")) + return "BLUETOOTH_ADVERTISE"; + if (permission.equals("android.permission.BLUETOOTH_CONNECT")) + return "BLUETOOTH_CONNECT"; + if (permission.equals("android.permission.BLUETOOTH_SCAN")) + return "BLUETOOTH_SCAN"; + if (permission.equals("android.permission.BODY_SENSORS")) + return "BODY_SENSORS"; + if (permission.equals("android.permission.BODY_SENSORS_BACKGROUND")) + return "BODY_SENSORS_BACKGROUND"; + if (permission.equals("android.permission.CALL_PHONE")) + return "CALL_PHONE"; + if (permission.equals("android.permission.CAMERA")) + return "CAMERA"; + if (permission.equals("android.permission.GET_ACCOUNTS")) + return "GET_ACCOUNTS"; + if (permission.equals("android.permission.NEARBY_WIFI_DEVICES")) + return "NEARBY_WIFI_DEVICES"; + if (permission.equals("android.permission.POST_NOTIFICATIONS")) + return "POST_NOTIFICATIONS"; + if (permission.equals("android.permission.PROCESS_OUTGOING_CALLS")) + return "PROCESS_OUTGOING_CALLS"; + if (permission.equals("android.permission.READ_CALENDAR")) + return "READ_CALENDAR"; + if (permission.equals("android.permission.READ_CALL_LOG")) + return "READ_CALL_LOG"; + if (permission.equals("android.permission.READ_CONTACTS")) + return "READ_CONTACTS"; + if (permission.equals("android.permission.READ_EXTERNAL_STORAGE")) + return "READ_EXTERNAL_STORAGE"; + if (permission.equals("android.permission.READ_MEDIA_AUDIO")) + return "READ_MEDIA_AUDIO"; + if (permission.equals("android.permission.READ_MEDIA_IMAGES")) + return "READ_MEDIA_IMAGES"; + if (permission.equals("android.permission.READ_MEDIA_VIDEO")) + return "READ_MEDIA_VIDEO"; + if (permission.equals("android.permission.READ_PHONE_NUMBERS")) + return "READ_PHONE_NUMBERS"; + if (permission.equals("android.permission.READ_PHONE_STATE")) + return "READ_PHONE_STATE"; + if (permission.equals("android.permission.READ_SMS")) + return "READ_SMS"; + if (permission.equals("android.permission.RECEIVE_MMS")) + return "RECEIVE_MMS"; + if (permission.equals("android.permission.RECEIVE_SMS")) + return "RECEIVE_SMS"; + if (permission.equals("android.permission.RECEIVE_WAP_PUSH")) + return "RECEIVE_WAP_PUSH"; + if (permission.equals("android.permission.RECORD_AUDIO")) + return "RECORD_AUDIO"; + if (permission.equals("android.permission.SEND_SMS")) + return "SEND_SMS"; + if (permission.equals("android.permission.USE_SIP")) + return "USE_SIP"; + if (permission.equals("android.permission.UWB_RANGING")) + return "UWB_RANGING"; + if (permission.equals("android.permission.WRITE_CALENDAR")) + return "WRITE_CALENDAR"; + if (permission.equals("android.permission.WRITE_CALL_LOG")) + return "WRITE_CALL_LOG"; + if (permission.equals("android.permission.WRITE_CONTACTS")) + return "WRITE_CONTACTS"; + if (permission.equals("android.permission.WRITE_EXTERNAL_STORAGE")) + return "WRITE_EXTERNAL_STORAGE"; + + return null; + } + + private boolean permissionExists(final String permission) { + String fieldName = getFieldName(permission); + + if (fieldName == null) + return false; + + try { + Manifest.permission.class.getField(fieldName); + return true; + } catch (NoSuchFieldException ignored) { + return false; + } + } + + @ReactMethod + public void checkNotifications(final Promise promise) { + final boolean enabled = NotificationManagerCompat + .from(getReactApplicationContext()).areNotificationsEnabled(); + + final WritableMap output = Arguments.createMap(); + final WritableMap settings = Arguments.createMap(); + + output.putString("status", enabled ? GRANTED : BLOCKED); + output.putMap("settings", settings); + + promise.resolve(output); + } + + @ReactMethod + public void openSettings(final Promise promise) { + try { + final ReactApplicationContext reactContext = getReactApplicationContext(); + final Intent intent = new Intent(); + final String packageName = reactContext.getPackageName(); + + intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + intent.setData(Uri.fromParts("package", packageName, null)); + + reactContext.startActivity(intent); + promise.resolve(true); + } catch (Exception e) { + promise.reject(ERROR_INVALID_ACTIVITY, e); + } + } + + @ReactMethod + public void checkPermission(final String permission, final Promise promise) { + if (permission == null || !permissionExists(permission)) { + promise.resolve(UNAVAILABLE); + return; + } + + Context context = getReactApplicationContext().getBaseContext(); + + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + promise.resolve(context.checkPermission(permission, Process.myPid(), Process.myUid()) + == PackageManager.PERMISSION_GRANTED + ? GRANTED + : BLOCKED); + return; + } + + if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { + promise.resolve(GRANTED); + } else { + promise.resolve(DENIED); + } + } + + @ReactMethod + public void shouldShowRequestPermissionRationale(final String permission, final Promise promise) { + if (permission == null || Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + promise.resolve(false); + return; + } + + try { + promise.resolve( + getPermissionAwareActivity().shouldShowRequestPermissionRationale(permission)); + } catch (IllegalStateException e) { + promise.reject(ERROR_INVALID_ACTIVITY, e); + } + } + + @ReactMethod + public void requestPermission(final String permission, final Promise promise) { + if (permission == null || !permissionExists(permission)) { + promise.resolve(UNAVAILABLE); + return; + } + + Context context = getReactApplicationContext().getBaseContext(); + + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + promise.resolve(context.checkPermission(permission, Process.myPid(), Process.myUid()) + == PackageManager.PERMISSION_GRANTED + ? GRANTED + : BLOCKED); + return; + } + + if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { + promise.resolve(GRANTED); + return; + } + + try { + PermissionAwareActivity activity = getPermissionAwareActivity(); + + mCallbacks.put( + mRequestCode, + new Callback() { + @Override + public void invoke(Object... args) { + int[] results = (int[]) args[0]; + + if (results.length > 0 && results[0] == PackageManager.PERMISSION_GRANTED) { + promise.resolve(GRANTED); + } else { + PermissionAwareActivity activity = (PermissionAwareActivity) args[1]; + + if (activity.shouldShowRequestPermissionRationale(permission)) { + promise.resolve(DENIED); + } else { + promise.resolve(BLOCKED); + } + } + } + }); + + activity.requestPermissions(new String[] {permission}, mRequestCode, this); + mRequestCode++; + } catch (IllegalStateException e) { + promise.reject(ERROR_INVALID_ACTIVITY, e); + } + } + + @ReactMethod + public void checkMultiplePermissions(final ReadableArray permissions, final Promise promise) { + final WritableMap output = new WritableNativeMap(); + Context context = getReactApplicationContext().getBaseContext(); + + for (int i = 0; i < permissions.size(); i++) { + String permission = permissions.getString(i); + + if (!permissionExists(permission)) { + output.putString(permission, UNAVAILABLE); + } else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + output.putString( + permission, + context.checkPermission(permission, Process.myPid(), Process.myUid()) + == PackageManager.PERMISSION_GRANTED + ? GRANTED + : BLOCKED); + } else if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { + output.putString(permission, GRANTED); + } else { + output.putString(permission, DENIED); + } + } + + promise.resolve(output); + } + + @ReactMethod + public void requestMultiplePermissions(final ReadableArray permissions, final Promise promise) { + final WritableMap output = new WritableNativeMap(); + final ArrayList permissionsToCheck = new ArrayList(); + int checkedPermissionsCount = 0; + Context context = getReactApplicationContext().getBaseContext(); + + for (int i = 0; i < permissions.size(); i++) { + String permission = permissions.getString(i); + + if (!permissionExists(permission)) { + output.putString(permission, UNAVAILABLE); + checkedPermissionsCount++; + } else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + output.putString( + permission, + context.checkPermission(permission, Process.myPid(), Process.myUid()) + == PackageManager.PERMISSION_GRANTED + ? GRANTED + : BLOCKED); + + checkedPermissionsCount++; + } else if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { + output.putString(permission, GRANTED); + checkedPermissionsCount++; + } else { + permissionsToCheck.add(permission); + } + } + + if (permissions.size() == checkedPermissionsCount) { + promise.resolve(output); + return; + } + + try { + PermissionAwareActivity activity = getPermissionAwareActivity(); + + mCallbacks.put( + mRequestCode, + new Callback() { + @Override + public void invoke(Object... args) { + int[] results = (int[]) args[0]; + PermissionAwareActivity activity = (PermissionAwareActivity) args[1]; + + for (int j = 0; j < permissionsToCheck.size(); j++) { + String permission = permissionsToCheck.get(j); + + if (results.length > 0 && results[j] == PackageManager.PERMISSION_GRANTED) { + output.putString(permission, GRANTED); + } else { + if (activity.shouldShowRequestPermissionRationale(permission)) { + output.putString(permission, DENIED); + } else { + output.putString(permission, BLOCKED); + } + } + } + + promise.resolve(output); + } + }); + + activity.requestPermissions(permissionsToCheck.toArray(new String[0]), mRequestCode, this); + mRequestCode++; + } catch (IllegalStateException e) { + promise.reject(ERROR_INVALID_ACTIVITY, e); + } + } + + @Override + protected Map getTypedExportedConstants() { + return new HashMap<>(); + } + + @Override + public void check(String permission, Promise promise) { + promise.reject("Permissions:check", "check is not supported on Android"); + } + + @Override + public void checkLocationAccuracy(Promise promise) { + promise.reject("Permissions:checkLocationAccuracy", "checkLocationAccuracy is not supported on Android"); + } + + @Override + public void request(String permission, Promise promise) { + promise.reject("Permissions:request", "request is not supported on Android"); + } + + @Override + public void requestLocationAccuracy(String purposeKey, Promise promise) { + promise.reject("Permissions:requestLocationAccuracy", "requestLocationAccuracy is not supported on Android"); + } + + @Override + public void requestNotifications(ReadableArray options, Promise promise) { + promise.reject("Permissions:requestNotifications", "requestNotifications is not supported on Android"); + } + + @Override + public void openLimitedPhotoLibraryPicker(Promise promise) { + promise.reject("Permissions:openLimitedPhotoLibraryPicker", "openLimitedPhotoLibraryPicker is not supported on Android"); + } + + @Override + public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { + mCallbacks.get(requestCode).invoke(grantResults, getPermissionAwareActivity()); + mCallbacks.remove(requestCode); + return mCallbacks.size() == 0; + } + + private PermissionAwareActivity getPermissionAwareActivity() { + Activity activity = getCurrentActivity(); + + if (activity == null) { + throw new IllegalStateException( + "Tried to use permissions API while not attached to an " + "Activity."); + } else if (!(activity instanceof PermissionAwareActivity)) { + throw new IllegalStateException( + "Tried to use permissions API but the host Activity doesn't" + + " implement PermissionAwareActivity."); + } + + return (PermissionAwareActivity) activity; + } +} diff --git a/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModuleImpl.java b/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModuleImpl.java deleted file mode 100644 index 97bc7120..00000000 --- a/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsModuleImpl.java +++ /dev/null @@ -1,366 +0,0 @@ -package com.zoontek.rnpermissions; - -import android.Manifest; -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.net.Uri; -import android.os.Build; -import android.os.Process; -import android.provider.Settings; -import android.util.SparseArray; - -import androidx.annotation.NonNull; -import androidx.core.app.NotificationManagerCompat; - -import com.facebook.common.logging.FLog; -import com.facebook.react.bridge.Arguments; -import com.facebook.react.bridge.Callback; -import com.facebook.react.bridge.Promise; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReadableArray; -import com.facebook.react.bridge.WritableMap; -import com.facebook.react.bridge.WritableNativeMap; -import com.facebook.react.modules.core.PermissionAwareActivity; -import com.facebook.react.modules.core.PermissionListener; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; - -public class RNPermissionsModuleImpl { - - private static final String ERROR_INVALID_ACTIVITY = "E_INVALID_ACTIVITY"; - public static final String NAME = "RNPermissions"; - - private static int mRequestCode = 0; - private static final String GRANTED = "granted"; - private static final String DENIED = "denied"; - private static final String UNAVAILABLE = "unavailable"; - private static final String BLOCKED = "blocked"; - - public static Map getConstants() { - HashMap constants = new HashMap<>(); - constants.put("available", Arguments.createArray()); - return constants; - } - - private static boolean isPermissionUnavailable(@NonNull final String permission) { - String fieldName = permission - .replace("android.permission.", "") - .replace("com.android.voicemail.permission.", ""); - - try { - Manifest.permission.class.getField(fieldName); - return false; - } catch (NoSuchFieldException ignored) { - return true; - } - } - - // Only used on Android < 13 (the POST_NOTIFICATIONS runtime permission isn't available) - private static WritableMap getLegacyNotificationsResponse( - final ReactApplicationContext reactContext, - final String disabledStatus - ) { - final boolean enabled = NotificationManagerCompat.from(reactContext).areNotificationsEnabled(); - final WritableMap output = Arguments.createMap(); - final WritableMap settings = Arguments.createMap(); - - output.putString("status", enabled ? GRANTED : disabledStatus); - output.putMap("settings", settings); - - return output; - } - - public static void openSettings( - final ReactApplicationContext reactContext, - final Promise promise - ) { - try { - final Intent intent = new Intent(); - final String packageName = reactContext.getPackageName(); - - intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - intent.setData(Uri.fromParts("package", packageName, null)); - - reactContext.startActivity(intent); - promise.resolve(true); - } catch (Exception e) { - promise.reject(ERROR_INVALID_ACTIVITY, e); - } - } - - public static void check( - final ReactApplicationContext reactContext, - final String permission, - final Promise promise - ) { - if (permission == null || isPermissionUnavailable(permission)) { - promise.resolve(UNAVAILABLE); - return; - } - - Context context = reactContext.getBaseContext(); - - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - promise.resolve(context.checkPermission(permission, Process.myPid(), Process.myUid()) - == PackageManager.PERMISSION_GRANTED - ? GRANTED - : BLOCKED); - return; - } - - if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { - promise.resolve(GRANTED); - } else { - promise.resolve(DENIED); - } - } - - public static void checkNotifications( - final ReactApplicationContext reactContext, - final Promise promise - ) { - promise.resolve(getLegacyNotificationsResponse(reactContext, DENIED)); - } - - public static void checkMultiple( - final ReactApplicationContext reactContext, - final ReadableArray permissions, - final Promise promise - ) { - final WritableMap output = new WritableNativeMap(); - Context context = reactContext.getBaseContext(); - - for (int i = 0; i < permissions.size(); i++) { - String permission = permissions.getString(i); - - if (isPermissionUnavailable(permission)) { - output.putString(permission, UNAVAILABLE); - } else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - output.putString( - permission, - context.checkPermission(permission, Process.myPid(), Process.myUid()) - == PackageManager.PERMISSION_GRANTED - ? GRANTED - : BLOCKED); - } else if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { - output.putString(permission, GRANTED); - } else { - output.putString(permission, DENIED); - } - } - - promise.resolve(output); - } - - public static void request( - final ReactApplicationContext reactContext, - final PermissionListener listener, - final SparseArray callbacks, - final String permission, - final Promise promise - ) { - if (permission == null || isPermissionUnavailable(permission)) { - promise.resolve(UNAVAILABLE); - return; - } - - Context context = reactContext.getBaseContext(); - - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - promise.resolve(context.checkPermission(permission, Process.myPid(), Process.myUid()) - == PackageManager.PERMISSION_GRANTED - ? GRANTED - : BLOCKED); - return; - } - - if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { - promise.resolve(GRANTED); - return; - } - - try { - PermissionAwareActivity activity = getPermissionAwareActivity(reactContext); - - callbacks.put( - mRequestCode, - new Callback() { - @Override - public void invoke(Object... args) { - int[] results = (int[]) args[0]; - - if (results.length > 0 && results[0] == PackageManager.PERMISSION_GRANTED) { - promise.resolve(GRANTED); - } else { - PermissionAwareActivity activity = (PermissionAwareActivity) args[1]; - - if (activity.shouldShowRequestPermissionRationale(permission)) { - promise.resolve(DENIED); - } else { - promise.resolve(BLOCKED); - } - } - } - }); - - activity.requestPermissions(new String[] {permission}, mRequestCode, listener); - mRequestCode++; - } catch (IllegalStateException e) { - promise.reject(ERROR_INVALID_ACTIVITY, e); - } - } - - public static void requestNotifications( - final ReactApplicationContext reactContext, - final Promise promise - ) { - promise.resolve(getLegacyNotificationsResponse(reactContext, BLOCKED)); - } - - public static void requestMultiple( - final ReactApplicationContext reactContext, - final PermissionListener listener, - final SparseArray callbacks, - final ReadableArray permissions, - final Promise promise - ) { - final WritableMap output = new WritableNativeMap(); - final ArrayList permissionsToCheck = new ArrayList(); - int checkedPermissionsCount = 0; - Context context = reactContext.getBaseContext(); - - for (int i = 0; i < permissions.size(); i++) { - String permission = permissions.getString(i); - - if (isPermissionUnavailable(permission)) { - output.putString(permission, UNAVAILABLE); - checkedPermissionsCount++; - } else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - output.putString( - permission, - context.checkPermission(permission, Process.myPid(), Process.myUid()) - == PackageManager.PERMISSION_GRANTED - ? GRANTED - : BLOCKED); - - checkedPermissionsCount++; - } else if (context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) { - output.putString(permission, GRANTED); - checkedPermissionsCount++; - } else { - permissionsToCheck.add(permission); - } - } - - if (permissions.size() == checkedPermissionsCount) { - promise.resolve(output); - return; - } - - try { - PermissionAwareActivity activity = getPermissionAwareActivity(reactContext); - - callbacks.put( - mRequestCode, - new Callback() { - @Override - public void invoke(Object... args) { - int[] results = (int[]) args[0]; - PermissionAwareActivity activity = (PermissionAwareActivity) args[1]; - - for (int j = 0; j < permissionsToCheck.size(); j++) { - String permission = permissionsToCheck.get(j); - - if (results.length > 0 && results[j] == PackageManager.PERMISSION_GRANTED) { - output.putString(permission, GRANTED); - } else { - if (activity.shouldShowRequestPermissionRationale(permission)) { - output.putString(permission, DENIED); - } else { - output.putString(permission, BLOCKED); - } - } - } - - promise.resolve(output); - } - }); - - activity.requestPermissions(permissionsToCheck.toArray(new String[0]), mRequestCode, listener); - mRequestCode++; - } catch (IllegalStateException e) { - promise.reject(ERROR_INVALID_ACTIVITY, e); - } - } - - public static void shouldShowRequestRationale( - final ReactApplicationContext reactContext, - final String permission, - final Promise promise - ) { - if (permission == null || Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - promise.resolve(false); - return; - } - - try { - promise.resolve(getPermissionAwareActivity(reactContext) - .shouldShowRequestPermissionRationale(permission)); - } catch (IllegalStateException e) { - promise.reject(ERROR_INVALID_ACTIVITY, e); - } - } - - private static PermissionAwareActivity getPermissionAwareActivity( - final ReactApplicationContext reactContext - ) { - Activity activity = reactContext.getCurrentActivity(); - - if (activity == null) { - throw new IllegalStateException( - "Tried to use permissions API while not attached to an " + "Activity."); - } else if (!(activity instanceof PermissionAwareActivity)) { - throw new IllegalStateException( - "Tried to use permissions API but the host Activity doesn't" - + " implement PermissionAwareActivity."); - } - - return (PermissionAwareActivity) activity; - } - - public static void openPhotoPicker(final Promise promise) { - promise.reject("Permissions:openPhotoPicker", "openPhotoPicker is not supported on Android"); - } - - public static void checkLocationAccuracy(final Promise promise) { - promise.reject("Permissions:checkLocationAccuracy", "checkLocationAccuracy is not supported on Android"); - } - - public static void requestLocationAccuracy(final Promise promise) { - promise.reject("Permissions:requestLocationAccuracy", "requestLocationAccuracy is not supported on Android"); - } - - public static boolean onRequestPermissionsResult( - final ReactApplicationContext reactContext, - final SparseArray callbacks, - int requestCode, - int[] grantResults - ) { - try { - callbacks.get(requestCode).invoke(grantResults, getPermissionAwareActivity(reactContext)); - callbacks.remove(requestCode); - return callbacks.size() == 0; - } catch (Exception e) { - FLog.e( - "PermissionsModule", - e, - "Unexpected invocation of `onRequestPermissionsResult`"); - return false; - } - } -} diff --git a/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsPackage.java b/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsPackage.java index 8bcd2d60..6efb3752 100644 --- a/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsPackage.java +++ b/android/src/main/java/com/zoontek/rnpermissions/RNPermissionsPackage.java @@ -1,46 +1,109 @@ package com.zoontek.rnpermissions; -import androidx.annotation.Nullable; - import com.facebook.react.TurboReactPackage; +import com.facebook.react.ViewManagerOnDemandReactPackage; +import com.facebook.react.bridge.ModuleSpec; import com.facebook.react.bridge.NativeModule; import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.module.annotations.ReactModule; +import com.facebook.react.module.annotations.ReactModuleList; import com.facebook.react.module.model.ReactModuleInfo; import com.facebook.react.module.model.ReactModuleInfoProvider; +import com.facebook.react.turbomodule.core.interfaces.TurboModule; +import com.facebook.react.uimanager.ViewManager; +import java.util.Collections; import java.util.HashMap; +import java.util.List; import java.util.Map; -public class RNPermissionsPackage extends TurboReactPackage { +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +@ReactModuleList( + nativeModules = { + RNPermissionsModule.class, + }) +public class RNPermissionsPackage extends TurboReactPackage implements ViewManagerOnDemandReactPackage { + + /** {@inheritDoc} */ + @Override + public List getViewManagerNames(ReactApplicationContext reactContext) { + return null; + } + + @Override + protected List getViewManagers(ReactApplicationContext reactContext) { + return null; + } + + /** {@inheritDoc} */ + @Override + public @Nullable + ViewManager createViewManager( + ReactApplicationContext reactContext, String viewManagerName) { + return null; + } - @Nullable @Override - public NativeModule getModule(String name, ReactApplicationContext reactContext) { - if (name.equals(RNPermissionsModuleImpl.NAME)) { - return new RNPermissionsModule(reactContext); - } else { - return null; + public NativeModule getModule(String name, @Nonnull ReactApplicationContext reactContext) { + switch (name) { + case RNPermissionsModule.NAME: + return new RNPermissionsModule(reactContext); + default: + return null; } } @Override public ReactModuleInfoProvider getReactModuleInfoProvider() { - return () -> { - final Map moduleInfos = new HashMap<>(); - boolean isTurboModule = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED; - - ReactModuleInfo moduleInfo = new ReactModuleInfo( - RNPermissionsModuleImpl.NAME, - RNPermissionsModuleImpl.NAME, - false, - false, - true, - false, - isTurboModule - ); - - moduleInfos.put(RNPermissionsModuleImpl.NAME, moduleInfo); - return moduleInfos; - }; + try { + Class reactModuleInfoProviderClass = + Class.forName("com.zoontek.rnpermissions.RNPermissionsPackage$$ReactModuleInfoProvider"); + return (ReactModuleInfoProvider) reactModuleInfoProviderClass.newInstance(); + } catch (ClassNotFoundException e) { + // ReactModuleSpecProcessor does not run at build-time. Create this ReactModuleInfoProvider by hand. + return new ReactModuleInfoProvider() { + @Override + public Map getReactModuleInfos() { + final Map reactModuleInfoMap = new HashMap<>(); + + Class[] moduleList = + new Class[] { + RNPermissionsModule.class, + }; + + for (Class moduleClass : moduleList) { + ReactModule reactModule = moduleClass.getAnnotation(ReactModule.class); + + reactModuleInfoMap.put( + reactModule.name(), + new ReactModuleInfo( + reactModule.name(), + moduleClass.getName(), + reactModule.canOverrideExistingModule(), + reactModule.needsEagerInit(), + reactModule.hasConstants(), + reactModule.isCxxModule(), + TurboModule.class.isAssignableFrom(moduleClass))); + } + + return reactModuleInfoMap; + } + }; + } catch (InstantiationException | IllegalAccessException e) { + throw new RuntimeException( + "No ReactModuleInfoProvider for com.zoontek.rnpermissions.RNPermissionsPackage$$ReactModuleInfoProvider", e); + } + } + + @Override + public List createNativeModules(ReactApplicationContext reactContext) { + return Collections.singletonList(new RNPermissionsModule(reactContext)); + } + + @Override + public List createViewManagers(ReactApplicationContext reactContext) { + return Collections.emptyList(); } } diff --git a/android/src/newarch/com/zoontek/rnpermissions/RNPermissionsModule.java b/android/src/newarch/com/zoontek/rnpermissions/RNPermissionsModule.java deleted file mode 100644 index bdfbe484..00000000 --- a/android/src/newarch/com/zoontek/rnpermissions/RNPermissionsModule.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.zoontek.rnpermissions; - -import android.util.SparseArray; - -import androidx.annotation.NonNull; - -import com.facebook.react.bridge.Callback; -import com.facebook.react.bridge.Promise; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReadableArray; -import com.facebook.react.module.annotations.ReactModule; -import com.facebook.react.modules.core.PermissionListener; - -import java.util.Map; - -@ReactModule(name = RNPermissionsModuleImpl.NAME) -public class RNPermissionsModule extends NativeRNPermissionsSpec implements PermissionListener { - - private final SparseArray mCallbacks; - - public RNPermissionsModule(ReactApplicationContext reactContext) { - super(reactContext); - mCallbacks = new SparseArray(); - } - - @Override - @NonNull - public String getName() { - return RNPermissionsModuleImpl.NAME; - } - - @Override - protected Map getTypedExportedConstants() { - return RNPermissionsModuleImpl.getConstants(); - } - - @Override - public void openSettings(Promise promise) { - RNPermissionsModuleImpl.openSettings(getReactApplicationContext(), promise); - } - - @Override - public void check(String permission, Promise promise) { - RNPermissionsModuleImpl.check(getReactApplicationContext(), permission, promise); - } - - @Override - public void checkNotifications(Promise promise) { - RNPermissionsModuleImpl.checkNotifications(getReactApplicationContext(), promise); - } - - @Override - public void checkMultiple(ReadableArray permissions, Promise promise) { - RNPermissionsModuleImpl.checkMultiple(getReactApplicationContext(), permissions, promise); - } - - @Override - public void request(String permission, Promise promise) { - RNPermissionsModuleImpl.request(getReactApplicationContext(), this, mCallbacks, permission, promise); - } - - @Override - public void requestNotifications(ReadableArray options, Promise promise) { - RNPermissionsModuleImpl.requestNotifications(getReactApplicationContext(), promise); - } - - @Override - public void requestMultiple(ReadableArray permissions, Promise promise) { - RNPermissionsModuleImpl.requestMultiple(getReactApplicationContext(), this, mCallbacks, permissions, promise); - } - - @Override - public void shouldShowRequestRationale(String permission, Promise promise) { - RNPermissionsModuleImpl.shouldShowRequestRationale(getReactApplicationContext(), permission, promise); - } - - @Override - public void checkLocationAccuracy(Promise promise) { - RNPermissionsModuleImpl.checkLocationAccuracy(promise); - } - - @Override - public void requestLocationAccuracy(String purposeKey, Promise promise) { - RNPermissionsModuleImpl.requestLocationAccuracy(promise); - } - - @Override - public void openPhotoPicker(Promise promise) { - RNPermissionsModuleImpl.openPhotoPicker(promise); - } - - @Override - public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { - return RNPermissionsModuleImpl.onRequestPermissionsResult(getReactApplicationContext(), mCallbacks, requestCode, grantResults); - } -} diff --git a/android/src/oldarch/com/zoontek/rnpermissions/RNPermissionsModule.java b/android/src/oldarch/com/zoontek/rnpermissions/RNPermissionsModule.java deleted file mode 100644 index 2b2f5b53..00000000 --- a/android/src/oldarch/com/zoontek/rnpermissions/RNPermissionsModule.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.zoontek.rnpermissions; - -import android.util.SparseArray; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import com.facebook.react.bridge.Callback; -import com.facebook.react.bridge.Promise; -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.module.annotations.ReactModule; -import com.facebook.react.modules.core.PermissionListener; - -import java.util.Map; - -@ReactModule(name = RNPermissionsModuleImpl.NAME) -public class RNPermissionsModule extends ReactContextBaseJavaModule implements PermissionListener { - - private final SparseArray mCallbacks; - - public RNPermissionsModule(ReactApplicationContext reactContext) { - super(reactContext); - mCallbacks = new SparseArray(); - } - - @NonNull - @Override - public String getName() { - return RNPermissionsModuleImpl.NAME; - } - - @Nullable - @Override - public Map getConstants() { - return RNPermissionsModuleImpl.getConstants(); - } - - @ReactMethod - public void openSettings(Promise promise) { - RNPermissionsModuleImpl.openSettings(getReactApplicationContext(), promise); - } - - @ReactMethod - public void check(String permission, Promise promise) { - RNPermissionsModuleImpl.check(getReactApplicationContext(), permission, promise); - } - - @ReactMethod - public void checkNotifications(Promise promise) { - RNPermissionsModuleImpl.checkNotifications(getReactApplicationContext(), promise); - } - - @ReactMethod - public void checkMultiple(ReadableArray permissions, Promise promise) { - RNPermissionsModuleImpl.checkMultiple(getReactApplicationContext(), permissions, promise); - } - - @ReactMethod - public void request(String permission, Promise promise) { - RNPermissionsModuleImpl.request(getReactApplicationContext(), this, mCallbacks, permission, promise); - } - - @ReactMethod - public void requestNotifications(ReadableArray options, Promise promise) { - RNPermissionsModuleImpl.requestNotifications(getReactApplicationContext(), promise); - } - - @ReactMethod - public void requestMultiple(ReadableArray permissions, Promise promise) { - RNPermissionsModuleImpl.requestMultiple(getReactApplicationContext(), this, mCallbacks, permissions, promise); - } - - @ReactMethod - public void shouldShowRequestRationale(String permission, Promise promise) { - RNPermissionsModuleImpl.shouldShowRequestRationale(getReactApplicationContext(), permission, promise); - } - - @ReactMethod - public void checkLocationAccuracy(Promise promise) { - RNPermissionsModuleImpl.checkLocationAccuracy(promise); - } - - @ReactMethod - public void requestLocationAccuracy(String purposeKey, Promise promise) { - RNPermissionsModuleImpl.requestLocationAccuracy(promise); - } - - @ReactMethod - public void openPhotoPicker(Promise promise) { - RNPermissionsModuleImpl.openPhotoPicker(promise); - } - - @Override - public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { - return RNPermissionsModuleImpl.onRequestPermissionsResult(getReactApplicationContext(), mCallbacks, requestCode, grantResults); - } -} diff --git a/android/src/paper/java/com/zoontek/rnpermissions/NativePermissionsModuleSpec.java b/android/src/paper/java/com/zoontek/rnpermissions/NativePermissionsModuleSpec.java new file mode 100644 index 00000000..0e7e5776 --- /dev/null +++ b/android/src/paper/java/com/zoontek/rnpermissions/NativePermissionsModuleSpec.java @@ -0,0 +1,112 @@ + +/** + * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen). + * + * Do not edit this file as changes may cause incorrect behavior and will be lost + * once the code is regenerated. + * + * @generated by codegen project: GenerateModuleJavaSpec.js + * + * @nolint + */ + +package com.zoontek.rnpermissions; + +import com.facebook.proguard.annotations.DoNotStrip; +import com.facebook.react.bridge.Promise; +import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.bridge.ReactContextBaseJavaModule; +import com.facebook.react.bridge.ReactMethod; +import com.facebook.react.bridge.ReactModuleWithSpec; +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.common.build.ReactBuildConfig; +import com.facebook.react.turbomodule.core.interfaces.TurboModule; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import javax.annotation.Nullable; + +public abstract class NativePermissionsModuleSpec extends ReactContextBaseJavaModule implements ReactModuleWithSpec, TurboModule { + public NativePermissionsModuleSpec(ReactApplicationContext reactContext) { + super(reactContext); + } + + @ReactMethod + @DoNotStrip + public abstract void openSettings(Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void checkNotifications(Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void checkPermission(String permission, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void shouldShowRequestPermissionRationale(String permission, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void requestPermission(String permission, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void checkMultiplePermissions(ReadableArray permissions, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void requestMultiplePermissions(ReadableArray permissions, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void check(String permission, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void checkLocationAccuracy(Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void request(String permission, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void requestLocationAccuracy(String purposeKey, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void requestNotifications(ReadableArray options, Promise promise); + + @ReactMethod + @DoNotStrip + public abstract void openLimitedPhotoLibraryPicker(Promise promise); + + protected abstract Map getTypedExportedConstants(); + + @Override + @DoNotStrip + public final @Nullable Map getConstants() { + Map constants = getTypedExportedConstants(); + if (ReactBuildConfig.DEBUG || ReactBuildConfig.IS_INTERNAL_BUILD) { + Set obligatoryFlowConstants = new HashSet<>(); + Set optionalFlowConstants = new HashSet<>(Arrays.asList( + "available" + )); + Set undeclaredConstants = new HashSet<>(constants.keySet()); + undeclaredConstants.removeAll(obligatoryFlowConstants); + undeclaredConstants.removeAll(optionalFlowConstants); + if (!undeclaredConstants.isEmpty()) { + throw new IllegalStateException(String.format("Native Module Flow doesn't declare constants: %s", undeclaredConstants)); + } + undeclaredConstants = obligatoryFlowConstants; + undeclaredConstants.removeAll(constants.keySet()); + if (!undeclaredConstants.isEmpty()) { + throw new IllegalStateException(String.format("Native Module doesn't fill in constants: %s", undeclaredConstants)); + } + } + return constants; + } +} diff --git a/example/.node-version b/example/.node-version new file mode 100644 index 00000000..3c032078 --- /dev/null +++ b/example/.node-version @@ -0,0 +1 @@ +18 diff --git a/example/.ruby-version b/example/.ruby-version new file mode 100644 index 00000000..49cdd668 --- /dev/null +++ b/example/.ruby-version @@ -0,0 +1 @@ +2.7.6 diff --git a/example/src/App.tsx b/example/App.tsx similarity index 93% rename from example/src/App.tsx rename to example/App.tsx index 622bec9a..c32fe258 100644 --- a/example/src/App.tsx +++ b/example/App.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import {Platform, ScrollView, StatusBar, View} from 'react-native'; import {Appbar, Button, Divider, Snackbar, Text} from 'react-native-paper'; -import RNPermissions, {NotificationOption, PERMISSIONS, Permission} from 'react-native-permissions'; +import RNPermissions, {NotificationOption, Permission, PERMISSIONS} from 'react-native-permissions'; // eslint-disable-next-line @typescript-eslint/no-unused-vars const {SIRI, ...PERMISSIONS_IOS} = PERMISSIONS.IOS; // remove siri (certificate required) @@ -36,7 +36,7 @@ export const App = () => { { - RNPermissions.openPhotoPicker().catch((error) => { + RNPermissions.openLimitedPhotoLibraryPicker().catch((error) => { console.error(error); }); }} @@ -65,7 +65,8 @@ export const App = () => { - {PERMISSIONS_VALUES.map((item) => { + {PERMISSIONS_VALUES.map((item, index) => { + const value = PERMISSIONS_VALUES[index]; const parts = item.split('.'); const name = parts[parts.length - 1]; @@ -81,7 +82,7 @@ export const App = () => { icon="eye-outline" mode="contained" onPress={() => { - RNPermissions.check(item) + RNPermissions.check(value) .then((status) => { showSnackbar(`check(${name})`, status); }) @@ -99,7 +100,7 @@ export const App = () => { icon="help-circle-outline" mode="contained" onPress={() => { - RNPermissions.request(item) + RNPermissions.request(value) .then((status) => { showSnackbar(`request(${name})`, status); }) diff --git a/example/Gemfile b/example/Gemfile index 8d72c37a..567e5980 100644 --- a/example/Gemfile +++ b/example/Gemfile @@ -1,9 +1,6 @@ source 'https://rubygems.org' # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version -ruby ">= 2.6.10" +ruby File.read(File.join(__dir__, '.ruby-version')).strip -# Cocoapods 1.15 introduced a bug which break the build. We will remove the upper -# bound in the template on Cocoapods with next React Native release. -gem 'cocoapods', '>= 1.13', '< 1.15' -gem 'activesupport', '>= 6.1.7.5', '< 7.1.0' +gem 'cocoapods', '~> 1.11', '>= 1.11.3' diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index eabe97cb..cbdbcc63 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -1,7 +1,8 @@ apply plugin: "com.android.application" -apply plugin: "org.jetbrains.kotlin.android" apply plugin: "com.facebook.react" +import com.android.build.OutputFile + /** * This is the configuration block to customize your React Native Android app. * By default you don't need to apply any configuration, just uncomment the lines you need. @@ -12,8 +13,8 @@ react { // root = file("../") // The folder where the react-native NPM package is. Default is ../node_modules/react-native // reactNativeDir = file("../node_modules/react-native") - // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen - // codegenDir = file("../node_modules/@react-native/codegen") + // The folder where the react-native Codegen package is. Default is ../node_modules/react-native-codegen + // codegenDir = file("../node_modules/react-native-codegen") // The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js // cliFile = file("../node_modules/react-native/cli.js") @@ -51,6 +52,14 @@ react { // hermesFlags = ["-O", "-output-source-map"] } +/** + * Set this to true to create four separate APKs instead of one, + * one for each native architecture. This is useful if you don't + * use App Bundles (https://developer.android.com/guide/app-bundle/) + * and want to have separate APKs to upload to the Play Store. + */ +def enableSeparateBuildPerCPUArchitecture = false + /** * Set this to true to Run Proguard on Release builds to minify the Java bytecode. */ @@ -69,10 +78,20 @@ def enableProguardInReleaseBuilds = false */ def jscFlavor = 'org.webkit:android-jsc:+' +/** + * Private function to get the list of Native Architectures you want to build. + * This reads the value from reactNativeArchitectures in your gradle.properties + * file and works together with the --active-arch-only flag of react-native run-android. + */ +def reactNativeArchitectures() { + def value = project.getProperties().get("reactNativeArchitectures") + return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"] +} + android { ndkVersion rootProject.ext.ndkVersion - buildToolsVersion rootProject.ext.buildToolsVersion - compileSdk rootProject.ext.compileSdkVersion + + compileSdkVersion rootProject.ext.compileSdkVersion namespace "com.rnpermissionsexample" defaultConfig { @@ -82,6 +101,15 @@ android { versionCode 1 versionName "1.0" } + + splits { + abi { + reset() + enable enableSeparateBuildPerCPUArchitecture + universalApk false // If true, also generate a universal APK + include (*reactNativeArchitectures()) + } + } signingConfigs { debug { storeFile file('debug.keystore') @@ -102,13 +130,36 @@ android { proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" } } + + // applicationVariants are e.g. debug, release + applicationVariants.all { variant -> + variant.outputs.each { output -> + // For each separate APK per architecture, set a unique version code as described here: + // https://developer.android.com/studio/build/configure-apk-splits.html + // Example: versionCode 1 will generate 1001 for armeabi-v7a, 1002 for x86, etc. + def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4] + def abi = output.getFilter(OutputFile.ABI) + if (abi != null) { // null for the universal-debug, universal-release variants + output.versionCodeOverride = + defaultConfig.versionCode * 1000 + versionCodes.get(abi) + } + + } + } } dependencies { // The version of react-native is set by the React Native Gradle Plugin implementation("com.facebook.react:react-android") - implementation("com.facebook.react:flipper-integration") + implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0") + + debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") + debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") { + exclude group:'com.squareup.okhttp3', module:'okhttp' + } + + debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") if (hermesEnabled.toBoolean()) { implementation("com.facebook.react:hermes-android") } else { diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml index eb98c01a..4b185bc1 100644 --- a/example/android/app/src/debug/AndroidManifest.xml +++ b/example/android/app/src/debug/AndroidManifest.xml @@ -2,8 +2,12 @@ + + + tools:ignore="GoogleAppIndexingWarning"> + + diff --git a/example/android/app/src/debug/java/com/rnpermissionsexample/ReactNativeFlipper.java b/example/android/app/src/debug/java/com/rnpermissionsexample/ReactNativeFlipper.java new file mode 100644 index 00000000..05a134cf --- /dev/null +++ b/example/android/app/src/debug/java/com/rnpermissionsexample/ReactNativeFlipper.java @@ -0,0 +1,75 @@ +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + *

This source code is licensed under the MIT license found in the LICENSE file in the root + * directory of this source tree. + */ +package com.rnpermissionsexample; + +import android.content.Context; +import com.facebook.flipper.android.AndroidFlipperClient; +import com.facebook.flipper.android.utils.FlipperUtils; +import com.facebook.flipper.core.FlipperClient; +import com.facebook.flipper.plugins.crashreporter.CrashReporterPlugin; +import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin; +import com.facebook.flipper.plugins.fresco.FrescoFlipperPlugin; +import com.facebook.flipper.plugins.inspector.DescriptorMapping; +import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin; +import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor; +import com.facebook.flipper.plugins.network.NetworkFlipperPlugin; +import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin; +import com.facebook.react.ReactInstanceEventListener; +import com.facebook.react.ReactInstanceManager; +import com.facebook.react.bridge.ReactContext; +import com.facebook.react.modules.network.NetworkingModule; +import okhttp3.OkHttpClient; + +/** + * Class responsible of loading Flipper inside your React Native application. This is the debug + * flavor of it. Here you can add your own plugins and customize the Flipper setup. + */ +public class ReactNativeFlipper { + public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { + if (FlipperUtils.shouldEnableFlipper(context)) { + final FlipperClient client = AndroidFlipperClient.getInstance(context); + + client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults())); + client.addPlugin(new DatabasesFlipperPlugin(context)); + client.addPlugin(new SharedPreferencesFlipperPlugin(context)); + client.addPlugin(CrashReporterPlugin.getInstance()); + + NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin(); + NetworkingModule.setCustomClientBuilder( + new NetworkingModule.CustomClientBuilder() { + @Override + public void apply(OkHttpClient.Builder builder) { + builder.addNetworkInterceptor(new FlipperOkhttpInterceptor(networkFlipperPlugin)); + } + }); + client.addPlugin(networkFlipperPlugin); + client.start(); + + // Fresco Plugin needs to ensure that ImagePipelineFactory is initialized + // Hence we run if after all native modules have been initialized + ReactContext reactContext = reactInstanceManager.getCurrentReactContext(); + if (reactContext == null) { + reactInstanceManager.addReactInstanceEventListener( + new ReactInstanceEventListener() { + @Override + public void onReactContextInitialized(ReactContext reactContext) { + reactInstanceManager.removeReactInstanceEventListener(this); + reactContext.runOnNativeModulesQueueThread( + new Runnable() { + @Override + public void run() { + client.addPlugin(new FrescoFlipperPlugin()); + } + }); + } + }); + } else { + client.addPlugin(new FrescoFlipperPlugin()); + } + } + } +} diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index 8a08b766..57731051 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -28,7 +28,6 @@ - @@ -45,23 +44,23 @@ + - - - - - - + android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode" + android:launchMode="singleTask" + android:windowSoftInputMode="adjustResize" + android:exported="true"> + + + + + diff --git a/example/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf b/example/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf index ba873595714be0aed5b3f40c3f409125d58b741e..522dc3105c81c753c96ba7b0b0024c42301dee6f 100644 GIT binary patch delta 107695 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 M&KMkGh3ez`Z{pLhr2qf` delta 340770 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 b(HC*VMS)QVKn|%_kR;^w6R!oWS@Zt^9SsPo diff --git a/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.java b/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.java new file mode 100644 index 00000000..928006f4 --- /dev/null +++ b/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.java @@ -0,0 +1,35 @@ +package com.rnpermissionsexample; + +import com.facebook.react.ReactActivity; +import com.facebook.react.ReactActivityDelegate; +import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; +import com.facebook.react.defaults.DefaultReactActivityDelegate; + +public class MainActivity extends ReactActivity { + + /** + * Returns the name of the main component registered from JavaScript. This is used to schedule + * rendering of the component. + */ + @Override + protected String getMainComponentName() { + return "RNPermissionsExample"; + } + + /** + * Returns the instance of the {@link ReactActivityDelegate}. Here we use a util class {@link + * DefaultReactActivityDelegate} which allows you to easily enable Fabric and Concurrent React + * (aka React 18) with two boolean flags. + */ + @Override + protected ReactActivityDelegate createReactActivityDelegate() { + return new DefaultReactActivityDelegate( + this, + getMainComponentName(), + // If you opted-in for the New Architecture, we enable the Fabric Renderer. + DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled + // If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18). + DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled + ); + } +} diff --git a/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.kt b/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.kt deleted file mode 100644 index b576bf0d..00000000 --- a/example/android/app/src/main/java/com/rnpermissionsexample/MainActivity.kt +++ /dev/null @@ -1,22 +0,0 @@ -package com.rnpermissionsexample - -import com.facebook.react.ReactActivity -import com.facebook.react.ReactActivityDelegate -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled -import com.facebook.react.defaults.DefaultReactActivityDelegate - -class MainActivity : ReactActivity() { - - /** - * Returns the name of the main component registered from JavaScript. This is used to schedule - * rendering of the component. - */ - override fun getMainComponentName(): String = "RNPermissionsExample" - - /** - * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate] - * which allows you to enable New Architecture with a single boolean flags [fabricEnabled] - */ - override fun createReactActivityDelegate(): ReactActivityDelegate = - DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled) -} diff --git a/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.java b/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.java new file mode 100644 index 00000000..daccd3ec --- /dev/null +++ b/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.java @@ -0,0 +1,62 @@ +package com.rnpermissionsexample; + +import android.app.Application; +import com.facebook.react.PackageList; +import com.facebook.react.ReactApplication; +import com.facebook.react.ReactNativeHost; +import com.facebook.react.ReactPackage; +import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; +import com.facebook.react.defaults.DefaultReactNativeHost; +import com.facebook.soloader.SoLoader; +import java.util.List; + +public class MainApplication extends Application implements ReactApplication { + + private final ReactNativeHost mReactNativeHost = + new DefaultReactNativeHost(this) { + @Override + public boolean getUseDeveloperSupport() { + return BuildConfig.DEBUG; + } + + @Override + protected List getPackages() { + @SuppressWarnings("UnnecessaryLocalVariable") + List packages = new PackageList(this).getPackages(); + // Packages that cannot be autolinked yet can be added manually here, for example: + // packages.add(new MyReactNativePackage()); + return packages; + } + + @Override + protected String getJSMainModuleName() { + return "index"; + } + + @Override + protected boolean isNewArchEnabled() { + return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED; + } + + @Override + protected Boolean isHermesEnabled() { + return BuildConfig.IS_HERMES_ENABLED; + } + }; + + @Override + public ReactNativeHost getReactNativeHost() { + return mReactNativeHost; + } + + @Override + public void onCreate() { + super.onCreate(); + SoLoader.init(this, /* native exopackage */ false); + if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { + // If you opted-in for the New Architecture, we load the native entry point for this app. + DefaultNewArchitectureEntryPoint.load(); + } + ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); + } +} diff --git a/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.kt b/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.kt deleted file mode 100644 index 33fb36df..00000000 --- a/example/android/app/src/main/java/com/rnpermissionsexample/MainApplication.kt +++ /dev/null @@ -1,45 +0,0 @@ -package com.rnpermissionsexample - -import android.app.Application -import com.facebook.react.PackageList -import com.facebook.react.ReactApplication -import com.facebook.react.ReactHost -import com.facebook.react.ReactNativeHost -import com.facebook.react.ReactPackage -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load -import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost -import com.facebook.react.defaults.DefaultReactNativeHost -import com.facebook.react.flipper.ReactNativeFlipper -import com.facebook.soloader.SoLoader - -class MainApplication : Application(), ReactApplication { - - override val reactNativeHost: ReactNativeHost = - object : DefaultReactNativeHost(this) { - override fun getPackages(): List = - PackageList(this).packages.apply { - // Packages that cannot be autolinked yet can be added manually here, for example: - // add(MyReactNativePackage()) - } - - override fun getJSMainModuleName(): String = "index" - - override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG - - override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED - override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED - } - - override val reactHost: ReactHost - get() = getDefaultReactHost(this.applicationContext, reactNativeHost) - - override fun onCreate() { - super.onCreate() - SoLoader.init(this, false) - if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { - // If you opted-in for the New Architecture, we load the native entry point for this app. - load() - } - ReactNativeFlipper.initializeFlipper(this, reactNativeHost.reactInstanceManager) - } -} diff --git a/example/android/app/src/release/java/com/rnpermissionsexample/ReactNativeFlipper.java b/example/android/app/src/release/java/com/rnpermissionsexample/ReactNativeFlipper.java new file mode 100644 index 00000000..4b22f953 --- /dev/null +++ b/example/android/app/src/release/java/com/rnpermissionsexample/ReactNativeFlipper.java @@ -0,0 +1,20 @@ +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + *

This source code is licensed under the MIT license found in the LICENSE file in the root + * directory of this source tree. + */ +package com.rnpermissionsexample; + +import android.content.Context; +import com.facebook.react.ReactInstanceManager; + +/** + * Class responsible of loading Flipper inside your React Native application. This is the release + * flavor of it so it's empty as we don't want to load Flipper. + */ +public class ReactNativeFlipper { + public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { + // Do nothing as we don't want to initialize Flipper on Release. + } +} diff --git a/example/android/build.gradle b/example/android/build.gradle index cb9d6232..67d887b0 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -1,21 +1,21 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + buildscript { ext { - buildToolsVersion = "34.0.0" + buildToolsVersion = "33.0.0" minSdkVersion = 21 - compileSdkVersion = 34 - targetSdkVersion = 34 - ndkVersion = "25.1.8937393" - kotlinVersion = "1.8.0" + compileSdkVersion = 33 + targetSdkVersion = 33 + + // We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP. + ndkVersion = "23.1.7779620" } repositories { google() mavenCentral() } dependencies { - classpath("com.android.tools.build:gradle") + classpath("com.android.tools.build:gradle:7.3.1") classpath("com.facebook.react:react-native-gradle-plugin") - classpath("org.jetbrains.kotlin:kotlin-gradle-plugin") } } - -apply plugin: "com.facebook.react.rootproject" diff --git a/example/android/gradle.properties b/example/android/gradle.properties index a46a5b90..e4af465e 100644 --- a/example/android/gradle.properties +++ b/example/android/gradle.properties @@ -24,6 +24,9 @@ android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true +# Version of flipper SDK to use with React Native +FLIPPER_VERSION=0.125.0 + # Use this property to specify which architecture you want to build. # You can also override it from the CLI using # ./gradlew -PreactNativeArchitectures=x86_64 diff --git a/example/android/gradle/wrapper/gradle-wrapper.jar b/example/android/gradle/wrapper/gradle-wrapper.jar index 7f93135c49b765f8051ef9d0a6055ff8e46073d8..41d9927a4d4fb3f96a785543079b8df6723c946b 100644 GIT binary patch delta 40585 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�Kz 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 delta 44451 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 W0}GkPe@wIjfE;Yd41Mt9+y4Mm#rGos diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index d11cdd90..8fad3f5a 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip -networkTimeout=10000 -validateDistributionUrl=true +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/example/android/gradlew b/example/android/gradlew index 0adc8e1a..4f906e0c 100755 --- a/example/android/gradlew +++ b/example/android/gradlew @@ -1,7 +1,7 @@ -#!/bin/sh +#!/usr/bin/env sh # -# Copyright © 2015-2021 the original authors. +# Copyright 2015 the original author or authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,99 +17,67 @@ # ############################################################################## -# -# Gradle start up script for POSIX generated by Gradle. -# -# Important for running: -# -# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is -# noncompliant, but you have some other compliant shell such as ksh or -# bash, then to run this script, type that shell name before the whole -# command line, like: -# -# ksh Gradle -# -# Busybox and similar reduced shells will NOT work, because this script -# requires all of these POSIX shell features: -# * functions; -# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», -# «${var#prefix}», «${var%suffix}», and «$( cmd )»; -# * compound commands having a testable exit status, especially «case»; -# * various built-in commands including «command», «set», and «ulimit». -# -# Important for patching: -# -# (2) This script targets any POSIX shell, so it avoids extensions provided -# by Bash, Ksh, etc; in particular arrays are avoided. -# -# The "traditional" practice of packing multiple parameters into a -# space-separated string is a well documented source of bugs and security -# problems, so this is (mostly) avoided, by progressively accumulating -# options in "$@", and eventually passing that to Java. -# -# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, -# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; -# see the in-line comments for details. -# -# There are tweaks for specific operating systems such as AIX, CygWin, -# Darwin, MinGW, and NonStop. -# -# (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt -# within the Gradle project. -# -# You can find Gradle at https://github.com/gradle/gradle/. -# +## +## Gradle start up script for UN*X +## ############################################################################## # Attempt to set APP_HOME - # Resolve links: $0 may be a link -app_path=$0 - -# Need this for daisy-chained symlinks. -while - APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path - [ -h "$app_path" ] -do - ls=$( ls -ld "$app_path" ) - link=${ls#*' -> '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum +MAX_FD="maximum" warn () { echo "$*" -} >&2 +} die () { echo echo "$*" echo exit 1 -} >&2 +} # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar @@ -119,9 +87,9 @@ CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java + JAVACMD="$JAVA_HOME/jre/sh/java" else - JAVACMD=$JAVA_HOME/bin/java + JAVACMD="$JAVA_HOME/bin/java" fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -130,120 +98,88 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the location of your Java installation." - fi fi # Increase the maximum file descriptors if we can. -if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then - case $MAX_FD in #( - max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 - MAX_FD=$( ulimit -H -n ) || - warn "Could not query maximum file descriptor limit" - esac - case $MAX_FD in #( - '' | soft) :;; #( - *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi fi -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi # For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg + i=`expr $i + 1` done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac fi +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' - -# Collect all arguments for the java command; -# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of -# shell script including quotes and variable substitutions, so put them in -# double quotes to make sure that they get re-expanded; and -# * put everything else in single quotes, so that it's not re-expanded. - -set -- \ - "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -classpath "$CLASSPATH" \ - org.gradle.wrapper.GradleWrapperMain \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" exec "$JAVACMD" "$@" diff --git a/example/android/gradlew.bat b/example/android/gradlew.bat index 6689b85b..107acd32 100644 --- a/example/android/gradlew.bat +++ b/example/android/gradlew.bat @@ -1,92 +1,89 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* - -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/example/android/settings.gradle b/example/android/settings.gradle index 3066e7de..0449546a 100644 --- a/example/android/settings.gradle +++ b/example/android/settings.gradle @@ -1,4 +1,4 @@ rootProject.name = 'RNPermissionsExample' apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) include ':app' -includeBuild('../node_modules/@react-native/gradle-plugin') +includeBuild('../node_modules/react-native-gradle-plugin') diff --git a/example/babel.config.js b/example/babel.config.js index fcd7049b..f842b77f 100644 --- a/example/babel.config.js +++ b/example/babel.config.js @@ -1,12 +1,3 @@ -const path = require('path'); -const pkg = require('../package.json'); - -const resolverConfig = { - extensions: ['.ts', '.tsx', '.js', '.jsx', '.json'], - alias: {[pkg.name]: path.resolve(__dirname, '../src')}, -}; - module.exports = { - presets: ['module:@react-native/babel-preset'], - plugins: [['module-resolver', resolverConfig]], + presets: ['module:metro-react-native-babel-preset'], }; diff --git a/example/index.js b/example/index.js index 587a4285..7b8192ab 100644 --- a/example/index.js +++ b/example/index.js @@ -1,8 +1,8 @@ import React from 'react'; import {AppRegistry} from 'react-native'; import {Provider as PaperProvider} from 'react-native-paper'; +import {App} from './App'; import {name as appName} from './app.json'; -import {App} from './src/App'; let Main = () => ( diff --git a/example/ios/Podfile b/example/ios/Podfile index def21880..9ebd62d7 100644 --- a/example/ios/Podfile +++ b/example/ios/Podfile @@ -1,41 +1,9 @@ -def node_require(script) - # Resolve script with node to allow for hoisting - require Pod::Executable.execute_command('node', ['-p', - "require.resolve( - '#{script}', - {paths: [process.argv[1]]}, - )", __dir__]).strip -end - -node_require('react-native/scripts/react_native_pods.rb') -node_require('react-native-permissions/scripts/setup.rb') +require_relative '../node_modules/react-native/scripts/react_native_pods' +require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' platform :ios, min_ios_version_supported prepare_react_native_project! -setup_permissions([ - 'AppTrackingTransparency', - 'Bluetooth', - 'Calendars', - 'CalendarsWriteOnly', - 'Camera', - 'Contacts', - 'FaceID', - 'LocationAccuracy', - 'LocationAlways', - 'LocationWhenInUse', - 'MediaLibrary', - 'Microphone', - 'Motion', - 'Notifications', - 'PhotoLibrary', - 'PhotoLibraryAddOnly', - 'Reminders', - # 'Siri', - 'SpeechRecognition', - 'StoreKit', -]) - # If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set. # because `react-native-flipper` depends on (FlipperKit,...) that will be excluded # @@ -56,8 +24,19 @@ end target 'RNPermissionsExample' do config = use_native_modules! + # Flags change depending on the env values. + flags = get_default_flags() + + # Enable new architecture. + # ENV['RCT_NEW_ARCH_ENABLED'] = '1'; + use_react_native!( :path => config[:reactNativePath], + # Hermes is now enabled by default. Disable by setting this flag to false. + # Upcoming versions of React Native may rely on get_default_flags(), but + # we make it explicit here to aid in the React Native upgrade process. + :hermes_enabled => flags[:hermes_enabled], + :fabric_enabled => flags[:fabric_enabled], # Enables Flipper. # # Note that if you have use_frameworks! enabled, Flipper will not work and @@ -68,11 +47,12 @@ target 'RNPermissionsExample' do ) post_install do |installer| - # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202 react_native_post_install( installer, - config[:reactNativePath], + # Set `mac_catalyst_enabled` to `true` in order to apply patches + # necessary for Mac Catalyst builds :mac_catalyst_enabled => false ) + __apply_Xcode_12_5_M1_post_install_workaround(installer) end end diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 56cfd9c6..243d05e1 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,17 +1,18 @@ PODS: - - boost (1.83.0) + - boost (1.76.0) - CocoaAsyncSocket (7.6.5) - DoubleConversion (1.1.6) - - FBLazyVector (0.73.4) - - FBReactNativeSpec (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTRequired (= 0.73.4) - - RCTTypeSafety (= 0.73.4) - - React-Core (= 0.73.4) - - React-jsi (= 0.73.4) - - ReactCommon/turbomodule/core (= 0.73.4) - - Flipper (0.201.0): + - FBLazyVector (0.71.4) + - FBReactNativeSpec (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTRequired (= 0.71.4) + - RCTTypeSafety (= 0.71.4) + - React-Core (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - Flipper (0.125.0): - Flipper-Folly (~> 2.6) + - Flipper-RSocket (~> 1.4) - Flipper-Boost-iOSX (1.76.0.1.11) - Flipper-DoubleConversion (3.2.0.1) - Flipper-Fmt (7.1.7) @@ -24,100 +25,97 @@ PODS: - OpenSSL-Universal (= 1.1.1100) - Flipper-Glog (0.5.0.5) - Flipper-PeerTalk (0.0.4) - - FlipperKit (0.201.0): - - FlipperKit/Core (= 0.201.0) - - FlipperKit/Core (0.201.0): - - Flipper (~> 0.201.0) + - Flipper-RSocket (1.4.3): + - Flipper-Folly (~> 2.6) + - FlipperKit (0.125.0): + - FlipperKit/Core (= 0.125.0) + - FlipperKit/Core (0.125.0): + - Flipper (~> 0.125.0) - FlipperKit/CppBridge - FlipperKit/FBCxxFollyDynamicConvert - FlipperKit/FBDefines - FlipperKit/FKPortForwarding - SocketRocket (~> 0.6.0) - - FlipperKit/CppBridge (0.201.0): - - Flipper (~> 0.201.0) - - FlipperKit/FBCxxFollyDynamicConvert (0.201.0): + - FlipperKit/CppBridge (0.125.0): + - Flipper (~> 0.125.0) + - FlipperKit/FBCxxFollyDynamicConvert (0.125.0): - Flipper-Folly (~> 2.6) - - FlipperKit/FBDefines (0.201.0) - - FlipperKit/FKPortForwarding (0.201.0): + - FlipperKit/FBDefines (0.125.0) + - FlipperKit/FKPortForwarding (0.125.0): - CocoaAsyncSocket (~> 7.6) - Flipper-PeerTalk (~> 0.0.4) - - FlipperKit/FlipperKitHighlightOverlay (0.201.0) - - FlipperKit/FlipperKitLayoutHelpers (0.201.0): + - FlipperKit/FlipperKitHighlightOverlay (0.125.0) + - FlipperKit/FlipperKitLayoutHelpers (0.125.0): - FlipperKit/Core - FlipperKit/FlipperKitHighlightOverlay - FlipperKit/FlipperKitLayoutTextSearchable - - FlipperKit/FlipperKitLayoutIOSDescriptors (0.201.0): + - FlipperKit/FlipperKitLayoutIOSDescriptors (0.125.0): - FlipperKit/Core - FlipperKit/FlipperKitHighlightOverlay - FlipperKit/FlipperKitLayoutHelpers - - FlipperKit/FlipperKitLayoutPlugin (0.201.0): + - YogaKit (~> 1.18) + - FlipperKit/FlipperKitLayoutPlugin (0.125.0): - FlipperKit/Core - FlipperKit/FlipperKitHighlightOverlay - FlipperKit/FlipperKitLayoutHelpers - FlipperKit/FlipperKitLayoutIOSDescriptors - FlipperKit/FlipperKitLayoutTextSearchable - - FlipperKit/FlipperKitLayoutTextSearchable (0.201.0) - - FlipperKit/FlipperKitNetworkPlugin (0.201.0): + - YogaKit (~> 1.18) + - FlipperKit/FlipperKitLayoutTextSearchable (0.125.0) + - FlipperKit/FlipperKitNetworkPlugin (0.125.0): - FlipperKit/Core - - FlipperKit/FlipperKitReactPlugin (0.201.0): + - FlipperKit/FlipperKitReactPlugin (0.125.0): - FlipperKit/Core - - FlipperKit/FlipperKitUserDefaultsPlugin (0.201.0): + - FlipperKit/FlipperKitUserDefaultsPlugin (0.125.0): - FlipperKit/Core - - FlipperKit/SKIOSNetworkPlugin (0.201.0): + - FlipperKit/SKIOSNetworkPlugin (0.125.0): - FlipperKit/Core - FlipperKit/FlipperKitNetworkPlugin - fmt (6.2.1) - glog (0.3.5) - - hermes-engine (0.73.4): - - hermes-engine/Pre-built (= 0.73.4) - - hermes-engine/Pre-built (0.73.4) + - hermes-engine (0.71.4): + - hermes-engine/Pre-built (= 0.71.4) + - hermes-engine/Pre-built (0.71.4) - libevent (2.1.12) - OpenSSL-Universal (1.1.1100) - - RCT-Folly (2022.05.16.00): - - boost - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - RCT-Folly/Default (= 2022.05.16.00) - - RCT-Folly/Default (2022.05.16.00): + - RCT-Folly (2021.07.22.00): - boost - DoubleConversion - fmt (~> 6.2.1) - glog - - RCT-Folly/Fabric (2022.05.16.00): + - RCT-Folly/Default (= 2021.07.22.00) + - RCT-Folly/Default (2021.07.22.00): - boost - DoubleConversion - fmt (~> 6.2.1) - glog - - RCT-Folly/Futures (2022.05.16.00): + - RCT-Folly/Futures (2021.07.22.00): - boost - DoubleConversion - fmt (~> 6.2.1) - glog - libevent - - RCTRequired (0.73.4) - - RCTTypeSafety (0.73.4): - - FBLazyVector (= 0.73.4) - - RCTRequired (= 0.73.4) - - React-Core (= 0.73.4) - - React (0.73.4): - - React-Core (= 0.73.4) - - React-Core/DevSupport (= 0.73.4) - - React-Core/RCTWebSocket (= 0.73.4) - - React-RCTActionSheet (= 0.73.4) - - React-RCTAnimation (= 0.73.4) - - React-RCTBlob (= 0.73.4) - - React-RCTImage (= 0.73.4) - - React-RCTLinking (= 0.73.4) - - React-RCTNetwork (= 0.73.4) - - React-RCTSettings (= 0.73.4) - - React-RCTText (= 0.73.4) - - React-RCTVibration (= 0.73.4) - - React-callinvoker (0.73.4) - - React-Codegen (0.73.4): - - DoubleConversion + - RCTRequired (0.71.4) + - RCTTypeSafety (0.71.4): + - FBLazyVector (= 0.71.4) + - RCTRequired (= 0.71.4) + - React-Core (= 0.71.4) + - React (0.71.4): + - React-Core (= 0.71.4) + - React-Core/DevSupport (= 0.71.4) + - React-Core/RCTWebSocket (= 0.71.4) + - React-RCTActionSheet (= 0.71.4) + - React-RCTAnimation (= 0.71.4) + - React-RCTBlob (= 0.71.4) + - React-RCTImage (= 0.71.4) + - React-RCTLinking (= 0.71.4) + - React-RCTNetwork (= 0.71.4) + - React-RCTSettings (= 0.71.4) + - React-RCTText (= 0.71.4) + - React-RCTVibration (= 0.71.4) + - React-callinvoker (0.71.4) + - React-Codegen (0.71.4): - FBReactNativeSpec - - glog - hermes-engine - RCT-Folly - RCTRequired @@ -125,1034 +123,342 @@ PODS: - React-Core - React-jsi - React-jsiexecutor - - React-NativeModulesApple - - React-rncore - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - - React-Core (0.73.4): + - React-Core (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.4) - - React-cxxreact + - RCT-Folly (= 2021.07.22.00) + - React-Core/Default (= 0.71.4) + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/CoreModulesHeaders (0.73.4): + - React-Core/CoreModulesHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/Default (0.73.4): + - React-Core/Default (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-cxxreact + - RCT-Folly (= 2021.07.22.00) + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/DevSupport (0.73.4): + - React-Core/DevSupport (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.4) - - React-Core/RCTWebSocket (= 0.73.4) - - React-cxxreact + - RCT-Folly (= 2021.07.22.00) + - React-Core/Default (= 0.71.4) + - React-Core/RCTWebSocket (= 0.71.4) + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-jsinspector (= 0.73.4) - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-jsinspector (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTActionSheetHeaders (0.73.4): + - React-Core/RCTActionSheetHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTAnimationHeaders (0.73.4): + - React-Core/RCTAnimationHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTBlobHeaders (0.73.4): + - React-Core/RCTBlobHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTImageHeaders (0.73.4): + - React-Core/RCTImageHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTLinkingHeaders (0.73.4): + - React-Core/RCTLinkingHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTNetworkHeaders (0.73.4): + - React-Core/RCTNetworkHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTSettingsHeaders (0.73.4): + - React-Core/RCTSettingsHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTTextHeaders (0.73.4): + - React-Core/RCTTextHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTVibrationHeaders (0.73.4): + - React-Core/RCTVibrationHeaders (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) + - RCT-Folly (= 2021.07.22.00) - React-Core/Default - - React-cxxreact + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-Core/RCTWebSocket (0.73.4): + - React-Core/RCTWebSocket (0.71.4): - glog - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.4) - - React-cxxreact + - RCT-Folly (= 2021.07.22.00) + - React-Core/Default (= 0.71.4) + - React-cxxreact (= 0.71.4) - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) + - React-jsi (= 0.71.4) + - React-jsiexecutor (= 0.71.4) + - React-perflogger (= 0.71.4) - Yoga - - React-CoreModules (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety (= 0.73.4) - - React-Codegen - - React-Core/CoreModulesHeaders (= 0.73.4) - - React-jsi (= 0.73.4) - - React-NativeModulesApple + - React-CoreModules (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTTypeSafety (= 0.71.4) + - React-Codegen (= 0.71.4) + - React-Core/CoreModulesHeaders (= 0.71.4) + - React-jsi (= 0.71.4) - React-RCTBlob - - React-RCTImage (= 0.73.4) - - ReactCommon - - SocketRocket (= 0.6.1) - - React-cxxreact (0.73.4): - - boost (= 1.83.0) - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.4) - - React-debug (= 0.73.4) - - React-jsi (= 0.73.4) - - React-jsinspector (= 0.73.4) - - React-logger (= 0.73.4) - - React-perflogger (= 0.73.4) - - React-runtimeexecutor (= 0.73.4) - - React-debug (0.73.4) - - React-Fabric (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/animations (= 0.73.4) - - React-Fabric/attributedstring (= 0.73.4) - - React-Fabric/componentregistry (= 0.73.4) - - React-Fabric/componentregistrynative (= 0.73.4) - - React-Fabric/components (= 0.73.4) - - React-Fabric/core (= 0.73.4) - - React-Fabric/imagemanager (= 0.73.4) - - React-Fabric/leakchecker (= 0.73.4) - - React-Fabric/mounting (= 0.73.4) - - React-Fabric/scheduler (= 0.73.4) - - React-Fabric/telemetry (= 0.73.4) - - React-Fabric/templateprocessor (= 0.73.4) - - React-Fabric/textlayoutmanager (= 0.73.4) - - React-Fabric/uimanager (= 0.73.4) - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/animations (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/attributedstring (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/componentregistry (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/componentregistrynative (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/components/inputaccessory (= 0.73.4) - - React-Fabric/components/legacyviewmanagerinterop (= 0.73.4) - - React-Fabric/components/modal (= 0.73.4) - - React-Fabric/components/rncore (= 0.73.4) - - React-Fabric/components/root (= 0.73.4) - - React-Fabric/components/safeareaview (= 0.73.4) - - React-Fabric/components/scrollview (= 0.73.4) - - React-Fabric/components/text (= 0.73.4) - - React-Fabric/components/textinput (= 0.73.4) - - React-Fabric/components/unimplementedview (= 0.73.4) - - React-Fabric/components/view (= 0.73.4) - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/inputaccessory (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/legacyviewmanagerinterop (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/modal (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/rncore (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/root (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/safeareaview (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/scrollview (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/text (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/textinput (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/unimplementedview (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/view (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - Yoga - - React-Fabric/core (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/imagemanager (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/leakchecker (0.73.4): + - React-RCTImage (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-cxxreact (0.71.4): + - boost (= 1.76.0) - DoubleConversion - - fmt (~> 6.2.1) - glog - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/mounting (0.73.4): + - RCT-Folly (= 2021.07.22.00) + - React-callinvoker (= 0.71.4) + - React-jsi (= 0.71.4) + - React-jsinspector (= 0.71.4) + - React-logger (= 0.71.4) + - React-perflogger (= 0.71.4) + - React-runtimeexecutor (= 0.71.4) + - React-hermes (0.71.4): - DoubleConversion - - fmt (~> 6.2.1) - glog - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics + - RCT-Folly (= 2021.07.22.00) + - RCT-Folly/Futures (= 2021.07.22.00) + - React-cxxreact (= 0.71.4) - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/scheduler (0.73.4): + - React-jsiexecutor (= 0.71.4) + - React-jsinspector (= 0.71.4) + - React-perflogger (= 0.71.4) + - React-jsi (0.71.4): + - boost (= 1.76.0) - DoubleConversion - - fmt (~> 6.2.1) - glog - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/telemetry (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/templateprocessor (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/textlayoutmanager (0.73.4): + - RCT-Folly (= 2021.07.22.00) + - React-jsiexecutor (0.71.4): - DoubleConversion - - fmt (~> 6.2.1) - glog - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/uimanager - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/uimanager (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) + - RCT-Folly (= 2021.07.22.00) + - React-cxxreact (= 0.71.4) + - React-jsi (= 0.71.4) + - React-perflogger (= 0.71.4) + - React-jsinspector (0.71.4) + - React-logger (0.71.4): - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) + - react-native-safe-area-context (4.5.0): + - RCT-Folly - RCTRequired - RCTTypeSafety - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-FabricImage (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired (= 0.73.4) - - RCTTypeSafety (= 0.73.4) - - React-Fabric - - React-graphics - - React-ImageManager - - React-jsi - - React-jsiexecutor (= 0.73.4) - - React-logger - - React-rendererdebug - - React-utils - - ReactCommon - - Yoga - - React-graphics (0.73.4): - - glog - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-Core/Default (= 0.73.4) - - React-utils - - React-hermes (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - RCT-Folly/Futures (= 2022.05.16.00) - - React-cxxreact (= 0.73.4) - - React-jsi - - React-jsiexecutor (= 0.73.4) - - React-jsinspector (= 0.73.4) - - React-perflogger (= 0.73.4) - - React-ImageManager (0.73.4): - - glog - - RCT-Folly/Fabric - - React-Core/Default - - React-debug - - React-Fabric - - React-graphics - - React-rendererdebug - - React-utils - - React-jserrorhandler (0.73.4): - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-debug - - React-jsi - - React-Mapbuffer - - React-jsi (0.73.4): - - boost (= 1.83.0) - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-jsiexecutor (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-cxxreact (= 0.73.4) - - React-jsi (= 0.73.4) - - React-perflogger (= 0.73.4) - - React-jsinspector (0.73.4) - - React-logger (0.73.4): - - glog - - React-Mapbuffer (0.73.4): - - glog - - React-debug - - react-native-safe-area-context (4.8.2): - - React-Core - - React-nativeconfig (0.73.4) - - React-NativeModulesApple (0.73.4): - - glog - - hermes-engine - - React-callinvoker - - React-Core - - React-cxxreact - - React-jsi - - React-runtimeexecutor - - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - - React-perflogger (0.73.4) - - React-RCTActionSheet (0.73.4): - - React-Core/RCTActionSheetHeaders (= 0.73.4) - - React-RCTAnimation (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTAnimationHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTAppDelegate (0.73.4): + - React-perflogger (0.71.4) + - React-RCTActionSheet (0.71.4): + - React-Core/RCTActionSheetHeaders (= 0.71.4) + - React-RCTAnimation (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTTypeSafety (= 0.71.4) + - React-Codegen (= 0.71.4) + - React-Core/RCTAnimationHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTAppDelegate (0.71.4): - RCT-Folly - RCTRequired - RCTTypeSafety - React-Core - - React-CoreModules - - React-hermes - - React-nativeconfig - - React-NativeModulesApple - - React-RCTFabric - - React-RCTImage - - React-RCTNetwork - - React-runtimescheduler - - ReactCommon - - React-RCTBlob (0.73.4): - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Codegen - - React-Core/RCTBlobHeaders - - React-Core/RCTWebSocket - - React-jsi - - React-NativeModulesApple - - React-RCTNetwork - - ReactCommon - - React-RCTFabric (0.73.4): - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-Core - - React-debug - - React-Fabric - - React-FabricImage - - React-graphics - - React-ImageManager - - React-jsi - - React-nativeconfig - - React-RCTImage - - React-RCTText - - React-rendererdebug - - React-runtimescheduler - - React-utils - - Yoga - - React-RCTImage (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTImageHeaders - - React-jsi - - React-NativeModulesApple - - React-RCTNetwork - - ReactCommon - - React-RCTLinking (0.73.4): - - React-Codegen - - React-Core/RCTLinkingHeaders (= 0.73.4) - - React-jsi (= 0.73.4) - - React-NativeModulesApple - - ReactCommon - - ReactCommon/turbomodule/core (= 0.73.4) - - React-RCTNetwork (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTNetworkHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTSettings (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTSettingsHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTText (0.73.4): - - React-Core/RCTTextHeaders (= 0.73.4) - - Yoga - - React-RCTVibration (0.73.4): - - RCT-Folly (= 2022.05.16.00) - - React-Codegen - - React-Core/RCTVibrationHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-rendererdebug (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - RCT-Folly (= 2022.05.16.00) - - React-debug - - React-rncore (0.73.4) - - React-runtimeexecutor (0.73.4): - - React-jsi (= 0.73.4) - - React-runtimescheduler (0.73.4): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker - - React-cxxreact - - React-debug - - React-jsi - - React-rendererdebug - - React-runtimeexecutor - - React-utils - - React-utils (0.73.4): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-debug - - ReactCommon (0.73.4): - - React-logger (= 0.73.4) - - ReactCommon/turbomodule (= 0.73.4) - - ReactCommon/turbomodule (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.4) - - React-cxxreact (= 0.73.4) - - React-jsi (= 0.73.4) - - React-logger (= 0.73.4) - - React-perflogger (= 0.73.4) - - ReactCommon/turbomodule/bridging (= 0.73.4) - - ReactCommon/turbomodule/core (= 0.73.4) - - ReactCommon/turbomodule/bridging (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.4) - - React-cxxreact (= 0.73.4) - - React-jsi (= 0.73.4) - - React-logger (= 0.73.4) - - React-perflogger (= 0.73.4) - - ReactCommon/turbomodule/core (0.73.4): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.4) - - React-cxxreact (= 0.73.4) - - React-jsi (= 0.73.4) - - React-logger (= 0.73.4) - - React-perflogger (= 0.73.4) - - RNPermissions (4.1.5): - - React-Core - - RNVectorIcons (10.0.3): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-Core - - SocketRocket (0.6.1) + - ReactCommon/turbomodule/core + - React-RCTBlob (0.71.4): + - hermes-engine + - RCT-Folly (= 2021.07.22.00) + - React-Codegen (= 0.71.4) + - React-Core/RCTBlobHeaders (= 0.71.4) + - React-Core/RCTWebSocket (= 0.71.4) + - React-jsi (= 0.71.4) + - React-RCTNetwork (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTImage (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTTypeSafety (= 0.71.4) + - React-Codegen (= 0.71.4) + - React-Core/RCTImageHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - React-RCTNetwork (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTLinking (0.71.4): + - React-Codegen (= 0.71.4) + - React-Core/RCTLinkingHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTNetwork (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTTypeSafety (= 0.71.4) + - React-Codegen (= 0.71.4) + - React-Core/RCTNetworkHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTSettings (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - RCTTypeSafety (= 0.71.4) + - React-Codegen (= 0.71.4) + - React-Core/RCTSettingsHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-RCTText (0.71.4): + - React-Core/RCTTextHeaders (= 0.71.4) + - React-RCTVibration (0.71.4): + - RCT-Folly (= 2021.07.22.00) + - React-Codegen (= 0.71.4) + - React-Core/RCTVibrationHeaders (= 0.71.4) + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/core (= 0.71.4) + - React-runtimeexecutor (0.71.4): + - React-jsi (= 0.71.4) + - ReactCommon/turbomodule/bridging (0.71.4): + - DoubleConversion + - glog + - hermes-engine + - RCT-Folly (= 2021.07.22.00) + - React-callinvoker (= 0.71.4) + - React-Core (= 0.71.4) + - React-cxxreact (= 0.71.4) + - React-jsi (= 0.71.4) + - React-logger (= 0.71.4) + - React-perflogger (= 0.71.4) + - ReactCommon/turbomodule/core (0.71.4): + - DoubleConversion + - glog + - hermes-engine + - RCT-Folly (= 2021.07.22.00) + - React-callinvoker (= 0.71.4) + - React-Core (= 0.71.4) + - React-cxxreact (= 0.71.4) + - React-jsi (= 0.71.4) + - React-logger (= 0.71.4) + - React-perflogger (= 0.71.4) + - RNPermissions (3.8.0): + - React-Core + - RNVectorIcons (9.2.0): + - React-Core + - SocketRocket (0.6.0) - Yoga (1.14.0) + - YogaKit (1.18.1): + - Yoga (~> 1.14) DEPENDENCIES: - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) - - Flipper (= 0.201.0) + - Flipper (= 0.125.0) - Flipper-Boost-iOSX (= 1.76.0.1.11) - Flipper-DoubleConversion (= 3.2.0.1) - Flipper-Fmt (= 7.1.7) - Flipper-Folly (= 2.6.10) - Flipper-Glog (= 0.5.0.5) - Flipper-PeerTalk (= 0.0.4) - - FlipperKit (= 0.201.0) - - FlipperKit/Core (= 0.201.0) - - FlipperKit/CppBridge (= 0.201.0) - - FlipperKit/FBCxxFollyDynamicConvert (= 0.201.0) - - FlipperKit/FBDefines (= 0.201.0) - - FlipperKit/FKPortForwarding (= 0.201.0) - - FlipperKit/FlipperKitHighlightOverlay (= 0.201.0) - - FlipperKit/FlipperKitLayoutPlugin (= 0.201.0) - - FlipperKit/FlipperKitLayoutTextSearchable (= 0.201.0) - - FlipperKit/FlipperKitNetworkPlugin (= 0.201.0) - - FlipperKit/FlipperKitReactPlugin (= 0.201.0) - - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.201.0) - - FlipperKit/SKIOSNetworkPlugin (= 0.201.0) + - Flipper-RSocket (= 1.4.3) + - FlipperKit (= 0.125.0) + - FlipperKit/Core (= 0.125.0) + - FlipperKit/CppBridge (= 0.125.0) + - FlipperKit/FBCxxFollyDynamicConvert (= 0.125.0) + - FlipperKit/FBDefines (= 0.125.0) + - FlipperKit/FKPortForwarding (= 0.125.0) + - FlipperKit/FlipperKitHighlightOverlay (= 0.125.0) + - FlipperKit/FlipperKitLayoutPlugin (= 0.125.0) + - FlipperKit/FlipperKitLayoutTextSearchable (= 0.125.0) + - FlipperKit/FlipperKitNetworkPlugin (= 0.125.0) + - FlipperKit/FlipperKitReactPlugin (= 0.125.0) + - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0) + - FlipperKit/SKIOSNetworkPlugin (= 0.125.0) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) - libevent (~> 2.1.12) - OpenSSL-Universal (= 1.1.1100) - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) - React (from `../node_modules/react-native/`) @@ -1163,38 +469,24 @@ DEPENDENCIES: - React-Core/RCTWebSocket (from `../node_modules/react-native/`) - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) - - React-debug (from `../node_modules/react-native/ReactCommon/react/debug`) - - React-Fabric (from `../node_modules/react-native/ReactCommon`) - - React-FabricImage (from `../node_modules/react-native/ReactCommon`) - - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`) - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`) - - React-ImageManager (from `../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) - - React-jserrorhandler (from `../node_modules/react-native/ReactCommon/jserrorhandler`) - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) - - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`) + - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) - React-logger (from `../node_modules/react-native/ReactCommon/logger`) - - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`) - react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`) - - React-nativeconfig (from `../node_modules/react-native/ReactCommon`) - - React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`) - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) - - React-RCTFabric (from `../node_modules/react-native/React`) - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) - React-RCTText (from `../node_modules/react-native/Libraries/Text`) - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) - - React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`) - - React-rncore (from `../node_modules/react-native/ReactCommon`) - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) - - React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) - - React-utils (from `../node_modules/react-native/ReactCommon/react/utils`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - RNPermissions (from `../node_modules/react-native-permissions`) - RNVectorIcons (from `../node_modules/react-native-vector-icons`) @@ -1210,11 +502,13 @@ SPEC REPOS: - Flipper-Folly - Flipper-Glog - Flipper-PeerTalk + - Flipper-RSocket - FlipperKit - fmt - libevent - OpenSSL-Universal - SocketRocket + - YogaKit EXTERNAL SOURCES: boost: @@ -1229,7 +523,6 @@ EXTERNAL SOURCES: :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" hermes-engine: :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" - :tag: hermes-2023-11-17-RNv0.73.0-21043a3fc062be445e56a2c10ecd8be028dd9cc5 RCT-Folly: :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" RCTRequired: @@ -1248,36 +541,18 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/React/CoreModules" React-cxxreact: :path: "../node_modules/react-native/ReactCommon/cxxreact" - React-debug: - :path: "../node_modules/react-native/ReactCommon/react/debug" - React-Fabric: - :path: "../node_modules/react-native/ReactCommon" - React-FabricImage: - :path: "../node_modules/react-native/ReactCommon" - React-graphics: - :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics" React-hermes: :path: "../node_modules/react-native/ReactCommon/hermes" - React-ImageManager: - :path: "../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" - React-jserrorhandler: - :path: "../node_modules/react-native/ReactCommon/jserrorhandler" React-jsi: :path: "../node_modules/react-native/ReactCommon/jsi" React-jsiexecutor: :path: "../node_modules/react-native/ReactCommon/jsiexecutor" React-jsinspector: - :path: "../node_modules/react-native/ReactCommon/jsinspector-modern" + :path: "../node_modules/react-native/ReactCommon/jsinspector" React-logger: :path: "../node_modules/react-native/ReactCommon/logger" - React-Mapbuffer: - :path: "../node_modules/react-native/ReactCommon" react-native-safe-area-context: :path: "../node_modules/react-native-safe-area-context" - React-nativeconfig: - :path: "../node_modules/react-native/ReactCommon" - React-NativeModulesApple: - :path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" React-perflogger: :path: "../node_modules/react-native/ReactCommon/reactperflogger" React-RCTActionSheet: @@ -1288,8 +563,6 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/Libraries/AppDelegate" React-RCTBlob: :path: "../node_modules/react-native/Libraries/Blob" - React-RCTFabric: - :path: "../node_modules/react-native/React" React-RCTImage: :path: "../node_modules/react-native/Libraries/Image" React-RCTLinking: @@ -1302,16 +575,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/Libraries/Text" React-RCTVibration: :path: "../node_modules/react-native/Libraries/Vibration" - React-rendererdebug: - :path: "../node_modules/react-native/ReactCommon/react/renderer/debug" - React-rncore: - :path: "../node_modules/react-native/ReactCommon" React-runtimeexecutor: :path: "../node_modules/react-native/ReactCommon/runtimeexecutor" - React-runtimescheduler: - :path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" - React-utils: - :path: "../node_modules/react-native/ReactCommon/react/utils" ReactCommon: :path: "../node_modules/react-native/ReactCommon" RNPermissions: @@ -1322,71 +587,59 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon/yoga" SPEC CHECKSUMS: - boost: d3f49c53809116a5d38da093a8aa78bf551aed09 + boost: 57d2868c099736d80fcd648bf211b4431e51a558 CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 - DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953 - FBLazyVector: 84f6edbe225f38aebd9deaf1540a4160b1f087d7 - FBReactNativeSpec: d0086a479be91c44ce4687a962956a352d2dc697 - Flipper: c7a0093234c4bdd456e363f2f19b2e4b27652d44 + DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 + FBLazyVector: 446e84642979fff0ba57f3c804c2228a473aeac2 + FBReactNativeSpec: 241709e132e3bf1526c1c4f00bc5384dd39dfba9 + Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0 Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30 Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3 Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446 Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 - FlipperKit: 37525a5d056ef9b93d1578e04bc3ea1de940094f + Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541 + FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86 fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 - glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2 - hermes-engine: b2669ce35fc4ac14f523b307aff8896799829fe2 + glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b + hermes-engine: a1f157c49ea579c28b0296bda8530e980c45bdb3 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c - RCT-Folly: 7169b2b1c44399c76a47b5deaaba715eeeb476c0 - RCTRequired: ab7f915c15569f04a49669e573e6e319a53f9faa - RCTTypeSafety: 63b97ced7b766865057e7154db0e81ce4ee6cf1e - React: 1c87497e50fa40ba9c54e5ea5e53483a0f8eecc0 - React-callinvoker: e3a52a9a93e3eb004d7282c26a4fb27003273fe6 - React-Codegen: 50c0f8f073e71b929b057b68bf31be604f1dccc8 - React-Core: d0ecde72894b792cb8922efaa0990199cbe85169 - React-CoreModules: 2ff1684dd517f0c441495d90a704d499f05e9d0a - React-cxxreact: d9be2fac926741052395da0a6d0bab8d71e2f297 - React-debug: 4678e73a37cb501d784e99ff0f219b4940362a3b - React-Fabric: 460ee9d4b8b9de3382504a711430bfead1d5be1e - React-FabricImage: d0a0631bc8ad9143f42bfccf9d3d533a144cc3d6 - React-graphics: f0d5040263a9649e2a70ebe27b3120c49411afef - React-hermes: b9ac2f7b0c1eeb206eb883583cab7a973d570a6e - React-ImageManager: 6c4bf9d5ed363ead7b5aaf820a3feab221b7063e - React-jserrorhandler: 6e7a7e187583e14dc7a0053a2bdd66c252ea3b21 - React-jsi: 380cd24dd81a705dd042c18989fb10b07182210c - React-jsiexecutor: 8ed7a18b9f119440efdcd424c8257dc7e18067e2 - React-jsinspector: 9ac353eccf6ab54d1e0a33862ba91221d1e88460 - React-logger: 0a57b68dd2aec7ff738195f081f0520724b35dab - React-Mapbuffer: 63913773ed7f96b814a2521e13e6d010282096ad - react-native-safe-area-context: 0ee144a6170530ccc37a0fd9388e28d06f516a89 - React-nativeconfig: d7af5bae6da70fa15ce44f045621cf99ed24087c - React-NativeModulesApple: 0123905d5699853ac68519607555a9a4f5c7b3ac - React-perflogger: 8a1e1af5733004bdd91258dcefbde21e0d1faccd - React-RCTActionSheet: 64bbff3a3963664c2d0146f870fe8e0264aee4c4 - React-RCTAnimation: b698168a7269265a4694727196484342d695f0c1 - React-RCTAppDelegate: dcd8e955116eb1d1908dfaf08b4c970812e6a1e6 - React-RCTBlob: 47f8c3b2b4b7fa2c5f19c43f0b7f77f57fb9d953 - React-RCTFabric: 6067a32d683d0c2b84d444548bc15a263c64abed - React-RCTImage: ac0e77a44c290b20db783649b2b9cddc93e3eb99 - React-RCTLinking: e626fd2900913fe5d25922ea1be394b7aafa09c9 - React-RCTNetwork: d3114bce3977dafe8bd06421b29812f5a8527ba0 - React-RCTSettings: a53511f90d8df637a1a11ac729179a4d2f734481 - React-RCTText: f0176f5f5952f9a4a2c7354f5ae71f7c420aaf34 - React-RCTVibration: 8160223c6eda5b187079fec204f80eca8b8f3177 - React-rendererdebug: ed286b4da8648c27d6ed3ae1410d4b21ba890d5a - React-rncore: 43f133b89ac10c4b6ab43702a541dee1c292a3bf - React-runtimeexecutor: e6ab6bb083dbdbdd489cff426ed0bce0652e6edf - React-runtimescheduler: ed48e5faac6751e66ee1261c4bd01643b436f112 - React-utils: 6e5ad394416482ae21831050928ae27348f83487 - ReactCommon: 840a955d37b7f3358554d819446bffcf624b2522 - RNPermissions: ef39e995e1cad6dd8aae8b169fe92c6e6a5a4df3 - RNVectorIcons: 210f910e834e3485af40693ad4615c1ec22fc02b - SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17 - Yoga: 1b901a6d6eeba4e8a2e8f308f708691cdb5db312 + RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1 + RCTRequired: 5a024fdf458fa8c0d82fc262e76f982d4dcdecdd + RCTTypeSafety: b6c253064466411c6810b45f66bc1e43ce0c54ba + React: 715292db5bd46989419445a5547954b25d2090f0 + React-callinvoker: 105392d1179058585b564d35b4592fe1c46d6fba + React-Codegen: b75333b93d835afce84b73472927cccaef2c9f8c + React-Core: 88838ed1724c64905fc6c0811d752828a92e395b + React-CoreModules: cd238b4bb8dc8529ccc8b34ceae7267b04ce1882 + React-cxxreact: 291bfab79d8098dc5ebab98f62e6bdfe81b3955a + React-hermes: b1e67e9a81c71745704950516f40ee804349641c + React-jsi: c9d5b563a6af6bb57034a82c2b0d39d0a7483bdc + React-jsiexecutor: d6b7fa9260aa3cb40afee0507e3bc1d17ecaa6f2 + React-jsinspector: 1f51e775819199d3fe9410e69ee8d4c4161c7b06 + React-logger: 0d58569ec51d30d1792c5e86a8e3b78d24b582c6 + react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc + React-perflogger: 0bb0522a12e058f6eb69d888bc16f40c16c4b907 + React-RCTActionSheet: bfd675a10f06a18728ea15d82082d48f228a213a + React-RCTAnimation: 2fa220b2052ec75b733112aca39143d34546a941 + React-RCTAppDelegate: 8564f93c1d9274e95e3b0c746d08a87ff5a621b2 + React-RCTBlob: d0336111f46301ae8aba2e161817e451aad72dd6 + React-RCTImage: fec592c46edb7c12a9cde08780bdb4a688416c62 + React-RCTLinking: 14eccac5d2a3b34b89dbfa29e8ef6219a153fe2d + React-RCTNetwork: 1fbce92e772e39ca3687a2ebb854501ff6226dd7 + React-RCTSettings: 1abea36c9bb16d9979df6c4b42e2ea281b4bbcc5 + React-RCTText: 15355c41561a9f43dfd23616d0a0dd40ba05ed61 + React-RCTVibration: ad17efcfb2fa8f6bfd8ac0cf48d96668b8b28e0b + React-runtimeexecutor: 8fa50b38df6b992c76537993a2b0553d3b088004 + ReactCommon: b49a4b00ca6d181ff74b17c12b2d59ac4add0bde + RNPermissions: 930f326a122d3e8efb5af00602e7ca8f2c7a0762 + RNVectorIcons: fcc2f6cb32f5735b586e66d14103a74ce6ad61f8 + SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608 + Yoga: 79dd7410de6f8ad73a77c868d3d368843f0c93e0 + YogaKit: f782866e155069a2cca2517aafea43200b01fd5a -PODFILE CHECKSUM: 63d66a53e8a7a4bd573cf25dce961a936e0894e6 +PODFILE CHECKSUM: 2df7157942aab2be35e7c7f29f9ea2733aaa7fc0 -COCOAPODS: 1.15.2 +COCOAPODS: 1.12.0 diff --git a/example/ios/RNPermissionsExample.xcodeproj/project.pbxproj b/example/ios/RNPermissionsExample.xcodeproj/project.pbxproj index 16e7780d..859af829 100644 --- a/example/ios/RNPermissionsExample.xcodeproj/project.pbxproj +++ b/example/ios/RNPermissionsExample.xcodeproj/project.pbxproj @@ -108,6 +108,7 @@ buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "RNPermissionsExample" */; buildPhases = ( C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */, + FD10A7F022414F080027D42C /* Start Packager */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, @@ -240,6 +241,25 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-RNPermissionsExample/Pods-RNPermissionsExample-resources.sh\"\n"; showEnvVarsInLog = 0; }; + FD10A7F022414F080027D42C /* Start Packager */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Start Packager"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -316,7 +336,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++20"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -344,7 +364,7 @@ COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -352,7 +372,6 @@ GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", - _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION, ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -361,7 +380,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; + IPHONEOS_DEPLOYMENT_TARGET = 12.4; LD_RUNPATH_SEARCH_PATHS = ( /usr/lib/swift, "$(inherited)", @@ -373,18 +392,13 @@ ); MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; OTHER_CPLUSPLUSFLAGS = ( "$(OTHER_CFLAGS)", "-DFOLLY_NO_CONFIG", "-DFOLLY_MOBILE=1", "-DFOLLY_USE_LIBCPP=1", - "-DFOLLY_CFG_NO_COROUTINES=1", ); - OTHER_LDFLAGS = "$(inherited)"; - REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; - USE_HERMES = true; }; name = Debug; }; @@ -393,7 +407,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++20"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -421,20 +435,16 @@ COPY_PHASE_STRIP = YES; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION, - ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; + IPHONEOS_DEPLOYMENT_TARGET = 12.4; LD_RUNPATH_SEARCH_PATHS = ( /usr/lib/swift, "$(inherited)", @@ -445,18 +455,13 @@ "\"$(inherited)\"", ); MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = "$(inherited)"; OTHER_CPLUSPLUSFLAGS = ( "$(OTHER_CFLAGS)", "-DFOLLY_NO_CONFIG", "-DFOLLY_MOBILE=1", "-DFOLLY_USE_LIBCPP=1", - "-DFOLLY_CFG_NO_COROUTINES=1", ); - OTHER_LDFLAGS = "$(inherited)"; - REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; - USE_HERMES = true; VALIDATE_PRODUCT = YES; }; name = Release; diff --git a/example/ios/RNPermissionsExample/AppDelegate.mm b/example/ios/RNPermissionsExample/AppDelegate.mm index 1e3cb22e..54b5846c 100644 --- a/example/ios/RNPermissionsExample/AppDelegate.mm +++ b/example/ios/RNPermissionsExample/AppDelegate.mm @@ -15,11 +15,6 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( } - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge -{ - return [self getBundleURL]; -} - -- (NSURL *)getBundleURL { #if DEBUG return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"]; @@ -28,4 +23,14 @@ - (NSURL *)getBundleURL #endif } +/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off. +/// +/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html +/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture). +/// @return: `true` if the `concurrentRoot` feature is enabled. Otherwise, it returns `false`. +- (BOOL)concurrentRootEnabled +{ + return true; +} + @end diff --git a/example/metro.config.js b/example/metro.config.js index 833e3ca2..aaeb85da 100644 --- a/example/metro.config.js +++ b/example/metro.config.js @@ -1,36 +1,23 @@ const path = require('path'); -const pkg = require('../package.json'); +const blacklist = require('metro-config/src/defaults/exclusionList'); -const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config'); -const escape = require('escape-string-regexp'); -const exclusionList = require('metro-config/src/defaults/exclusionList'); - -const peerDependencies = Object.keys(pkg.peerDependencies); -const root = path.resolve(__dirname, '..'); -const projectNodeModules = path.join(__dirname, 'node_modules'); -const rootNodeModules = path.join(root, 'node_modules'); - -// We need to make sure that only one version is loaded for peerDependencies -// So we block them at the root, and alias them to the versions in example's node_modules -const blacklistRE = exclusionList( - peerDependencies.map((name) => new RegExp(`^${escape(path.join(rootNodeModules, name))}\\/.*$`)), -); - -const extraNodeModules = peerDependencies.reduce((acc, name) => { - acc[name] = path.join(projectNodeModules, name); - return acc; -}, {}); - -/** - * Metro configuration - * https://facebook.github.io/metro/docs/configuration - * - * @type {import('metro-config').MetroConfig} - */ -const config = { - projectRoot: __dirname, - watchFolders: [root], - resolver: {blacklistRE, extraNodeModules}, +module.exports = { + resolver: { + blacklistRE: blacklist([ + // This stops "react-native run-windows" from causing the metro server to crash if its already running + new RegExp(`${path.resolve(__dirname, 'windows').replace(/[/\\]/g, '/')}.*`), + // This prevents "react-native run-windows" from hitting: EBUSY: resource busy or locked, open msbuild.ProjectImports.zip + new RegExp( + `${path.resolve(__dirname, 'msbuild.ProjectImports.zip').replace(/[/\\]/g, '/')}.*`, + ), + ]), + }, + transformer: { + getTransformOptions: async () => ({ + transform: { + experimentalImportSupport: false, + inlineRequires: true, + }, + }), + }, }; - -module.exports = mergeConfig(getDefaultConfig(__dirname), config); diff --git a/example/react-native.config.js b/example/react-native.config.js deleted file mode 100644 index 51eedd67..00000000 --- a/example/react-native.config.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - project: { - ios: { - automaticPodsInstallation: true, - }, - }, -}; diff --git a/example/tsconfig.json b/example/tsconfig.json index 6815ff12..2421731b 100644 --- a/example/tsconfig.json +++ b/example/tsconfig.json @@ -1,30 +1,15 @@ { "compilerOptions": { - "module": "ESNext", - "lib": ["ES2017"], "jsx": "react-native", + "lib": ["ES2016"], "moduleResolution": "Node", + "target": "ESNext", - "allowJs": false, "strict": true, - "declaration": true, - "sourceMap": true, - "stripInternal": true, - "skipLibCheck": true, - - "allowUnreachableCode": false, - "allowUnusedLabels": false, - "noFallthroughCasesInSwitch": true, - "noImplicitOverride": true, - "noImplicitReturns": false, - "noUncheckedIndexedAccess": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - - "paths": { - "react-native-permissions": ["../src"], - }, + "noEmit": true, + "esModuleInterop": true, + "isolatedModules": true }, - "include": ["src"], - "exclude": ["node_modules", "babel.config.js", "metro.config.js"], + "include": ["**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] } diff --git a/example/windows/Example/Example.vcxproj b/example/windows/Example/Example.vcxproj index d2535894..c51a3120 100644 --- a/example/windows/Example/Example.vcxproj +++ b/example/windows/Example/Example.vcxproj @@ -1,6 +1,6 @@ - + - + true true @@ -168,7 +168,15 @@ - + - + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/example/windows/Example/packages.config b/example/windows/Example/packages.config index a98f3236..944c0293 100644 --- a/example/windows/Example/packages.config +++ b/example/windows/Example/packages.config @@ -1,5 +1,5 @@ - + - + - + \ No newline at end of file diff --git a/example/yarn.lock b/example/yarn.lock index 899b982b..8398f483 100644 --- a/example/yarn.lock +++ b/example/yarn.lock @@ -3,11 +3,11 @@ "@ampproject/remapping@^2.2.0": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" - integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + version "2.2.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: - "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" "@azure/abort-controller@^1.0.0": @@ -17,19 +17,18 @@ dependencies: tslib "^2.2.0" -"@azure/core-auth@^1.4.0", "@azure/core-auth@^1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@azure/core-auth/-/core-auth-1.5.0.tgz#a41848c5c31cb3b7c84c409885267d55a2c92e44" - integrity sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw== +"@azure/core-auth@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@azure/core-auth/-/core-auth-1.4.0.tgz#6fa9661c1705857820dbc216df5ba5665ac36a9e" + integrity sha512-HFrcTgmuSuukRf/EdPmqBrc5l6Q5Uu+2TbuhaKbgaCpP2TfAeiNaQPAadxO+CYBRHGUzIDteMAjFspFLDLnKVQ== dependencies: "@azure/abort-controller" "^1.0.0" - "@azure/core-util" "^1.1.0" tslib "^2.2.0" -"@azure/core-rest-pipeline@1.10.1": - version "1.10.1" - resolved "https://registry.yarnpkg.com/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.1.tgz#348290847ca31b9eecf9cf5de7519aaccdd30968" - integrity sha512-Kji9k6TOFRDB5ZMTw8qUf2IJ+CeJtsuMdAHox9eqpTf1cefiNMpzrfnF6sINEBZJsaVaWgQ0o48B6kcUH68niA== +"@azure/core-rest-pipeline@^1.10.0": + version "1.10.2" + resolved "https://registry.yarnpkg.com/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.2.tgz#eacd4ed9308f1f5cdac37332f36d4f3a4f3c01e4" + integrity sha512-e3WzAsRKLor5EgK2bQqR1OY5D7VBqzORHtlqtygZZQGCYOIBsynqrZBa8MFD1Ue9r8TPtofOLditalnlQHS45Q== dependencies: "@azure/abort-controller" "^1.0.0" "@azure/core-auth" "^1.4.0" @@ -42,14 +41,14 @@ tslib "^2.2.0" uuid "^8.3.0" -"@azure/core-tracing@^1.0.0", "@azure/core-tracing@^1.0.1": +"@azure/core-tracing@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@azure/core-tracing/-/core-tracing-1.0.1.tgz#352a38cbea438c4a83c86b314f48017d70ba9503" integrity sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw== dependencies: tslib "^2.2.0" -"@azure/core-util@1.2.0": +"@azure/core-util@^1.0.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@azure/core-util/-/core-util-1.2.0.tgz#3499deba1fc36dda6f1912b791809b6f15d4a392" integrity sha512-ffGIw+Qs8bNKNLxz5UPkz4/VBM/EZY07mPve1ZYFqYUdPwFqRj0RPk0U7LZMOfT7GCck9YjuT1Rfp1PApNl1ng== @@ -57,14 +56,6 @@ "@azure/abort-controller" "^1.0.0" tslib "^2.2.0" -"@azure/core-util@^1.0.0", "@azure/core-util@^1.1.0": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@azure/core-util/-/core-util-1.6.1.tgz#fea221c4fa43c26543bccf799beb30c1c7878f5a" - integrity sha512-h5taHeySlsV9qxuK64KZxy4iln1BtMYlNt5jbuEFN3UFSAd1EwKg/Gjl5a6tZ/W8t6li3xPnutOx7zbDyXnPmQ== - dependencies: - "@azure/abort-controller" "^1.0.0" - tslib "^2.2.0" - "@azure/logger@^1.0.0": version "1.0.4" resolved "https://registry.yarnpkg.com/@azure/logger/-/logger-1.0.4.tgz#28bc6d0e5b3c38ef29296b32d35da4e483593fa1" @@ -72,290 +63,284 @@ dependencies: tslib "^2.2.0" -"@azure/opentelemetry-instrumentation-azure-sdk@^1.0.0-beta.5": - version "1.0.0-beta.5" - resolved "https://registry.yarnpkg.com/@azure/opentelemetry-instrumentation-azure-sdk/-/opentelemetry-instrumentation-azure-sdk-1.0.0-beta.5.tgz#78809e6c005d08450701e5d37f087f6fce2f86eb" - integrity sha512-fsUarKQDvjhmBO4nIfaZkfNSApm1hZBzcvpNbSrXdcUBxu7lRvKsV5DnwszX7cnhLyVOW9yl1uigtRQ1yDANjA== - dependencies: - "@azure/core-tracing" "^1.0.0" - "@azure/logger" "^1.0.0" - "@opentelemetry/api" "^1.4.1" - "@opentelemetry/core" "^1.15.2" - "@opentelemetry/instrumentation" "^0.41.2" - tslib "^2.2.0" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" + integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" + "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.3", "@babel/compat-data@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== +"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.1", "@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.13.16", "@babel/core@^7.20.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" - integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== +"@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.20.0": + 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.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.9" - "@babel/parser" "^7.23.9" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - convert-source-map "^2.0.0" + "@babel/code-frame" "^7.18.6" + "@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.3" - semver "^6.3.1" + json5 "^2.2.2" + semver "^6.3.0" -"@babel/generator@^7.20.0", "@babel/generator@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== +"@babel/generator@^7.20.0", "@babel/generator@^7.21.3": + 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.23.6" + "@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.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" - integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== +"@babel/helper-annotate-as-pure@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" + integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.18.6" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" - integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz#acd4edfd7a566d1d51ea975dff38fd52906981bb" + integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== dependencies: - "@babel/types" "^7.22.15" + "@babel/helper-explode-assignable-expression" "^7.18.6" + "@babel/types" "^7.18.9" -"@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== +"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": + 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.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" + "@babel/compat-data" "^7.20.5" + "@babel/helper-validator-option" "^7.18.6" + browserslist "^4.21.3" lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.23.6": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.9.tgz#fddfdf51fca28f23d16b9e3935a4732690acfad6" - integrity sha512-B2L9neXTIyPQoXDm+NtovPvG6VOLWnaXu3BIeVDWwdKFgG30oNa6CqVGiJPDWQwIAK49t9gnQI9c6K6RzabiKw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-member-expression-to-functions" "^7.23.0" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - semver "^6.3.1" - -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" - integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" + semver "^6.3.0" + +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz#64f49ecb0020532f19b1d014b03bccaa1ab85fb9" + integrity sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^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.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", "@babel/helper-create-regexp-features-plugin@^7.20.5": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz#53ff78472e5ce10a52664272a239787107603ebb" + integrity sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" regexpu-core "^5.3.1" - semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz#465805b7361f461e86c680f1de21eaf88c25901b" - integrity sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q== +"@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.22.6" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-compilation-targets" "^7.17.7" + "@babel/helper-plugin-utils" "^7.16.7" debug "^4.1.1" lodash.debounce "^4.0.8" resolve "^1.14.2" + semver "^6.1.2" -"@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" + integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== -"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== +"@babel/helper-explode-assignable-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" + integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" + "@babel/types" "^7.18.6" -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== +"@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/types" "^7.22.5" + "@babel/template" "^7.20.7" + "@babel/types" "^7.21.0" -"@babel/helper-member-expression-to-functions@^7.22.15", "@babel/helper-member-expression-to-functions@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" - integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== +"@babel/helper-hoist-variables@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" + integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== dependencies: - "@babel/types" "^7.23.0" - -"@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== - dependencies: - "@babel/types" "^7.22.15" + "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" - -"@babel/helper-optimise-call-expression@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" - integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== - dependencies: - "@babel/types" "^7.22.5" - -"@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.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== - -"@babel/helper-remap-async-to-generator@^7.18.9", "@babel/helper-remap-async-to-generator@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" - integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-wrap-function" "^7.22.20" - -"@babel/helper-replace-supers@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" - integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-member-expression-to-functions" "^7.22.15" - "@babel/helper-optimise-call-expression" "^7.22.5" - -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" - integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-string-parser@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== - -"@babel/helper-validator-identifier@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== - -"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - -"@babel/helper-wrap-function@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" - integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== - dependencies: - "@babel/helper-function-name" "^7.22.5" - "@babel/template" "^7.22.15" - "@babel/types" "^7.22.19" - -"@babel/helpers@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" - integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== +"@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/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - -"@babel/highlight@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" + "@babel/types" "^7.21.0" + +"@babel/helper-module-imports@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" + integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@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.20.2" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.2" + "@babel/types" "^7.21.2" + +"@babel/helper-optimise-call-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" + integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== -"@babel/parser@^7.13.16", "@babel/parser@^7.20.0", "@babel/parser@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" - integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== +"@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== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-wrap-function" "^7.18.9" + "@babel/types" "^7.18.9" + +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" + integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.20.7" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.7" + "@babel/types" "^7.20.7" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" - integrity sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ== +"@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/helper-plugin-utils" "^7.22.5" + "@babel/types" "^7.20.2" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz#f6652bb16b94f8f9c20c50941e16e9756898dc5d" - integrity sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ== +"@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/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-transform-optional-chaining" "^7.23.3" + "@babel/types" "^7.20.0" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.7": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz#516462a95d10a9618f197d39ad291a9b47ae1d7b" - integrity sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw== +"@babel/helper-split-export-declaration@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" + integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/types" "^7.18.6" + +"@babel/helper-string-parser@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== + +"@babel/helper-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", "@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/plugin-proposal-async-generator-functions@^7.0.0": +"@babel/helper-wrap-function@^7.18.9": + 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.20.5" + "@babel/types" "^7.20.5" + +"@babel/helpers@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" + integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== + dependencies: + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" + +"@babel/highlight@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.20.0", "@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-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" + integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz#d9c85589258539a22a901033853101a6198d4ef1" + integrity sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-proposal-optional-chaining" "^7.20.7" + +"@babel/plugin-proposal-async-generator-functions@^7.0.0", "@babel/plugin-proposal-async-generator-functions@^7.20.1": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz#bfb7276d2d573cb67ba379984a2334e262ba5326" integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== @@ -365,7 +350,7 @@ "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.18.0": +"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -373,15 +358,56 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz#77bdd66fb7b605f3a61302d224bdfacf5547977d" + integrity sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-proposal-dynamic-import@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" + integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-proposal-export-default-from@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.23.3.tgz#6f511a676c540ccc8d17a8553dbba9230b0ddac0" - integrity sha512-Q23MpLZfSGZL1kU7fWqV262q65svLSCIP5kZ/JCW/rKTCm/FrLjpvEd2kfUYMVeHh4QhV/xzyoRAHWrAZJrE3Q== + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.18.10.tgz#091f4794dbce4027c03cf4ebc64d3fb96b75c206" + integrity sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-default-from" "^7.18.6" + +"@babel/plugin-proposal-export-namespace-from@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" + integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + +"@babel/plugin-proposal-json-strings@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" + integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-export-default-from" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-json-strings" "^7.8.3" + +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.0": +"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== @@ -389,7 +415,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-numeric-separator@^7.0.0": +"@babel/plugin-proposal-numeric-separator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== @@ -397,7 +423,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.20.0": +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== @@ -408,7 +434,7 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.20.7" -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": +"@babel/plugin-proposal-optional-catch-binding@^7.0.0", "@babel/plugin-proposal-optional-catch-binding@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== @@ -416,7 +442,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.20.0": +"@babel/plugin-proposal-optional-chaining@^7.0.0", "@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== @@ -425,10 +451,31 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": - version "7.21.0-placeholder-for-preset-env.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" - integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== +"@babel/plugin-proposal-private-methods@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" + integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-proposal-private-property-in-object@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz#19496bd9883dd83c23c7d7fc45dcd9ad02dfa1dc" + integrity sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + +"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" + integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -437,7 +484,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13": +"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -451,19 +498,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": +"@babel/plugin-syntax-dynamic-import@^7.0.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-export-default-from@^7.0.0", "@babel/plugin-syntax-export-default-from@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.23.3.tgz#7e6d4bf595d5724230200fb2b7401d4734b15335" - integrity sha512-KeENO5ck1IeZ/l2lFZNy+mpobV3D2Zy5C1YFnWm+YuY5mQiAWc4yAp13dqgguwsBsFVLh4LPCEqCa5qW13N+hw== +"@babel/plugin-syntax-export-default-from@^7.0.0", "@babel/plugin-syntax-export-default-from@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.18.6.tgz#8df076711a4818c4ce4f23e61d622b0ba2ff84bc" + integrity sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" @@ -472,33 +519,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.23.3.tgz#084564e0f3cc21ea6c70c44cff984a1c0509729a" - integrity sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-import-assertions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz#9c05a7f592982aff1a2768260ad84bcd3f0c77fc" - integrity sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-import-attributes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz#992aee922cf04512461d7dae3ff6951b90a2dc06" - integrity sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA== +"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.18.6", "@babel/plugin-syntax-flow@^7.2.0": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz#774d825256f2379d06139be0c723c4dd444f3ca1" + integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-import-meta@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== +"@babel/plugin-syntax-import-assertions@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" @@ -507,12 +540,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" - integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== +"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" @@ -535,7 +568,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -570,492 +603,358 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" - integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-unicode-sets-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" - integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz#94c6dcfd731af90f27a79509f9ab7fb2120fc38b" - integrity sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-async-generator-functions@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz#9adaeb66fc9634a586c5df139c6240d41ed801ce" - integrity sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ== +"@babel/plugin-syntax-typescript@^7.20.0": + 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-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-remap-async-to-generator" "^7.22.20" - "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-async-to-generator@^7.20.0", "@babel/plugin-transform-async-to-generator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz#d1f513c7a8a506d43f47df2bf25f9254b0b051fa" - integrity sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw== +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.18.6": + 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-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-remap-async-to-generator" "^7.22.20" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-block-scoped-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz#fe1177d715fb569663095e04f3598525d98e8c77" - integrity sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A== +"@babel/plugin-transform-async-to-generator@^7.0.0", "@babel/plugin-transform-async-to-generator@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354" + integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-remap-async-to-generator" "^7.18.9" -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz#b2d38589531c6c80fbe25e6b58e763622d2d3cf5" - integrity sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw== +"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" + integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-class-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz#35c377db11ca92a785a718b6aa4e3ed1eb65dc48" - integrity sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg== +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02" + integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-class-static-block@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz#2a202c8787a8964dd11dfcedf994d36bfc844ab5" - integrity sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ== +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665" + integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.23.8": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz#d08ae096c240347badd68cdf1b6d1624a6435d92" - integrity sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" - "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.21.0" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@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", "@babel/plugin-transform-computed-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz#652e69561fcc9d2b50ba4f7ac7f60dcf65e86474" - integrity sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/template" "^7.22.15" - -"@babel/plugin-transform-destructuring@^7.20.0", "@babel/plugin-transform-destructuring@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz#8c9ee68228b12ae3dff986e56ed1ba4f3c446311" - integrity sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-dotall-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz#3f7af6054882ede89c378d0cf889b854a993da50" - integrity sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-duplicate-keys@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz#664706ca0a5dfe8d066537f99032fc1dc8b720ce" - integrity sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-dynamic-import@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz#c7629e7254011ac3630d47d7f34ddd40ca535143" - integrity sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - -"@babel/plugin-transform-exponentiation-operator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz#ea0d978f6b9232ba4722f3dbecdd18f450babd18" - integrity sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-export-namespace-from@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz#084c7b25e9a5c8271e987a08cf85807b80283191" - integrity sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-transform-flow-strip-types@^7.20.0", "@babel/plugin-transform-flow-strip-types@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.23.3.tgz#cfa7ca159cc3306fab526fc67091556b51af26ff" - integrity sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-flow" "^7.23.3" - -"@babel/plugin-transform-for-of@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz#81c37e24171b37b370ba6aaffa7ac86bcb46f94e" - integrity sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz#8f424fcd862bf84cb9a1a6b42bc2f47ed630f8dc" - integrity sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw== - dependencies: - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-json-strings@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz#a871d9b6bd171976efad2e43e694c961ffa3714d" - integrity sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz#8214665f00506ead73de157eba233e7381f3beb4" - integrity sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ== +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.18.9": + 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.22.5" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" -"@babel/plugin-transform-logical-assignment-operators@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz#e599f82c51d55fac725f62ce55d3a0886279ecb5" - integrity sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg== +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.20.2": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz#73b46d0fd11cd6ef57dea8a381b1215f4959d401" + integrity sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-member-expression-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz#e37b3f0502289f477ac0e776b05a833d853cabcc" - integrity sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag== +"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" + integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-amd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz#e19b55436a1416829df0a1afc495deedfae17f7d" - integrity sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw== +"@babel/plugin-transform-duplicate-keys@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" + integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4" - integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA== +"@babel/plugin-transform-exponentiation-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" + integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-systemjs@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz#105d3ed46e4a21d257f83a2f9e2ee4203ceda6be" - integrity sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw== +"@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.18.6": + 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-hoist-variables" "^7.22.5" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-flow" "^7.18.6" -"@babel/plugin-transform-modules-umd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz#5d4395fccd071dfefe6585a4411aa7d6b7d769e9" - integrity sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg== +"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.18.8": + 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-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" - integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" + integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.5" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-compilation-targets" "^7.18.9" + "@babel/helper-function-name" "^7.18.9" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-new-target@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz#5491bb78ed6ac87e990957cea367eab781c4d980" - integrity sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ== +"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" + integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-nullish-coalescing-operator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz#45556aad123fc6e52189ea749e33ce090637346e" - integrity sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA== +"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" + integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-numeric-separator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz#03d08e3691e405804ecdd19dd278a40cca531f29" - integrity sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q== +"@babel/plugin-transform-modules-amd@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a" + integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-object-rest-spread@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz#2b9c2d26bf62710460bdc0d1730d4f1048361b83" - integrity sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g== +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6": + 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/compat-data" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.23.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-super@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz#81fdb636dcb306dd2e4e8fd80db5b2362ed2ebcd" - integrity sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA== +"@babel/plugin-transform-modules-systemjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz#467ec6bba6b6a50634eea61c9c232654d8a4696e" + integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-identifier" "^7.19.1" -"@babel/plugin-transform-optional-catch-binding@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz#318066de6dacce7d92fa244ae475aa8d91778017" - integrity sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A== +"@babel/plugin-transform-modules-umd@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" + integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-optional-chaining@^7.23.3", "@babel/plugin-transform-optional-chaining@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz#6acf61203bdfc4de9d4e52e64490aeb3e52bd017" - integrity sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" + integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/helper-create-regexp-features-plugin" "^7.20.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz#83ef5d1baf4b1072fa6e54b2b0999a7b2527e2af" - integrity sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw== +"@babel/plugin-transform-new-target@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" + integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-private-methods@^7.22.5", "@babel/plugin-transform-private-methods@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz#b2d7a3c97e278bfe59137a978d53b2c2e038c0e4" - integrity sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g== +"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" + integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-private-property-in-object@^7.22.11", "@babel/plugin-transform-private-property-in-object@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz#3ec711d05d6608fd173d9b8de39872d8dbf68bf5" - integrity sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz#18fc4e797cf6d6d972cb8c411dbe8a809fa157db" + integrity sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-property-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz#54518f14ac4755d22b92162e4a852d308a560875" - integrity sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw== +"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" + integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-react-display-name@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.23.3.tgz#70529f034dd1e561045ad3c8152a267f0d7b6200" - integrity sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw== + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" + integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz#ed3e7dadde046cce761a8e3cf003a13d1a7972d9" - integrity sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ== + 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.22.5" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz#03527006bdc8775247a78643c51d4e715fe39a3e" - integrity sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g== + 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.22.5" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-transform-react-jsx@^7.0.0": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz#393f99185110cea87184ea47bcb4a7b0c2e39312" - integrity sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA== + 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.22.5" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/types" "^7.23.4" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-jsx" "^7.18.6" + "@babel/types" "^7.21.0" -"@babel/plugin-transform-regenerator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz#141afd4a2057298602069fce7f2dc5173e6c561c" - integrity sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ== +"@babel/plugin-transform-regenerator@^7.18.6": + 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.22.5" - regenerator-transform "^0.15.2" + "@babel/helper-plugin-utils" "^7.20.2" + regenerator-transform "^0.15.1" -"@babel/plugin-transform-reserved-words@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz#4130dcee12bd3dd5705c587947eb715da12efac8" - integrity sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg== +"@babel/plugin-transform-reserved-words@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" + integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-runtime@^7.0.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.9.tgz#2c64d0680fc8e09e1dfe8fd5c646fe72abd82004" - integrity sha512-A7clW3a0aSjm3ONU9o2HAILSegJCYlEZmOhmBRReVtIpY/Z/p7yIZ+wR41Z+UipwdGuqwtID/V/dOdZXjwi9gQ== - dependencies: - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" - semver "^6.3.1" - -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz#97d82a39b0e0c24f8a981568a8ed851745f59210" - integrity sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz#41d17aacb12bde55168403c6f2d6bdca563d362c" - integrity sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg== + 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-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-module-imports" "^7.18.6" + "@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-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz#dec45588ab4a723cb579c609b294a3d1bd22ff04" - integrity sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg== +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" + integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-template-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz#5f0f028eb14e50b5d0f76be57f90045757539d07" - integrity sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg== +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.19.0": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" + integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" -"@babel/plugin-transform-typeof-symbol@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz#9dfab97acc87495c0c449014eb9c547d8966bca4" - integrity sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ== +"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" + integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-typescript@^7.23.3", "@babel/plugin-transform-typescript@^7.5.0": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz#aa36a94e5da8d94339ae3a4e22d40ed287feb34c" - integrity sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA== +"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" + integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.23.6" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-typescript" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-unicode-escapes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz#1f66d16cab01fab98d784867d24f70c1ca65b925" - integrity sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q== +"@babel/plugin-transform-typeof-symbol@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" + integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-unicode-property-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz#19e234129e5ffa7205010feec0d94c251083d7ad" - integrity sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA== +"@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-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-typescript" "^7.20.0" -"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz#26897708d8f42654ca4ce1b73e96140fbad879dc" - integrity sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw== +"@babel/plugin-transform-unicode-escapes@^7.18.10": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" + integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-unicode-sets-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz#4fb6f0a719c2c5859d11f6b55a050cc987f3799e" - integrity sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw== +"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" + integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/preset-env@^7.20.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.9.tgz#beace3b7994560ed6bf78e4ae2073dff45387669" - integrity sha512-3kBGTNBBk9DQiPoXYS0g0BYlwTQYUTifqgKTjxUwEUkduRT2QOa0FPGBJ+NROQhGyYO5BuTJwGvBnqKDykac6A== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.7" - "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" + integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== + dependencies: + "@babel/compat-data" "^7.20.1" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-async-generator-functions" "^7.20.1" + "@babel/plugin-proposal-class-properties" "^7.18.6" + "@babel/plugin-proposal-class-static-block" "^7.18.6" + "@babel/plugin-proposal-dynamic-import" "^7.18.6" + "@babel/plugin-proposal-export-namespace-from" "^7.18.9" + "@babel/plugin-proposal-json-strings" "^7.18.6" + "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" + "@babel/plugin-proposal-numeric-separator" "^7.18.6" + "@babel/plugin-proposal-object-rest-spread" "^7.20.2" + "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" + "@babel/plugin-proposal-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-private-methods" "^7.18.6" + "@babel/plugin-proposal-private-property-in-object" "^7.18.6" + "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.23.3" - "@babel/plugin-syntax-import-attributes" "^7.23.3" - "@babel/plugin-syntax-import-meta" "^7.10.4" + "@babel/plugin-syntax-import-assertions" "^7.20.0" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" @@ -1065,100 +964,84 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.23.3" - "@babel/plugin-transform-async-generator-functions" "^7.23.9" - "@babel/plugin-transform-async-to-generator" "^7.23.3" - "@babel/plugin-transform-block-scoped-functions" "^7.23.3" - "@babel/plugin-transform-block-scoping" "^7.23.4" - "@babel/plugin-transform-class-properties" "^7.23.3" - "@babel/plugin-transform-class-static-block" "^7.23.4" - "@babel/plugin-transform-classes" "^7.23.8" - "@babel/plugin-transform-computed-properties" "^7.23.3" - "@babel/plugin-transform-destructuring" "^7.23.3" - "@babel/plugin-transform-dotall-regex" "^7.23.3" - "@babel/plugin-transform-duplicate-keys" "^7.23.3" - "@babel/plugin-transform-dynamic-import" "^7.23.4" - "@babel/plugin-transform-exponentiation-operator" "^7.23.3" - "@babel/plugin-transform-export-namespace-from" "^7.23.4" - "@babel/plugin-transform-for-of" "^7.23.6" - "@babel/plugin-transform-function-name" "^7.23.3" - "@babel/plugin-transform-json-strings" "^7.23.4" - "@babel/plugin-transform-literals" "^7.23.3" - "@babel/plugin-transform-logical-assignment-operators" "^7.23.4" - "@babel/plugin-transform-member-expression-literals" "^7.23.3" - "@babel/plugin-transform-modules-amd" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-modules-systemjs" "^7.23.9" - "@babel/plugin-transform-modules-umd" "^7.23.3" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" - "@babel/plugin-transform-new-target" "^7.23.3" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" - "@babel/plugin-transform-numeric-separator" "^7.23.4" - "@babel/plugin-transform-object-rest-spread" "^7.23.4" - "@babel/plugin-transform-object-super" "^7.23.3" - "@babel/plugin-transform-optional-catch-binding" "^7.23.4" - "@babel/plugin-transform-optional-chaining" "^7.23.4" - "@babel/plugin-transform-parameters" "^7.23.3" - "@babel/plugin-transform-private-methods" "^7.23.3" - "@babel/plugin-transform-private-property-in-object" "^7.23.4" - "@babel/plugin-transform-property-literals" "^7.23.3" - "@babel/plugin-transform-regenerator" "^7.23.3" - "@babel/plugin-transform-reserved-words" "^7.23.3" - "@babel/plugin-transform-shorthand-properties" "^7.23.3" - "@babel/plugin-transform-spread" "^7.23.3" - "@babel/plugin-transform-sticky-regex" "^7.23.3" - "@babel/plugin-transform-template-literals" "^7.23.3" - "@babel/plugin-transform-typeof-symbol" "^7.23.3" - "@babel/plugin-transform-unicode-escapes" "^7.23.3" - "@babel/plugin-transform-unicode-property-regex" "^7.23.3" - "@babel/plugin-transform-unicode-regex" "^7.23.3" - "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" - "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" - core-js-compat "^3.31.0" - semver "^6.3.1" + "@babel/plugin-transform-arrow-functions" "^7.18.6" + "@babel/plugin-transform-async-to-generator" "^7.18.6" + "@babel/plugin-transform-block-scoped-functions" "^7.18.6" + "@babel/plugin-transform-block-scoping" "^7.20.2" + "@babel/plugin-transform-classes" "^7.20.2" + "@babel/plugin-transform-computed-properties" "^7.18.9" + "@babel/plugin-transform-destructuring" "^7.20.2" + "@babel/plugin-transform-dotall-regex" "^7.18.6" + "@babel/plugin-transform-duplicate-keys" "^7.18.9" + "@babel/plugin-transform-exponentiation-operator" "^7.18.6" + "@babel/plugin-transform-for-of" "^7.18.8" + "@babel/plugin-transform-function-name" "^7.18.9" + "@babel/plugin-transform-literals" "^7.18.9" + "@babel/plugin-transform-member-expression-literals" "^7.18.6" + "@babel/plugin-transform-modules-amd" "^7.19.6" + "@babel/plugin-transform-modules-commonjs" "^7.19.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.6" + "@babel/plugin-transform-modules-umd" "^7.18.6" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" + "@babel/plugin-transform-new-target" "^7.18.6" + "@babel/plugin-transform-object-super" "^7.18.6" + "@babel/plugin-transform-parameters" "^7.20.1" + "@babel/plugin-transform-property-literals" "^7.18.6" + "@babel/plugin-transform-regenerator" "^7.18.6" + "@babel/plugin-transform-reserved-words" "^7.18.6" + "@babel/plugin-transform-shorthand-properties" "^7.18.6" + "@babel/plugin-transform-spread" "^7.19.0" + "@babel/plugin-transform-sticky-regex" "^7.18.6" + "@babel/plugin-transform-template-literals" "^7.18.9" + "@babel/plugin-transform-typeof-symbol" "^7.18.9" + "@babel/plugin-transform-unicode-escapes" "^7.18.10" + "@babel/plugin-transform-unicode-regex" "^7.18.6" + "@babel/preset-modules" "^0.1.5" + "@babel/types" "^7.20.2" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" + core-js-compat "^3.25.1" + semver "^6.3.0" "@babel/preset-flow@^7.13.13": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.23.3.tgz#8084e08b9ccec287bd077ab288b286fab96ffab1" - integrity sha512-7yn6hl8RIv+KNk6iIrGZ+D06VhVY35wLVf23Cz/mMu1zOr7u4MMP4j0nZ9tLf8+4ZFpnib8cFYgB/oYg9hfswA== + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" + integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-transform-flow-strip-types" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-flow-strip-types" "^7.18.6" -"@babel/preset-modules@0.1.6-no-external-plugins": - version "0.1.6-no-external-plugins" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" - integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== +"@babel/preset-modules@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" + integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" "@babel/types" "^7.4.4" esutils "^2.0.2" "@babel/preset-typescript@^7.13.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz#14534b34ed5b6d435aa05f1ae1c5e7adcc01d913" - integrity sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ== + 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.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-typescript" "^7.23.3" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.21.0" + "@babel/plugin-transform-typescript" "^7.21.0" "@babel/register@^7.13.16": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.23.7.tgz#485a5e7951939d21304cae4af1719fdb887bc038" - integrity sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ== + 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" make-dir "^2.1.0" - pirates "^4.0.6" + pirates "^4.0.5" source-map-support "^0.5.16" "@babel/regjsgen@^0.8.0": @@ -1167,106 +1050,101 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.20.0", "@babel/runtime@^7.8.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7" - integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== - dependencies: - regenerator-runtime "^0.14.0" - -"@babel/template@^7.0.0", "@babel/template@^7.22.15", "@babel/template@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" - integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" - -"@babel/traverse@^7.20.0", "@babel/traverse@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" - integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" - debug "^4.3.1" + 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.20.7": + 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.20.7" + "@babel/types" "^7.20.7" + +"@babel/traverse@^7.14.0", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.21.3": + 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.21.3" + "@babel/helper-environment-visitor" "^7.18.9" + "@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.21.3" + "@babel/types" "^7.21.3" + debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.20.0", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.4.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" - integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== +"@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.4.4": + 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.23.4" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" -"@callstack/react-theme-provider@^3.0.9": - version "3.0.9" - resolved "https://registry.yarnpkg.com/@callstack/react-theme-provider/-/react-theme-provider-3.0.9.tgz#01035fa1231f1fffc1a806be1b55eb82716e80c1" - integrity sha512-tTQ0uDSCL0ypeMa8T/E9wAZRGKWj8kXP7+6RYgPTfOPs9N07C9xM8P02GJ3feETap4Ux5S69D9nteq9mEj86NA== +"@callstack/react-theme-provider@^3.0.8": + version "3.0.8" + resolved "https://registry.yarnpkg.com/@callstack/react-theme-provider/-/react-theme-provider-3.0.8.tgz#d0d7ac71e422133c5f7b78f4c4aa1bc57f156f50" + integrity sha512-5U231sYY2sqQOaELX0WBCn+iluV8bFaXIS7em03k4W5Xz0AhGvKlnpLIhDGFP8im/SvNW7/2XoR0BsClhn9t6Q== dependencies: deepmerge "^3.2.0" hoist-non-react-statics "^3.3.0" -"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": +"@hapi/hoek@^9.0.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== -"@hapi/topo@^5.1.0": +"@hapi/topo@^5.0.0": version "5.1.0" resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== dependencies: "@hapi/hoek" "^9.0.0" -"@isaacs/ttlcache@^1.4.1": - version "1.4.1" - resolved "https://registry.yarnpkg.com/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz#21fb23db34e9b6220c6ba023a0118a2dd3461ea2" - integrity sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA== - -"@jest/create-cache-key-function@^29.6.3": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz#793be38148fab78e65f40ae30c36785f4ad859f0" - integrity sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA== +"@jest/create-cache-key-function@^29.2.1": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.5.0.tgz#24e019d03e634be4affe8bcee787d75a36ae57a2" + integrity sha512-LIDZyZgnZss7uikvBKBB/USWwG+GO8+GnwRWT+YkCGDGsqLQlhm9BC3z6+7+eMs1kUlvXQIWEzBR8Q2Pnvx6lg== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" -"@jest/environment@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" - integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== +"@jest/environment@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65" + integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ== dependencies: - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^29.7.0" + jest-mock "^29.5.0" -"@jest/fake-timers@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" - integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== +"@jest/fake-timers@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c" + integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^29.7.0" - jest-mock "^29.7.0" - jest-util "^29.7.0" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" -"@jest/schemas@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" - integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== +"@jest/schemas@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" + integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== dependencies: - "@sinclair/typebox" "^0.27.8" + "@sinclair/typebox" "^0.25.16" "@jest/types@^26.6.2": version "26.6.2" @@ -1279,57 +1157,76 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" - integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== +"@jest/types@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== dependencies: - "@jest/schemas" "^29.6.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + +"@jest/types@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593" + integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog== + dependencies: + "@jest/schemas" "^29.4.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" "@types/yargs" "^17.0.8" chalk "^4.0.0" +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/set-array@^1.0.1": +"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/source-map@^0.3.3": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" - integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@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.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.22" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" - integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== + 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.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" "@microsoft/applicationinsights-web-snippet@^1.0.1": version "1.0.1" @@ -1357,283 +1254,183 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@opentelemetry/api@^1.4.1", "@opentelemetry/api@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.7.0.tgz#b139c81999c23e3c8d3c0a7234480e945920fc40" - integrity sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw== - -"@opentelemetry/core@1.21.0", "@opentelemetry/core@^1.15.2", "@opentelemetry/core@^1.19.0": - version "1.21.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.21.0.tgz#8c16faf16edf861b073c03c9d45977b3f4003ee1" - integrity sha512-KP+OIweb3wYoP7qTYL/j5IpOlu52uxBv5M4+QhSmmUfLyTgu1OIS71msK3chFo1D6Y61BIH3wMiMYRCxJCQctA== - dependencies: - "@opentelemetry/semantic-conventions" "1.21.0" - -"@opentelemetry/instrumentation@^0.41.2": - version "0.41.2" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.41.2.tgz#cae11fa64485dcf03dae331f35b315b64bc6189f" - integrity sha512-rxU72E0pKNH6ae2w5+xgVYZLzc5mlxAbGzF4shxMVK8YC2QQsfN38B2GPbj0jvrKWWNUElfclQ+YTykkNg/grw== - dependencies: - "@types/shimmer" "^1.0.2" - import-in-the-middle "1.4.2" - require-in-the-middle "^7.1.1" - semver "^7.5.1" - shimmer "^1.2.1" - -"@opentelemetry/resources@1.21.0": - version "1.21.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.21.0.tgz#e773e918cc8ca26493a987dfbfc6b8a315a2ab45" - integrity sha512-1Z86FUxPKL6zWVy2LdhueEGl9AHDJcx+bvHStxomruz6Whd02mE3lNUMjVJ+FGRoktx/xYQcxccYb03DiUP6Yw== - dependencies: - "@opentelemetry/core" "1.21.0" - "@opentelemetry/semantic-conventions" "1.21.0" - -"@opentelemetry/sdk-trace-base@^1.19.0": - version "1.21.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.21.0.tgz#ffad912e453a92044fb220bd5d2f6743bf37bb8a" - integrity sha512-yrElGX5Fv0umzp8Nxpta/XqU71+jCAyaLk34GmBzNcrW43nqbrqvdPs4gj4MVy/HcTjr6hifCDCYA3rMkajxxA== - dependencies: - "@opentelemetry/core" "1.21.0" - "@opentelemetry/resources" "1.21.0" - "@opentelemetry/semantic-conventions" "1.21.0" - -"@opentelemetry/semantic-conventions@1.21.0", "@opentelemetry/semantic-conventions@^1.19.0": - version "1.21.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.21.0.tgz#83f7479c524ab523ac2df702ade30b9724476c72" - integrity sha512-lkC8kZYntxVKr7b8xmjCVUgE0a8xgDakPyDo9uSWavXPyYqLgYYGdEd2j8NxihRyb6UwpX3G/hFUF4/9q2V+/g== - -"@react-native-community/cli-clean@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.1.1.tgz#4f92b3d5eaa301c9db3fef2cbbaf68b87652f6f1" - integrity sha512-lbEQJ9xO8DmNbES7nFcGIQC0Q15e9q1zwKfkN2ty2eM93ZTFqYzOwsddlNoRN9FO7diakMWoWgielhcfcIeIrQ== - dependencies: - "@react-native-community/cli-tools" "12.1.1" - chalk "^4.1.2" - execa "^5.0.0" +"@opentelemetry/api@^1.0.4": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.4.1.tgz#ff22eb2e5d476fbc2450a196e40dd243cc20c28f" + integrity sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA== -"@react-native-community/cli-clean@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.3.2.tgz#d4f1730c3d22d816b4d513d330d5f3896a3f5921" - integrity sha512-90k2hCX0ddSFPT7EN7h5SZj0XZPXP0+y/++v262hssoey3nhurwF57NGWN0XAR0o9BSW7+mBfeInfabzDraO6A== +"@opentelemetry/core@1.10.0", "@opentelemetry/core@^1.0.1": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.10.0.tgz#12626d19287030a16ec1101f8efcacb5198a89bb" + integrity sha512-H5/mfU3TsEBe/cnnLu3VCkzjqyRARmhxQGsT64KwafxjzkDh+c2Bk4n140Cg/xhgrjK2sFsxbJj6d0xZlVo/OQ== dependencies: - "@react-native-community/cli-tools" "12.3.2" - chalk "^4.1.2" - execa "^5.0.0" + "@opentelemetry/semantic-conventions" "1.10.0" + +"@opentelemetry/resources@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.10.0.tgz#79e8388899a79e13a830b3bd776cc8489a107b9b" + integrity sha512-bh4auHOdS0/cwSgviCPbkItLwLZRWCZKp/ns2soVwlWQMJH36FIHbcYJf7G9+Rthlc6u163VhUefho+eDrPVeA== + dependencies: + "@opentelemetry/core" "1.10.0" + "@opentelemetry/semantic-conventions" "1.10.0" + +"@opentelemetry/sdk-trace-base@^1.0.1": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.10.0.tgz#abbffa0ae39234f4c441357edc3f4da45dc73ef5" + integrity sha512-X4rRShtVQ893LCU4GNKS1TKFua9nSjVmo0VJvigfSFSOmyyOLfiyTWmVL9MKV7Ws0HqLOIWJixJY0x28fw3Tzg== + dependencies: + "@opentelemetry/core" "1.10.0" + "@opentelemetry/resources" "1.10.0" + "@opentelemetry/semantic-conventions" "1.10.0" -"@react-native-community/cli-config@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.1.1.tgz#6fe932b6215f731b39eb54c800d1b068a2080666" - integrity sha512-og8/yH7ZNMBcRJOGaHcn9BLt1WJF3XvgBw8iYsByVSEN7yvzAbYZ+CvfN6EdObGOqendbnE4lN9CVyQYM9Ufsw== +"@opentelemetry/semantic-conventions@1.10.0", "@opentelemetry/semantic-conventions@^1.0.1": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.10.0.tgz#2addef53b595c687c133922ecad0e850b9287fc9" + integrity sha512-Mzo5IyrI59YuYWeNoOZRXfUCc3upjmxCmczSm+pUgWprvSNfdOX70SVde84UxmuzU7MF1MEkPXKXTYG3ymRw2w== + +"@react-native-community/cli-clean@^10.0.0", "@react-native-community/cli-clean@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-10.1.1.tgz#4c73ce93a63a24d70c0089d4025daac8184ff504" + integrity sha512-iNsrjzjIRv9yb5y309SWJ8NDHdwYtnCpmxZouQDyOljUdC9MwdZ4ChbtA4rwQyAwgOVfS9F/j56ML3Cslmvrxg== dependencies: - "@react-native-community/cli-tools" "12.1.1" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" - cosmiconfig "^5.1.0" - deepmerge "^4.3.0" - glob "^7.1.3" - joi "^17.2.1" + execa "^1.0.0" + prompts "^2.4.0" -"@react-native-community/cli-config@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.3.2.tgz#1a5de302de4d597ff2fc9932a032134b6ec4325f" - integrity sha512-UUCzDjQgvAVL/57rL7eOuFUhd+d+6qfM7V8uOegQFeFEmSmvUUDLYoXpBa5vAK9JgQtSqMBJ1Shmwao+/oElxQ== +"@react-native-community/cli-config@^10.0.0", "@react-native-community/cli-config@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-10.1.1.tgz#08dcc5d7ca1915647dc06507ed853fe0c1488395" + integrity sha512-p4mHrjC+s/ayiNVG6T35GdEGdP6TuyBUg5plVGRJfTl8WT6LBfLYLk+fz/iETrEZ/YkhQIsQcEUQC47MqLNHog== dependencies: - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" cosmiconfig "^5.1.0" - deepmerge "^4.3.0" + deepmerge "^3.2.0" glob "^7.1.3" joi "^17.2.1" -"@react-native-community/cli-debugger-ui@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.1.1.tgz#b2e3854f8f77d2f60f845a0a9553123cedfa4669" - integrity sha512-q427jvbJ0WdDuS6HNdc3EbmUu/dX/+FWCcZI60xB7m1i/8p+LzmrsoR2yIJCricsAIV3hhiFOGfquZDgrbF27Q== - dependencies: - serve-static "^1.13.1" - -"@react-native-community/cli-debugger-ui@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.2.tgz#b2743876b03e560fbf5ef516e95387fcb6d91630" - integrity sha512-nSWQUL+51J682DlfcC1bjkUbQbGvHCC25jpqTwHIjmmVjYCX1uHuhPSqQKgPNdvtfOkrkACxczd7kVMmetxY2Q== +"@react-native-community/cli-debugger-ui@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-10.0.0.tgz#4bb6d41c7e46449714dc7ba5d9f5b41ef0ea7c57" + integrity sha512-8UKLcvpSNxnUTRy8CkCl27GGLqZunQ9ncGYhSrWyKrU9SWBJJGeZwi2k2KaoJi5FvF2+cD0t8z8cU6lsq2ZZmA== dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.1.1.tgz#e651a63c537ad7c9b8d9baa69e63947f5384a6bd" - integrity sha512-IUZJ/KUCuz+IzL9GdHUlIf6zF93XadxCBDPseUYb0ucIS+rEb3RmYC+IukYhUWwN3y4F/yxipYy3ytKrQ33AxA== - dependencies: - "@react-native-community/cli-config" "12.1.1" - "@react-native-community/cli-platform-android" "12.1.1" - "@react-native-community/cli-platform-ios" "12.1.1" - "@react-native-community/cli-tools" "12.1.1" - chalk "^4.1.2" - command-exists "^1.2.8" - deepmerge "^4.3.0" - envinfo "^7.10.0" - execa "^5.0.0" - hermes-profile-transformer "^0.0.6" - ip "^1.1.5" - node-stream-zip "^1.9.1" - ora "^5.4.1" - semver "^7.5.2" - strip-ansi "^5.2.0" - wcwidth "^1.0.1" - yaml "^2.2.1" - -"@react-native-community/cli-doctor@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.3.2.tgz#9e82b49f04ee03872b2975f26c8799cecac021ce" - integrity sha512-GrAabdY4qtBX49knHFvEAdLtCjkmndjTeqhYO6BhsbAeKOtspcLT/0WRgdLIaKODRa61ADNB3K5Zm4dU0QrZOg== +"@react-native-community/cli-doctor@^10.0.0", "@react-native-community/cli-doctor@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-10.2.0.tgz#6050030eea9200ce3c35de360cf8455e126b4d45" + integrity sha512-yLxJazUmNSPslHxeeev0gLvsK0nQan8BmGWbtqPz2WwbIbD89vbytC7G96OxiQXr46iWEWAwEJiTTdgA7jlA5Q== dependencies: - "@react-native-community/cli-config" "12.3.2" - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-platform-ios" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-config" "^10.1.1" + "@react-native-community/cli-platform-ios" "^10.2.0" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" command-exists "^1.2.8" - deepmerge "^4.3.0" - envinfo "^7.10.0" - execa "^5.0.0" + envinfo "^7.7.2" + execa "^1.0.0" hermes-profile-transformer "^0.0.6" ip "^1.1.5" node-stream-zip "^1.9.1" ora "^5.4.1" - semver "^7.5.2" + prompts "^2.4.0" + semver "^6.3.0" strip-ansi "^5.2.0" + sudo-prompt "^9.0.0" wcwidth "^1.0.1" - yaml "^2.2.1" - -"@react-native-community/cli-hermes@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.1.1.tgz#9b48c91acb4db88aab648e92d4d1fe19cd0a6191" - integrity sha512-J6yxQoZooFRT8+Dtz8Px/bwasQxnbxZZFAFQzOs3f6CAfXrcr/+JLVFZRWRv9XGfcuLdCHr22JUVPAnyEd48DA== - dependencies: - "@react-native-community/cli-platform-android" "12.1.1" - "@react-native-community/cli-tools" "12.1.1" - chalk "^4.1.2" - hermes-profile-transformer "^0.0.6" - ip "^1.1.5" -"@react-native-community/cli-hermes@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.3.2.tgz#5f266985fe32a37e9020e881460e9017870be2e5" - integrity sha512-SL6F9O8ghp4ESBFH2YAPLtIN39jdnvGBKnK4FGKpDCjtB3DnUmDsGFlH46S+GGt5M6VzfG2eeKEOKf3pZ6jUzA== +"@react-native-community/cli-hermes@^10.0.0", "@react-native-community/cli-hermes@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-10.2.0.tgz#cc252f435b149f74260bc918ce22fdf58033a87e" + integrity sha512-urfmvNeR8IiO/Sd92UU3xPO+/qI2lwCWQnxOkWaU/i2EITFekE47MD6MZrfVulRVYRi5cuaFqKZO/ccOdOB/vQ== dependencies: - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-platform-android" "^10.2.0" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" hermes-profile-transformer "^0.0.6" ip "^1.1.5" -"@react-native-community/cli-platform-android@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.1.1.tgz#f6541ee07ee479ee0e1b082cbf4ff970737606e4" - integrity sha512-jnyc9y5cPltBo518pfVZ53dtKGDy02kkCkSIwv4ltaHYse7JyEFxFbzBn9lloWvbZ0iFHvEo1NN78YGPAlXSDw== +"@react-native-community/cli-platform-android@10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-10.0.0.tgz#9894a0b54de94da4d01f3b9db4e6b51ba112fa72" + integrity sha512-wUXq+//PagXVjG6ZedO+zIbNPkCsAiP+uiE45llFTsCtI6vFBwa6oJFHH6fhfeib4mOd7DvIh2Kktrpgyb6nBg== dependencies: - "@react-native-community/cli-tools" "12.1.1" + "@react-native-community/cli-tools" "^10.0.0" chalk "^4.1.2" - execa "^5.0.0" - fast-xml-parser "^4.2.4" + execa "^1.0.0" glob "^7.1.3" logkitty "^0.7.1" -"@react-native-community/cli-platform-android@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.2.tgz#de54d89712f8ea95046d798ec274fd6caea70c34" - integrity sha512-MZ5nO8yi/N+Fj2i9BJcJ9C/ez+9/Ir7lQt49DWRo9YDmzye66mYLr/P2l/qxsixllbbDi7BXrlLpxaEhMrDopg== +"@react-native-community/cli-platform-android@10.2.0", "@react-native-community/cli-platform-android@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-10.2.0.tgz#0bc689270a5f1d9aaf9e723181d43ca4dbfffdef" + integrity sha512-CBenYwGxwFdObZTn1lgxWtMGA5ms2G/ALQhkS+XTAD7KHDrCxFF9yT/fnAjFZKM6vX/1TqGI1RflruXih3kAhw== dependencies: - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" - execa "^5.0.0" - fast-xml-parser "^4.2.4" + execa "^1.0.0" glob "^7.1.3" logkitty "^0.7.1" -"@react-native-community/cli-platform-ios@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.1.1.tgz#399fc39279b8bd95f372c0f69180696b6f9767e1" - integrity sha512-RA2lvFrswwQRIhCV3hoIYZmLe9TkRegpAWimdubtMxRHiv7Eh2dC0VWWR5VdWy3ltbJzeiEpxCoH/EcrMfp9tg== +"@react-native-community/cli-platform-ios@10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.0.0.tgz#91ee301620e509b44db5fd7c93eaf7ee992d097a" + integrity sha512-WLpXzZQ53zb1RhkpSDNHyBR3SIN3WObDRTEaR0TMXsXDeTj8/Eu2DPFpT+uEnD10ly/Y6/DqJsAt4Ku2X76klA== dependencies: - "@react-native-community/cli-tools" "12.1.1" + "@react-native-community/cli-tools" "^10.0.0" chalk "^4.1.2" - execa "^5.0.0" - fast-xml-parser "^4.0.12" + execa "^1.0.0" glob "^7.1.3" ora "^5.4.1" -"@react-native-community/cli-platform-ios@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.2.tgz#07e298f69761424da85909790a43ec60ebfe6097" - integrity sha512-OcWEAbkev1IL6SUiQnM6DQdsvfsKZhRZtoBNSj9MfdmwotVZSOEZJ+IjZ1FR9ChvMWayO9ns/o8LgoQxr1ZXeg== +"@react-native-community/cli-platform-ios@10.2.0", "@react-native-community/cli-platform-ios@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.2.0.tgz#be21c0e3bbf17358d540cc23e5556bf679f6322e" + integrity sha512-hIPK3iL/mL+0ChXmQ9uqqzNOKA48H+TAzg+hrxQLll/6dNMxDeK9/wZpktcsh8w+CyhqzKqVernGcQs7tPeKGw== dependencies: - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" - execa "^5.0.0" + execa "^1.0.0" fast-xml-parser "^4.0.12" glob "^7.1.3" ora "^5.4.1" -"@react-native-community/cli-plugin-metro@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.1.1.tgz#446f829aa37caee7440d863a42d0f600a4713d8b" - integrity sha512-HV+lW1mFSu6GL7du+0/tfq8/5jytKp+w3n4+MWzRkx5wXvUq3oJjzwe8y+ZvvCqkRPdsOiwFDgJrtPhvaZp+xA== - -"@react-native-community/cli-plugin-metro@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.2.tgz#7db7dc8939b821b9aeebdd5ee3293f3a0201a2ea" - integrity sha512-FpFBwu+d2E7KRhYPTkKvQsWb2/JKsJv+t1tcqgQkn+oByhp+qGyXBobFB8/R3yYvRRDCSDhS+atWTJzk9TjM8g== - -"@react-native-community/cli-server-api@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.1.1.tgz#c00319cba3cdd1ba2cf82286cfa4aa3a6bc6a5b2" - integrity sha512-dUqqEmtEiCMyqFd6LF1UqH0WwXirK2tpU7YhyFsBbigBj3hPz2NmzghCe7DRIcC9iouU0guBxhgmiLtmUEPduQ== +"@react-native-community/cli-plugin-metro@^10.0.0", "@react-native-community/cli-plugin-metro@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-10.2.0.tgz#83cabbc04c80f7e94f88ed998b72c7d572c6f094" + integrity sha512-9eiJrKYuauEDkQLCrjJUh7tS9T0oaMQqVUSSSuyDG6du7HQcfaR4mSf21wK75jvhKiwcQLpsFmMdctAb+0v+Cg== dependencies: - "@react-native-community/cli-debugger-ui" "12.1.1" - "@react-native-community/cli-tools" "12.1.1" - compression "^1.7.1" - connect "^3.6.5" - errorhandler "^1.5.1" - nocache "^3.0.1" - pretty-format "^26.6.2" - serve-static "^1.13.1" - ws "^7.5.1" + "@react-native-community/cli-server-api" "^10.1.1" + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + execa "^1.0.0" + metro "0.73.8" + metro-config "0.73.8" + metro-core "0.73.8" + metro-react-native-babel-transformer "0.73.8" + metro-resolver "0.73.8" + metro-runtime "0.73.8" + readline "^1.3.0" -"@react-native-community/cli-server-api@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.3.2.tgz#11df4e20ed72d59cf22adf77bd30aff3d6e70dc9" - integrity sha512-iwa7EO9XFA/OjI5pPLLpI/6mFVqv8L73kNck3CNOJIUCCveGXBKK0VMyOkXaf/BYnihgQrXh+x5cxbDbggr7+Q== +"@react-native-community/cli-server-api@^10.0.0", "@react-native-community/cli-server-api@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-10.1.1.tgz#e382269de281bb380c2e685431364fbbb8c1cb3a" + integrity sha512-NZDo/wh4zlm8as31UEBno2bui8+ufzsZV+KN7QjEJWEM0levzBtxaD+4je0OpfhRIIkhaRm2gl/vVf7OYAzg4g== dependencies: - "@react-native-community/cli-debugger-ui" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-tools" "^10.1.1" compression "^1.7.1" connect "^3.6.5" - errorhandler "^1.5.1" + errorhandler "^1.5.0" nocache "^3.0.1" pretty-format "^26.6.2" serve-static "^1.13.1" ws "^7.5.1" -"@react-native-community/cli-tools@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.1.1.tgz#c70df5da2d3ad61e5e8ab70dd36d84a89c322b23" - integrity sha512-c9vjDVojZnivGsLoVoTZsJjHnwBEI785yV8mgyKTVFx1sciK8lCsIj1Lke7jNpz7UAE1jW94nI7de2B1aQ9rbA== - dependencies: - appdirsjs "^1.2.4" - chalk "^4.1.2" - find-up "^5.0.0" - mime "^2.4.1" - node-fetch "^2.6.0" - open "^6.2.0" - ora "^5.4.1" - semver "^7.5.2" - shell-quote "^1.7.3" - sudo-prompt "^9.0.0" - -"@react-native-community/cli-tools@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.3.2.tgz#d3362b04fba3f73ec82c5a493696b575acfb420c" - integrity sha512-nDH7vuEicHI2TI0jac/DjT3fr977iWXRdgVAqPZFFczlbs7A8GQvEdGnZ1G8dqRUmg+kptw0e4hwczAOG89JzQ== +"@react-native-community/cli-tools@^10.0.0", "@react-native-community/cli-tools@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-10.1.1.tgz#fa66e509c0d3faa31f7bb87ed7d42ad63f368ddd" + integrity sha512-+FlwOnZBV+ailEzXjcD8afY2ogFEBeHOw/8+XXzMgPaquU2Zly9B+8W089tnnohO3yfiQiZqkQlElP423MY74g== dependencies: appdirsjs "^1.2.4" chalk "^4.1.2" @@ -1642,81 +1439,71 @@ node-fetch "^2.6.0" open "^6.2.0" ora "^5.4.1" - semver "^7.5.2" + semver "^6.3.0" shell-quote "^1.7.3" - sudo-prompt "^9.0.0" -"@react-native-community/cli-types@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.1.1.tgz#5a5c0593f50dc394af5265364d0e919ba6134653" - integrity sha512-B9lFEIc1/H2GjiyRCk6ISJNn06h5j0cWuokNm3FmeyGOoGIfm4XYUbnM6IpGlIDdQpTtUzZfNq8CL4CIJZXF0g== +"@react-native-community/cli-types@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-10.0.0.tgz#046470c75ec18f8b3bd906e54e43a6f678e01a45" + integrity sha512-31oUM6/rFBZQfSmDQsT1DX/5fjqfxg7sf2u8kTPJK7rXVya5SRpAMaCXsPAG0omsmJxXt+J9HxUi3Ic+5Ux5Iw== dependencies: joi "^17.2.1" -"@react-native-community/cli-types@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.3.2.tgz#0551c553c87701faae580097d7786dfff8ec2ef4" - integrity sha512-9D0UEFqLW8JmS16mjHJxUJWX8E+zJddrHILSH8AJHZ0NNHv4u2DXKdb0wFLMobFxGNxPT+VSOjc60fGvXzWHog== - dependencies: - joi "^17.2.1" - -"@react-native-community/cli@12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.1.1.tgz#55e413ee620bea1e6b58c92dad2e9f196d3a5af2" - integrity sha512-St/lyxQ//crrigfE2QCqmjDb0IH3S9nmolm0eqmCA1bB8WWUk5dpjTgQk6xxDxz+3YtMghDJkGZPK4AxDXT42g== - dependencies: - "@react-native-community/cli-clean" "12.1.1" - "@react-native-community/cli-config" "12.1.1" - "@react-native-community/cli-debugger-ui" "12.1.1" - "@react-native-community/cli-doctor" "12.1.1" - "@react-native-community/cli-hermes" "12.1.1" - "@react-native-community/cli-plugin-metro" "12.1.1" - "@react-native-community/cli-server-api" "12.1.1" - "@react-native-community/cli-tools" "12.1.1" - "@react-native-community/cli-types" "12.1.1" +"@react-native-community/cli@10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.0.0.tgz#46f68a1184014956dc237e12e6c2ca9b318a04db" + integrity sha512-KHV9/AbPeIK87jHP7iY07/HQG00J5AYF/dHz2rzqAZGB2WYFAbc5uoLRw90u/U2AcSeO7ep+4kawm+/B9LJreg== + dependencies: + "@react-native-community/cli-clean" "^10.0.0" + "@react-native-community/cli-config" "^10.0.0" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-doctor" "^10.0.0" + "@react-native-community/cli-hermes" "^10.0.0" + "@react-native-community/cli-plugin-metro" "^10.0.0" + "@react-native-community/cli-server-api" "^10.0.0" + "@react-native-community/cli-tools" "^10.0.0" + "@react-native-community/cli-types" "^10.0.0" chalk "^4.1.2" commander "^9.4.1" - deepmerge "^4.3.0" - execa "^5.0.0" + execa "^1.0.0" find-up "^4.1.0" fs-extra "^8.1.0" graceful-fs "^4.1.3" - prompts "^2.4.2" - semver "^7.5.2" - -"@react-native-community/cli@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.3.2.tgz#002ae3683b9fe6b0a83a837f41d9db541ea7667f" - integrity sha512-WgoUWwLDcf/G1Su2COUUVs3RzAwnV/vUTdISSpAUGgSc57mPabaAoUctKTnfYEhCnE3j02k3VtaVPwCAFRO3TQ== - dependencies: - "@react-native-community/cli-clean" "12.3.2" - "@react-native-community/cli-config" "12.3.2" - "@react-native-community/cli-debugger-ui" "12.3.2" - "@react-native-community/cli-doctor" "12.3.2" - "@react-native-community/cli-hermes" "12.3.2" - "@react-native-community/cli-plugin-metro" "12.3.2" - "@react-native-community/cli-server-api" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - "@react-native-community/cli-types" "12.3.2" + prompts "^2.4.0" + semver "^6.3.0" + +"@react-native-community/cli@10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.2.0.tgz#bcb65bb3dcb03b0fc4e49619d51e12d23396b301" + integrity sha512-QH7AFBz5FX2zTZRH/o3XehHrZ0aZZEL5Sh+23nSEFgSj3bLFfvjjZhuoiRSAo7iiBdvAoXrfxQ8TXgg4Xf/7fw== + dependencies: + "@react-native-community/cli-clean" "^10.1.1" + "@react-native-community/cli-config" "^10.1.1" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-doctor" "^10.2.0" + "@react-native-community/cli-hermes" "^10.2.0" + "@react-native-community/cli-plugin-metro" "^10.2.0" + "@react-native-community/cli-server-api" "^10.1.1" + "@react-native-community/cli-tools" "^10.1.1" + "@react-native-community/cli-types" "^10.0.0" chalk "^4.1.2" commander "^9.4.1" - deepmerge "^4.3.0" - execa "^5.0.0" + execa "^1.0.0" find-up "^4.1.0" fs-extra "^8.1.0" graceful-fs "^4.1.3" - prompts "^2.4.2" - semver "^7.5.2" - -"@react-native-windows/cli@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/cli/-/cli-0.73.0.tgz#d7af4dc0221d888b34953f58bb692db2a1903c93" - integrity sha512-TY1ap76PnYuLYsD0iPZk3y9f9cnWjU9SVQOR7j3uELLyA1Q4yJKaCtUcjvXaTm27MoGH4ityw+FxTEkKC/D0cQ== - dependencies: - "@react-native-windows/codegen" "0.73.0" - "@react-native-windows/fs" "0.73.0" - "@react-native-windows/package-utils" "0.73.0" - "@react-native-windows/telemetry" "0.73.0" + prompts "^2.4.0" + semver "^6.3.0" + +"@react-native-windows/cli@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/cli/-/cli-0.71.2.tgz#cbfc1e3b07c0b6000eca937b235b15556b04678b" + integrity sha512-eF0KMp3jtjMGAXn9rL55jY5J338U1DyWSb49p/kMRfggB4to89qzJK8wJnP8Izi10SYa8JXXn3BELGt9rjv9mA== + dependencies: + "@react-native-windows/codegen" "0.71.2" + "@react-native-windows/fs" "0.71.2" + "@react-native-windows/package-utils" "0.71.2" + "@react-native-windows/telemetry" "0.71.2" "@xmldom/xmldom" "^0.7.7" chalk "^4.1.0" cli-spinners "^2.2.0" @@ -1732,315 +1519,76 @@ username "^5.1.0" uuid "^3.3.2" xml-formatter "^2.4.0" - xml-parser "^1.2.1" - xpath "^0.0.27" - -"@react-native-windows/codegen@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/codegen/-/codegen-0.73.0.tgz#8f7866478baa5c02af31bf79fd44b65cd9076de0" - integrity sha512-M+R8JzUEizAE23MkBOuSdyDGv9BeZx47L6gUWlXI4fyM9LjXpdYU0g6la8ZWleiLrDtHW0JIz95w8KkghpB6hg== - dependencies: - "@react-native-windows/fs" "0.73.0" - chalk "^4.1.0" - globby "^11.0.4" - mustache "^4.0.1" - source-map-support "^0.5.19" - yargs "^16.2.0" - -"@react-native-windows/find-repo-root@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/find-repo-root/-/find-repo-root-0.73.0.tgz#21a2983bfd4052323a4672ed2e32a5c3af8627a7" - integrity sha512-ahEgLmFYNvXw5I1ETJDhNMyZ/iR+DK4iOZ9YaT4EQzEPGKgj8a/4kvStSyMa117m6yRPeM8hCrhsfsHoRCphBA== - dependencies: - "@react-native-windows/fs" "0.73.0" - find-up "^4.1.0" - -"@react-native-windows/fs@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/fs/-/fs-0.73.0.tgz#5fcdada259f286dff8d462505982c9113a2ca612" - integrity sha512-Vg0gJavc6oO4TkTMK+s8V+1KhLlJgdtuwsUaBNRfhi+Dr/lWy7GKitV6rBn/UkG8DCt9LBmwdCZWpncxSs8CDA== - dependencies: - graceful-fs "^4.2.8" - -"@react-native-windows/package-utils@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/package-utils/-/package-utils-0.73.0.tgz#b274455210f843a39367a192e7294835a769df9a" - integrity sha512-a3CuH8RPBfIwwPYi7gjyLmvRTzjFfXpePdLAC6afXHNbc5+VR6QJJ/VPhO9kQEvUxrQCXKXRXMGsUWrg0TNTEA== - dependencies: - "@react-native-windows/find-repo-root" "0.73.0" - "@react-native-windows/fs" "0.73.0" - get-monorepo-packages "^1.2.0" - lodash "^4.17.15" - -"@react-native-windows/telemetry@0.73.0": - version "0.73.0" - resolved "https://registry.yarnpkg.com/@react-native-windows/telemetry/-/telemetry-0.73.0.tgz#3b13d9b51f51d6091ed627639d65693d747be73f" - integrity sha512-B00w6IyqV0IGzdiAlyE/348RM5Gp5k9vsE62/hTor2BFovlubbFP+6iqWPyhRr+2tE+WGN1qv4uR/gIp1cA7TA== - dependencies: - "@react-native-windows/fs" "0.73.0" - "@xmldom/xmldom" "^0.7.7" - applicationinsights "^2.3.1" - ci-info "^3.2.0" - envinfo "^7.8.1" - lodash "^4.17.21" - os-locale "^5.0.0" - xpath "^0.0.27" - -"@react-native/assets-registry@0.73.1", "@react-native/assets-registry@^0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.73.1.tgz#e2a6b73b16c183a270f338dc69c36039b3946e85" - integrity sha512-2FgAbU7uKM5SbbW9QptPPZx8N9Ke2L7bsHb+EhAanZjFZunA9PaYtyjUQ1s7HD+zDVqOQIvjkpXSv7Kejd2tqg== - -"@react-native/assets@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" - integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ== - -"@react-native/babel-plugin-codegen@0.73.2": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.73.2.tgz#447656cde437b71dc3ef0af3f8a5b215653d5d07" - integrity sha512-PadyFZWVaWXIBP7Q5dgEL7eAd7tnsgsLjoHJB1hIRZZuVUg1Zqe3nULwC7RFAqOtr5Qx7KXChkFFcKQ3WnZzGw== - dependencies: - "@react-native/codegen" "0.73.2" - -"@react-native/babel-plugin-codegen@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.73.4.tgz#8a2037d5585b41877611498ae66adbf1dddfec1b" - integrity sha512-XzRd8MJGo4Zc5KsphDHBYJzS1ryOHg8I2gOZDAUCGcwLFhdyGu1zBNDJYH2GFyDrInn9TzAbRIf3d4O+eltXQQ== - dependencies: - "@react-native/codegen" "0.73.3" - -"@react-native/babel-preset@0.73.19": - version "0.73.19" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.73.19.tgz#a6c0587651804f8f01d6f3b7729f1d4a2d469691" - integrity sha512-ujon01uMOREZecIltQxPDmJ6xlVqAUFGI/JCSpeVYdxyXBoBH5dBb0ihj7h6LKH1q1jsnO9z4MxfddtypKkIbg== - dependencies: - "@babel/core" "^7.20.0" - "@babel/plugin-proposal-async-generator-functions" "^7.0.0" - "@babel/plugin-proposal-class-properties" "^7.18.0" - "@babel/plugin-proposal-export-default-from" "^7.0.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.0" - "@babel/plugin-proposal-numeric-separator" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.20.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-optional-chaining" "^7.20.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-export-default-from" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.18.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-syntax-optional-chaining" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.20.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.20.0" - "@babel/plugin-transform-flow-strip-types" "^7.20.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-private-methods" "^7.22.5" - "@babel/plugin-transform-private-property-in-object" "^7.22.11" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - "@babel/plugin-transform-runtime" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.5.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - "@babel/template" "^7.0.0" - "@react-native/babel-plugin-codegen" "0.73.2" - babel-plugin-transform-flow-enums "^0.0.2" - react-refresh "^0.14.0" - -"@react-native/babel-preset@0.73.21": - version "0.73.21" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.73.21.tgz#174c16493fa4e311b2f5f0c58d4f3c6a5a68bbea" - integrity sha512-WlFttNnySKQMeujN09fRmrdWqh46QyJluM5jdtDNrkl/2Hx6N4XeDUGhABvConeK95OidVO7sFFf7sNebVXogA== - dependencies: - "@babel/core" "^7.20.0" - "@babel/plugin-proposal-async-generator-functions" "^7.0.0" - "@babel/plugin-proposal-class-properties" "^7.18.0" - "@babel/plugin-proposal-export-default-from" "^7.0.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.0" - "@babel/plugin-proposal-numeric-separator" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.20.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-optional-chaining" "^7.20.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-export-default-from" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.18.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-syntax-optional-chaining" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.20.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.20.0" - "@babel/plugin-transform-flow-strip-types" "^7.20.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-private-methods" "^7.22.5" - "@babel/plugin-transform-private-property-in-object" "^7.22.11" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - "@babel/plugin-transform-runtime" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.5.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - "@babel/template" "^7.0.0" - "@react-native/babel-plugin-codegen" "0.73.4" - babel-plugin-transform-flow-enums "^0.0.2" - react-refresh "^0.14.0" - -"@react-native/codegen@0.73.2", "@react-native/codegen@^0.73.2": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.73.2.tgz#58af4e4c3098f0e6338e88ec64412c014dd51519" - integrity sha512-lfy8S7umhE3QLQG5ViC4wg5N1Z+E6RnaeIw8w1voroQsXXGPB72IBozh8dAHR3+ceTxIU0KX3A8OpJI8e1+HpQ== - dependencies: - "@babel/parser" "^7.20.0" - flow-parser "^0.206.0" - glob "^7.1.1" - invariant "^2.2.4" - jscodeshift "^0.14.0" - mkdirp "^0.5.1" - nullthrows "^1.1.1" - -"@react-native/codegen@0.73.3": - version "0.73.3" - resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.73.3.tgz#cc984a8b17334d986cc600254a0d4b7fa7d68a94" - integrity sha512-sxslCAAb8kM06vGy9Jyh4TtvjhcP36k/rvj2QE2Jdhdm61KvfafCATSIsOfc0QvnduWFcpXUPvAVyYwuv7PYDg== - dependencies: - "@babel/parser" "^7.20.0" - flow-parser "^0.206.0" - glob "^7.1.1" - invariant "^2.2.4" - jscodeshift "^0.14.0" - mkdirp "^0.5.1" - nullthrows "^1.1.1" + xml-parser "^1.2.1" + xpath "^0.0.27" -"@react-native/community-cli-plugin@0.73.16": - version "0.73.16" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.16.tgz#29dca91aa3e24c8cd534dbf3db5766509da92ea3" - integrity sha512-eNH3v3qJJF6f0n/Dck90qfC9gVOR4coAXMTdYECO33GfgjTi+73vf/SBqlXw9HICH/RNZYGPM3wca4FRF7TYeQ== +"@react-native-windows/codegen@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/codegen/-/codegen-0.71.2.tgz#a83c999d65f482f3e8291bbd2569ed9bbdd788c7" + integrity sha512-EGLi3eSDtpk7/SsMth184LvOwlw4n1Rv7r3AxKtdcYR+f+GVdfJeTRVVC95hczsDQ8nmNsr5KhrvQntj1IdUiA== dependencies: - "@react-native-community/cli-server-api" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - "@react-native/dev-middleware" "0.73.7" - "@react-native/metro-babel-transformer" "0.73.15" - chalk "^4.0.0" - execa "^5.1.1" - metro "^0.80.3" - metro-config "^0.80.3" - metro-core "^0.80.3" - node-fetch "^2.2.0" - readline "^1.3.0" + "@react-native-windows/fs" "0.71.2" + chalk "^4.1.0" + globby "^11.0.4" + mustache "^4.0.1" + source-map-support "^0.5.19" + yargs "^16.2.0" -"@react-native/community-cli-plugin@^0.73.10": - version "0.73.13" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.13.tgz#a7416d6245436e3970c5ab1f86a00b95ef92f899" - integrity sha512-9Nnw+gxVwAtxAuTAOa4C4SLCHe6blGWuASsXZVqTaXDtUgMB9Cv8nIcOxD2K09CLMzGCxYOPac8Gs8eiHIOVwA== +"@react-native-windows/find-repo-root@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/find-repo-root/-/find-repo-root-0.71.2.tgz#b46afad24a70adda489f540f5ae43c87a9cb32e9" + integrity sha512-cwDk2ZivzJMFH8D6tl/1/YypCgHvwb3ivIAubf/u7JEX7ibhRvmMmcuTqNH1GAMyDVKg1jtJeqd3iIlW4gXSug== dependencies: - "@react-native-community/cli-server-api" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - "@react-native/dev-middleware" "0.73.7" - "@react-native/metro-babel-transformer" "0.73.13" - chalk "^4.0.0" - execa "^5.1.1" - metro "^0.80.3" - metro-config "^0.80.3" - metro-core "^0.80.3" - node-fetch "^2.2.0" - readline "^1.3.0" - -"@react-native/debugger-frontend@0.73.3": - version "0.73.3" - resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.73.3.tgz#033757614d2ada994c68a1deae78c1dd2ad33c2b" - integrity sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw== + "@react-native-windows/fs" "0.71.2" + find-up "^4.1.0" -"@react-native/dev-middleware@0.73.7": - version "0.73.7" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.7.tgz#61d2bf08973d9a537fa3f2a42deeb13530d721ae" - integrity sha512-BZXpn+qKp/dNdr4+TkZxXDttfx8YobDh8MFHsMk9usouLm22pKgFIPkGBV0X8Do4LBkFNPGtrnsKkWk/yuUXKg== +"@react-native-windows/fs@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/fs/-/fs-0.71.2.tgz#b1ff5052c4fbec55ce6e9a16fe5234bebf53fcbc" + integrity sha512-usxXHGJBYdRXl8zcKS2C2CFv8Fa1bFWmFZggtYwCE34JuuOSSfAp3XDRyMZJOTuEigIGEdWLrIbn2s8AttJDYg== dependencies: - "@isaacs/ttlcache" "^1.4.1" - "@react-native/debugger-frontend" "0.73.3" - chrome-launcher "^0.15.2" - chromium-edge-launcher "^1.0.0" - connect "^3.6.5" - debug "^2.2.0" - node-fetch "^2.2.0" - open "^7.0.3" - serve-static "^1.13.1" - temp-dir "^2.0.0" - -"@react-native/gradle-plugin@0.73.4", "@react-native/gradle-plugin@^0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.73.4.tgz#aa55784a8c2b471aa89934db38c090d331baf23b" - integrity sha512-PMDnbsZa+tD55Ug+W8CfqXiGoGneSSyrBZCMb5JfiB3AFST3Uj5e6lw8SgI/B6SKZF7lG0BhZ6YHZsRZ5MlXmg== - -"@react-native/js-polyfills@0.73.1", "@react-native/js-polyfills@^0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.73.1.tgz#730b0a7aaab947ae6f8e5aa9d995e788977191ed" - integrity sha512-ewMwGcumrilnF87H4jjrnvGZEaPFCAC4ebraEK+CurDDmwST/bIicI4hrOAv+0Z0F7DEK4O4H7r8q9vH7IbN4g== + graceful-fs "^4.2.8" -"@react-native/metro-babel-transformer@0.73.13": - version "0.73.13" - resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.73.13.tgz#81cb6dd8d5140c57f5595183fd6857feb8b7f5d7" - integrity sha512-k9AQifogQfgUXPlqQSoMtX2KUhniw4XvJl+nZ4hphCH7qiMDAwuP8OmkJbz5E/N+Ro9OFuLE7ax4GlwxaTsAWg== +"@react-native-windows/package-utils@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/package-utils/-/package-utils-0.71.2.tgz#fad0228948705afe526c431b3b477d71801decda" + integrity sha512-dk5hF1JN9H5nyaez34a954dnkOXKAXoLSBTdpvlaNCFK9vyrLTSpkSwjY4CEtjQBxTbsdpxUdxGxjiY/516Fkw== dependencies: - "@babel/core" "^7.20.0" - "@react-native/babel-preset" "0.73.19" - hermes-parser "0.15.0" - nullthrows "^1.1.1" + "@react-native-windows/find-repo-root" "0.71.2" + "@react-native-windows/fs" "0.71.2" + get-monorepo-packages "^1.2.0" + lodash "^4.17.15" -"@react-native/metro-babel-transformer@0.73.15": - version "0.73.15" - resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.73.15.tgz#c516584dde62d65a46668074084359c03e6a50f1" - integrity sha512-LlkSGaXCz+xdxc9819plmpsl4P4gZndoFtpjN3GMBIu6f7TBV0GVbyJAU4GE8fuAWPVSVL5ArOcdkWKSbI1klw== +"@react-native-windows/telemetry@0.71.2": + version "0.71.2" + resolved "https://registry.yarnpkg.com/@react-native-windows/telemetry/-/telemetry-0.71.2.tgz#d44b3c4af08edec69dc602d2cb43d8110c60c48c" + integrity sha512-klY6NMHBM6mTsuphQlYhAwKbW5+pmItWJl3ZH4goK2HICyWPrCvE8twUfoUkzIki2zyLEToXT/P+1Isz+E8X8w== dependencies: - "@babel/core" "^7.20.0" - "@react-native/babel-preset" "0.73.21" - hermes-parser "0.15.0" - nullthrows "^1.1.1" + "@react-native-windows/fs" "0.71.2" + "@xmldom/xmldom" "^0.7.7" + applicationinsights "^2.3.1" + ci-info "^3.2.0" + envinfo "^7.8.1" + lodash "^4.17.21" + os-locale "^5.0.0" + xpath "^0.0.27" -"@react-native/metro-config@0.73.5": - version "0.73.5" - resolved "https://registry.yarnpkg.com/@react-native/metro-config/-/metro-config-0.73.5.tgz#791242ca93057d7299ce18379ea11d3bdb368ea9" - integrity sha512-3bNWoHzOzP/+qoLJtRhOVXrnxKmSY3i4y5PXyMQlIvvOI/GQbXulPpEZxK/yUrf1MmeXHLLFufFbQWlfDEDoxA== - dependencies: - "@react-native/js-polyfills" "0.73.1" - "@react-native/metro-babel-transformer" "0.73.15" - metro-config "^0.80.3" - metro-runtime "^0.80.3" +"@react-native/assets@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" + integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ== -"@react-native/normalize-colors@0.73.2", "@react-native/normalize-colors@^0.73.0", "@react-native/normalize-colors@^0.73.2": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.73.2.tgz#cc8e48fbae2bbfff53e12f209369e8d2e4cf34ec" - integrity sha512-bRBcb2T+I88aG74LMVHaKms2p/T8aQd8+BZ7LuuzXlRfog1bMWWn/C5i0HVuvW4RPtXQYgIlGiXVDy9Ir1So/w== +"@react-native/normalize-color@*", "@react-native/normalize-color@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@react-native/normalize-color/-/normalize-color-2.1.0.tgz#939b87a9849e81687d3640c5efa2a486ac266f91" + integrity sha512-Z1jQI2NpdFJCVgpY+8Dq/Bt3d+YUi1928Q+/CZm/oh66fzM0RUl54vvuXlPJKybH4pdCZey1eDTPaLHkMPNgWA== -"@react-native/virtualized-lists@0.73.4", "@react-native/virtualized-lists@^0.73.3": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.73.4.tgz#640e594775806f63685435b5d9c3d05c378ccd8c" - integrity sha512-HpmLg1FrEiDtrtAbXiwCgXFYyloK/dOIPIuWW3fsqukwJEWAiTzm1nXGJ7xPU5XTHiWZ4sKup5Ebaj8z7iyWog== - dependencies: - invariant "^2.2.4" - nullthrows "^1.1.1" +"@react-native/polyfills@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@react-native/polyfills/-/polyfills-2.0.0.tgz#4c40b74655c83982c8cf47530ee7dc13d957b6aa" + integrity sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ== -"@sideway/address@^4.1.4": +"@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== @@ -2057,24 +1605,24 @@ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== -"@sinclair/typebox@^0.27.8": - version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" - integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== +"@sinclair/typebox@^0.25.16": + version "0.25.24" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" + integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== -"@sinonjs/commons@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" - integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== +"@sinonjs/commons@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" + integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^10.0.2": - version "10.3.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" - integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== + version "10.0.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" + integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== dependencies: - "@sinonjs/commons" "^3.0.0" + "@sinonjs/commons" "^2.0.0" "@tootallnate/once@2": version "2.0.0" @@ -2082,83 +1630,83 @@ integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" - integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" - integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" - integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" "@types/node@*": - version "20.11.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.7.tgz#cb49aedd758c978c30806d0c38b520ed2a3df6e0" - integrity sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A== - dependencies: - undici-types "~5.26.4" + version "18.15.3" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.3.tgz#f0b991c32cfc6a4e7f3399d6cb4b8cf9a0315014" + integrity sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw== "@types/prop-types@*": - version "15.7.11" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" - integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== + version "15.7.5" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" + integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== -"@types/react@^18.2.47": - version "18.2.48" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.48.tgz#11df5664642d0bd879c1f58bc1d37205b064e8f1" - integrity sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w== +"@types/react@^18.0.28": + 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" "*" csstype "^3.0.2" "@types/scheduler@*": - version "0.16.8" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff" - integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== - -"@types/shimmer@^1.0.2": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/shimmer/-/shimmer-1.0.5.tgz#491d8984d4510e550bfeb02d518791d7f59d2b88" - integrity sha512-9Hp0ObzwwO57DpLFF0InUjUm/II8GmKAvzbefxQTihCb7KI6yc9yzf0nLc4mVdby5N4DRCgQM2wCup9KTieeww== + version "0.16.2" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== "@types/stack-utils@^2.0.0": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" - integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/yargs-parser@*": - version "21.0.3" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" - integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== + version "21.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^15.0.0": - version "15.0.19" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.19.tgz#328fb89e46109ecbdb70c295d96ff2f46dfd01b9" - integrity sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA== + 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.5" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" + integrity sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ== dependencies: "@types/yargs-parser" "*" "@types/yargs@^17.0.8": - version "17.0.32" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229" - integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog== + version "17.0.22" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" + integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== dependencies: "@types/yargs-parser" "*" "@xmldom/xmldom@^0.7.7": - version "0.7.13" - resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.13.tgz#ff34942667a4e19a9f4a0996a76814daac364cf3" - integrity sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g== + version "0.7.9" + resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.9.tgz#7f9278a50e737920e21b297b8a35286e9942c056" + integrity sha512-yceMpm/xd4W2a85iqZyO09gTnHvXF6pyiWjD2jcOJs7hRoZtNNOO1eJlhHj1ixA+xip2hOyGn+LgcvLCMo5zXA== abort-controller@^3.0.0: version "3.0.0" @@ -2167,6 +1715,11 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" +absolute-path@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/absolute-path/-/absolute-path-0.0.0.tgz#a78762fbdadfb5297be99b15d35a785b2f095bf7" + integrity sha512-HQiug4c+/s3WOvEnDRxXVmNtSG5s2gJM9r19BTcqjp7BWcE48PB+Y2G6jE65kqI0LpsQeMZygt/b60Gi4KxGyA== + accepts@^1.3.7, accepts@~1.3.5, accepts@~1.3.7: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -2175,15 +1728,10 @@ accepts@^1.3.7, accepts@~1.3.5, accepts@~1.3.7: mime-types "~2.1.34" negotiator "0.6.3" -acorn-import-assertions@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" - integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== - -acorn@^8.8.2: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== +acorn@^8.5.0: + 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" @@ -2249,23 +1797,21 @@ appdirsjs@^1.2.4: integrity sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw== applicationinsights@^2.3.1: - version "2.9.2" - resolved "https://registry.yarnpkg.com/applicationinsights/-/applicationinsights-2.9.2.tgz#a83b4bb3201da350cf438015d1e5032cb9978fe1" - integrity sha512-wlDiD7v0BQNM8oNzsf9C836R5ze25u+CuCEZsbA5xMIXYYBxkqkWE/mo9GFJM7rsKaiGqpxEwWmePHKD2Lwy2w== - dependencies: - "@azure/core-auth" "^1.5.0" - "@azure/core-rest-pipeline" "1.10.1" - "@azure/core-util" "1.2.0" - "@azure/opentelemetry-instrumentation-azure-sdk" "^1.0.0-beta.5" + version "2.5.0" + resolved "https://registry.yarnpkg.com/applicationinsights/-/applicationinsights-2.5.0.tgz#f008580b2f68267a5d233cce4e1f50b587bdf3c4" + integrity sha512-6kIFmpANRok+6FhCOmO7ZZ/mh7fdNKn17BaT13cg/RV5roLPJlA6q8srWexayHd3MPcwMb9072e8Zp0P47s/pw== + dependencies: + "@azure/core-auth" "^1.4.0" + "@azure/core-rest-pipeline" "^1.10.0" "@microsoft/applicationinsights-web-snippet" "^1.0.1" - "@opentelemetry/api" "^1.7.0" - "@opentelemetry/core" "^1.19.0" - "@opentelemetry/sdk-trace-base" "^1.19.0" - "@opentelemetry/semantic-conventions" "^1.19.0" + "@opentelemetry/api" "^1.0.4" + "@opentelemetry/core" "^1.0.1" + "@opentelemetry/sdk-trace-base" "^1.0.1" + "@opentelemetry/semantic-conventions" "^1.0.1" cls-hooked "^4.2.2" continuation-local-storage "^3.2.1" - diagnostic-channel "1.1.1" - diagnostic-channel-publishers "1.0.8" + diagnostic-channel "1.1.0" + diagnostic-channel-publishers "1.0.5" argparse@^1.0.7: version "1.0.10" @@ -2274,6 +1820,21 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -2291,15 +1852,25 @@ array-uniq@^1.0.1: resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== -ast-types@0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.15.2.tgz#39ae4809393c4b16df751ee563411423e85fb49d" - integrity sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg== +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + +ast-types@0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.14.2.tgz#600b882df8583e3cd4f2df5fa20fa83759d4bdfd" + integrity sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA== dependencies: tslib "^2.0.1" @@ -2328,68 +1899,111 @@ async-listener@^0.6.0: semver "^5.3.0" shimmer "^1.1.0" +async@^3.2.2: + version "3.2.4" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + babel-core@^7.0.0-bridge.0: version "7.0.0-bridge.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-plugin-module-resolver@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-5.0.0.tgz#2b7fc176bd55da25f516abf96015617b4f70fc73" - integrity sha512-g0u+/ChLSJ5+PzYwLwP8Rp8Rcfowz58TJNCe+L/ui4rpzE/mg//JVX0EWBUYoxaextqnwuGHzfGp2hh0PPV25Q== +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: - find-babel-config "^2.0.0" - glob "^8.0.3" - pkg-up "^3.1.0" - reselect "^4.1.7" - resolve "^1.22.1" + "@babel/compat-data" "^7.17.7" + "@babel/helper-define-polyfill-provider" "^0.3.3" + semver "^6.1.1" -babel-plugin-polyfill-corejs2@^0.4.8: - version "0.4.8" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz#dbcc3c8ca758a290d47c3c6a490d59429b0d2269" - integrity sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg== +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/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.5.0" - semver "^6.3.1" + "@babel/helper-define-polyfill-provider" "^0.3.3" + core-js-compat "^3.25.1" -babel-plugin-polyfill-corejs3@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz#9eea32349d94556c2ad3ab9b82ebb27d4bf04a81" - integrity sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg== +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.5.0" - core-js-compat "^3.34.0" + "@babel/helper-define-polyfill-provider" "^0.3.3" -babel-plugin-polyfill-regenerator@^0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz#8b0c8fc6434239e5d7b8a9d1f832bb2b0310f06a" - integrity sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.5.0" +babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: + version "7.0.0-beta.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" + integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== -babel-plugin-transform-flow-enums@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz#d1d0cc9bdc799c850ca110d0ddc9f21b9ec3ef25" - integrity sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ== - dependencies: - "@babel/plugin-syntax-flow" "^7.12.1" +babel-preset-fbjs@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz#38a14e5a7a3b285a3f3a86552d650dca5cf6111c" + integrity sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoped-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-member-expression-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-property-literals" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.3.1, base64-js@^1.5.1: +base64-js@^1.1.2, base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + bl@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" @@ -2407,12 +2021,21 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== dependencies: - balanced-match "^1.0.0" + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" braces@^3.0.2: version "3.0.2" @@ -2421,15 +2044,15 @@ braces@^3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.22.2: - version "4.22.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" - integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== +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.30001580" - electron-to-chromium "^1.4.648" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" bser@2.1.1: version "2.1.1" @@ -2456,6 +2079,21 @@ bytes@3.0.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -2480,17 +2118,17 @@ camelcase@^5.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0: +camelcase@^6.0.0: version "6.3.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001580: - version "1.0.30001580" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz#e3c76bc6fe020d9007647044278954ff8cd17d1e" - integrity sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA== +caniuse-lite@^1.0.30001449: + version "1.0.30001466" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001466.tgz#c1e6197c540392e09709ecaa9e3e403428c53375" + integrity sha512-ewtFBSfWjEmxUgNBSZItFSmVtvk9zkwkl1OfRZlKA8slltRN+/C/tuGVrF9styXkN36Yu3+SeJ1qkXxDEyNZ5w== -chalk@^2.0.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2507,42 +2145,25 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -chrome-launcher@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/chrome-launcher/-/chrome-launcher-0.15.2.tgz#4e6404e32200095fdce7f6a1e1004f9bd36fa5da" - integrity sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ== - dependencies: - "@types/node" "*" - escape-string-regexp "^4.0.0" - is-wsl "^2.2.0" - lighthouse-logger "^1.0.0" - -chromium-edge-launcher@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chromium-edge-launcher/-/chromium-edge-launcher-1.0.0.tgz#0443083074715a13c669530b35df7bfea33b1509" - integrity sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA== - dependencies: - "@types/node" "*" - escape-string-regexp "^4.0.0" - is-wsl "^2.2.0" - lighthouse-logger "^1.0.0" - mkdirp "^1.0.4" - rimraf "^3.0.2" - ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.2.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" - integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== + 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.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107" - integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" cli-cursor@^2.1.0: version "2.1.0" @@ -2559,9 +2180,9 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.0.0, cli-spinners@^2.2.0, cli-spinners@^2.5.0: - version "2.9.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" - integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg== + version "2.7.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" + integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== cliui@^6.0.0: version "6.0.0" @@ -2613,6 +2234,14 @@ cls-hooked@^4.2.2: emitter-listener "^1.0.1" semver "^5.4.1" +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + color-convert@^1.9.0, color-convert@^1.9.3: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -2680,11 +2309,21 @@ commander@^9.4.1: resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== +commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -2728,17 +2367,22 @@ continuation-local-storage@^3.2.1: async-listener "^0.6.0" emitter-listener "^1.1.1" -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +convert-source-map@^1.7.0: + 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.31.0, core-js-compat@^3.34.0: - version "3.35.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.1.tgz#215247d7edb9e830efa4218ff719beb2803555e2" - integrity sha512-sftHa5qUJY3rs9Zht1WEnmkvXputCyDBczPnr7QDgL8n3qrF3CMXY4VPSYtOLLiOUJcah2WNXREd48iOl6mQIw== +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.22.2" + browserslist "^4.21.5" core-util-is@~1.0.0: version "1.0.3" @@ -2766,7 +2410,7 @@ cross-spawn@^6.0.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0, cross-spawn@^7.0.3: +cross-spawn@^7.0.0: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2776,23 +2420,23 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.3: which "^2.0.1" csstype@^3.0.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + version "3.1.1" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" + integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== dayjs@^1.8.15: - version "1.11.10" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" - integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== + 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.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: +debug@4, debug@^4.1.0, debug@^4.1.1: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -2804,16 +2448,16 @@ decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decode-uri-component@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== + deepmerge@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-3.3.0.tgz#d3c47fd6f3a93d517b14426b0628a17b0125f5f7" integrity sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA== -deepmerge@^4.3.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" - integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== - defaults@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" @@ -2821,6 +2465,28 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -2836,31 +2502,31 @@ depd@2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -deprecated-react-native-prop-types@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/deprecated-react-native-prop-types/-/deprecated-react-native-prop-types-5.0.0.tgz#02a12f090da7bd9e8c3ac53c31cf786a1315d302" - integrity sha512-cIK8KYiiGVOFsKdPMmm1L3tA/Gl+JopXL6F5+C7x39MyPsQYnP57Im/D6bNUzcborD7fcMwiwZqcBdBXXZucYQ== +deprecated-react-native-prop-types@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/deprecated-react-native-prop-types/-/deprecated-react-native-prop-types-3.0.1.tgz#a275f84cd8519cd1665e8df3c99e9067d57a23ec" + integrity sha512-J0jCJcsk4hMlIb7xwOZKLfMpuJn6l8UtrPEzzQV5ewz5gvKNYakhBuq9h2rWX7YwHHJZFhU5W8ye7dB9oN8VcQ== dependencies: - "@react-native/normalize-colors" "^0.73.0" - invariant "^2.2.4" - prop-types "^15.8.1" + "@react-native/normalize-color" "*" + invariant "*" + prop-types "*" destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== -diagnostic-channel-publishers@1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.8.tgz#700557a902c443cb11f999f19f50a8bb3be490a0" - integrity sha512-HmSm9hXxSPxA9BaLGY98QU1zsdjeCk113KjAYGPCen1ZP6mhVaTPzHd6UYv5r21DnWANi+f+NyPOHruGT9jpqQ== +diagnostic-channel-publishers@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.5.tgz#df8c317086c50f5727fdfb5d2fce214d2e4130ae" + integrity sha512-dJwUS0915pkjjimPJVDnS/QQHsH0aOYhnZsLJdnZIMOrB+csj8RnZhWTuwnm8R5v3Z7OZs+ksv5luC14DGB7eg== -diagnostic-channel@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/diagnostic-channel/-/diagnostic-channel-1.1.1.tgz#44b60972de9ee055c16216535b0e9db3f6a0efd0" - integrity sha512-r2HV5qFkUICyoaKlBEpLKHjxMXATUf/l+h8UZPGBHGLy4DDiY2sOLcIctax4eRnTw5wH2jTMExLntGPJ8eOJxw== +diagnostic-channel@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/diagnostic-channel/-/diagnostic-channel-1.1.0.tgz#6985e9dfedfbc072d91dc4388477e4087147756e" + integrity sha512-fwujyMe1gj6rk6dYi9hMZm0c8Mz8NDMVl2LB4iaYh3+LIAThZC8RKFGXWG0IML2OxAit/ZFRgZhMkhQ3d/bobQ== dependencies: - semver "^7.5.3" + semver "^5.3.0" dir-glob@^2.0.0: version "2.2.2" @@ -2881,10 +2547,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.648: - version "1.4.648" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz#c7b46c9010752c37bb4322739d6d2dd82354fbe4" - integrity sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg== +electron-to-chromium@^1.4.284: + version "1.4.329" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.329.tgz#ea54b67c981c814f16917b585acf3a667d4c997f" + integrity sha512-dcwPzNUG4+reo5z+wHnrl2eZMu4kz+nLQEeepxLEDTLDC7Mi7AVTM4NXWct1TZyu3G4oQgygaAfbByaBtPqw2Q== emitter-listener@^1.0.1, emitter-listener@^1.1.1: version "1.1.2" @@ -2910,10 +2576,10 @@ end-of-stream@^1.1.0: dependencies: once "^1.4.0" -envinfo@^7.10.0, envinfo@^7.5.0, envinfo@^7.8.1: - version "7.11.0" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.11.0.tgz#c3793f44284a55ff8c82faf1ffd91bc6478ea01f" - integrity sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg== +envinfo@^7.5.0, envinfo@^7.7.2, envinfo@^7.8.1: + version "7.8.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== error-ex@^1.3.1: version "1.3.2" @@ -2929,7 +2595,7 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.3.4" -errorhandler@^1.5.1: +errorhandler@^1.5.0: version "1.5.1" resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.5.1.tgz#b9ba5d17cf90744cd1e851357a6e75bf806a9a91" integrity sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A== @@ -2957,11 +2623,6 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - esprima@^4.0.0, esprima@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" @@ -3010,25 +2671,52 @@ execa@^4.0.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^5.0.0, execa@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" fast-glob@^3.2.9: - version "3.3.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" - integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + version "3.2.12" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" + integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -3036,17 +2724,17 @@ fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" -fast-xml-parser@^4.0.12, fast-xml-parser@^4.2.4: - version "4.3.3" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.3.3.tgz#aeaf5778392329f17168c40c51bcbfec8ff965be" - integrity sha512-coV/D1MhrShMvU6D0I+VAK3umz6hUaxxhL0yp/9RjfiYUfAv14rDhGQL+PLForhMdr0wq3PiV07WtkkNjJjNHg== +fast-xml-parser@^4.0.12: + version "4.1.3" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.1.3.tgz#0254ad0d4d27f07e6b48254b068c0c137488dd97" + integrity sha512-LsNDahCiCcJPe8NO7HijcnukHB24tKbfDDA5IILx9dmW3Frb52lhbeX6MPNUSvyGNfav2VTYpJ/OqkRoVLrh2Q== dependencies: strnum "^1.0.5" fastq@^1.6.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" - integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" @@ -3057,6 +2745,16 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -3077,14 +2775,6 @@ finalhandler@1.1.2: statuses "~1.5.0" unpipe "~1.0.0" -find-babel-config@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-2.0.0.tgz#a8216f825415a839d0f23f4d18338a1cc966f701" - integrity sha512-dOKT7jvF3hGzlW60Gc3ONox/0rRZ/tz7WCil0bqA1In/3I8f1BctpXahRnEKDySZqci7u+dqq93sZST9fOJpFw== - dependencies: - json5 "^2.1.1" - path-exists "^4.0.0" - find-cache-dir@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" @@ -3117,20 +2807,20 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -flow-enums-runtime@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz#5bb0cd1b0a3e471330f4d109039b7eba5cb3e787" - integrity sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw== - flow-parser@0.*: - version "0.227.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.227.0.tgz#e50b65be9dc6810438c975e816a68005fbcd5107" - integrity sha512-nOygtGKcX/siZK/lFzpfdHEfOkfGcTW7rNroR1Zsz6T/JxSahPALXVt5qVHq/fgvMJuv096BTKbgxN3PzVBaDA== + version "0.201.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.201.0.tgz#d2005d4dae6fddf60d30f9ae0fb49a13c9c51cfe" + integrity sha512-G4oeDNpNGyIrweF9EnoHatncAihMT0tQgV6NMdyM5I7fhrz9Pr13PJ2KLQ673O4wj9KooTdBpeeYHdDNAQoyyw== -flow-parser@^0.206.0: - version "0.206.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.206.0.tgz#f4f794f8026535278393308e01ea72f31000bfef" - integrity sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w== +flow-parser@^0.185.0: + version "0.185.2" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.185.2.tgz#cb7ee57f77377d6c5d69a469e980f6332a15e492" + integrity sha512-2hJ5ACYeJCzNtiVULov6pljKOLygy0zddoqSI1fFetM+XRPpRshFdGEijtqlamA1XwyZ+7rhryI6FQFzvtLWUQ== + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== form-data@^4.0.0: version "4.0.0" @@ -3141,6 +2831,13 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -3161,14 +2858,14 @@ fs.realpath@^1.0.0: integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== gensync@^1.0.0-beta.2: version "1.0.0-beta.2" @@ -3202,10 +2899,10 @@ get-stream@^5.0.0: dependencies: pump "^3.0.0" -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== glob-parent@^5.1.2: version "5.1.2" @@ -3226,17 +2923,6 @@ glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.0.3: - version "8.1.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" - integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^5.0.1" - once "^1.3.0" - globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -3267,9 +2953,9 @@ globby@^7.1.1: slash "^1.0.0" graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.8, graceful-fs@^4.2.9: - 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== + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== has-flag@^3.0.0: version "3.0.0" @@ -3281,36 +2967,55 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -hasown@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" - integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: - function-bind "^1.1.2" + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" -hermes-estree@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.15.0.tgz#e32f6210ab18c7b705bdcb375f7700f2db15d6ba" - integrity sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ== +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== -hermes-estree@0.18.2: - version "0.18.2" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.18.2.tgz#fd450fa1659cf074ceaa2ddeeb21674f3b2342f3" - integrity sha512-KoLsoWXJ5o81nit1wSyEZnWUGy9cBna9iYMZBR7skKh7okYAYKqQ9/OczwpMHn/cH0hKDyblulGsJ7FknlfVxQ== +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" -hermes-parser@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.15.0.tgz#f611a297c2a2dbbfbce8af8543242254f604c382" - integrity sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q== +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - hermes-estree "0.15.0" + function-bind "^1.1.1" + +hermes-estree@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.8.0.tgz#530be27243ca49f008381c1f3e8b18fb26bf9ec0" + integrity sha512-W6JDAOLZ5pMPMjEiQGLCXSSV7pIBEgRR5zGkxgmzGSXHOxqV5dC/M1Zevqpbm9TZDE5tu358qZf8Vkzmsc+u7Q== -hermes-parser@0.18.2: - version "0.18.2" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.18.2.tgz#50f15e2fcd559a48c68cd7af259d4292298bd14d" - integrity sha512-1eQfvib+VPpgBZ2zYKQhpuOjw1tH+Emuib6QmjkJWJMhyjM8xnXMvA+76o9LhF0zOAJDZgPfQhg43cyXEyl5Ew== +hermes-parser@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.8.0.tgz#116dceaba32e45b16d6aefb5c4c830eaeba2d257" + integrity sha512-yZKalg1fTYG5eOiToLUaw69rQfZq/fi+/NtEXRU7N87K/XobNRhRWorh80oSge2lWUiZfTgUvRJH+XgZWrhoqA== dependencies: - hermes-estree "0.18.2" + hermes-estree "0.8.0" hermes-profile-transformer@^0.0.6: version "0.0.6" @@ -3359,11 +3064,6 @@ human-signals@^1.1.1: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - ieee754@^1.1.13: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -3375,16 +3075,14 @@ ignore@^3.3.5: integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== ignore@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" - integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== + version "5.2.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -image-size@^1.0.2: - version "1.1.1" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.1.1.tgz#ddd67d4dc340e52ac29ce5f546a09f4e29e840ac" - integrity sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ== - dependencies: - queue "6.0.2" +image-size@^0.6.0: + version "0.6.3" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" + integrity sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA== import-fresh@^2.0.0: version "2.0.0" @@ -3394,16 +3092,6 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" -import-in-the-middle@1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/import-in-the-middle/-/import-in-the-middle-1.4.2.tgz#2a266676e3495e72c04bbaa5ec14756ba168391b" - integrity sha512-9WOz1Yh/cvO/p69sxRmhyQwrIGGSp7EIdcb+fFNVi7CzQGQB8U1/1XrKVSbEd/GNOAeM0peJtmi7+qphe7NvAw== - dependencies: - acorn "^8.8.2" - acorn-import-assertions "^1.9.0" - cjs-module-lexer "^1.2.2" - module-details-from-path "^1.0.3" - imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -3427,7 +3115,7 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== -invariant@^2.2.4: +invariant@*, invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== @@ -3444,6 +3132,20 @@ ip@^1.1.5: resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -3454,22 +3156,66 @@ is-arrayish@^0.3.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== -is-core-module@^2.13.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== dependencies: - hasown "^2.0.0" + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" is-directory@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" integrity sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw== -is-docker@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" is-extglob@^2.1.1: version "2.1.1" @@ -3498,12 +3244,19 @@ is-interactive@^1.0.0: resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -3525,19 +3278,17 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== -is-wsl@^2.1.1, is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isarray@~1.0.0: +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== @@ -3547,94 +3298,125 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^3.0.1: +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== -jest-environment-node@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" - integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== +jest-environment-node@^29.2.1: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967" + integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw== dependencies: - "@jest/environment" "^29.7.0" - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^29.7.0" - jest-util "^29.7.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" -jest-get-type@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" - integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-message-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" - integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== +jest-message-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e" + integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^29.7.0" + pretty-format "^29.5.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" - integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== +jest-mock@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed" + integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw== + dependencies: + "@jest/types" "^29.5.0" + "@types/node" "*" + jest-util "^29.5.0" + +jest-regex-util@^27.0.6: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== + +jest-serializer@^27.0.6: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.9" + +jest-util@^27.2.0: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-util "^29.7.0" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" -jest-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" - integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== +jest-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f" + integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" - integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== +jest-validate@^26.5.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== dependencies: - "@jest/types" "^29.6.3" - camelcase "^6.2.0" + "@jest/types" "^26.6.2" + camelcase "^6.0.0" chalk "^4.0.0" - jest-get-type "^29.6.3" + jest-get-type "^26.3.0" leven "^3.1.0" - pretty-format "^29.7.0" + pretty-format "^26.6.2" -jest-worker@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" - integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== +jest-worker@^27.2.0: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" - jest-util "^29.7.0" merge-stream "^2.0.0" supports-color "^8.0.0" joi@^17.2.1: - version "17.12.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.12.0.tgz#a3fb5715f198beb0471cd551dd26792089c308d5" - integrity sha512-HSLsmSmXz+PV9PYoi3p7cgIbj06WnEBNT28n+bbBNcPZXZFqCzzvGqpTBPujx/Z0nh1+KNQPDrNgdmQ8dq0qYw== + version "17.8.4" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.8.4.tgz#f2d91ab8acd3cca4079ba70669c65891739234aa" + integrity sha512-jjdRHb5WtL+KgSHvOULQEPPv4kcl+ixd1ybOFQq3rWLgEEqc03QMmilodL0GVJE14U/SQDXkUhQUSZANGDH/AA== dependencies: - "@hapi/hoek" "^9.3.0" - "@hapi/topo" "^5.1.0" - "@sideway/address" "^4.1.4" + "@hapi/hoek" "^9.0.0" + "@hapi/topo" "^5.0.0" + "@sideway/address" "^4.1.3" "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" @@ -3651,20 +3433,20 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +jsc-android@^250230.2.1: + version "250230.2.1" + resolved "https://registry.yarnpkg.com/jsc-android/-/jsc-android-250230.2.1.tgz#3790313a970586a03ab0ad47defbc84df54f1b83" + integrity sha512-KmxeBlRjwoqCnBBKGsihFtvsBHyUFlBxJPK4FzeYcIuBfdjv6jFys44JITAgSTbQD+vIdwMEfyZklsuQX0yI1Q== + jsc-android@^250231.0.0: version "250231.0.0" resolved "https://registry.yarnpkg.com/jsc-android/-/jsc-android-250231.0.0.tgz#91720f8df382a108872fa4b3f558f33ba5e95262" integrity sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw== -jsc-safe-url@^0.2.2: - version "0.2.4" - resolved "https://registry.yarnpkg.com/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz#141c14fbb43791e88d5dc64e85a374575a83477a" - integrity sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q== - -jscodeshift@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.14.0.tgz#7542e6715d6d2e8bde0b4e883f0ccea358b46881" - integrity sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA== +jscodeshift@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.13.1.tgz#69bfe51e54c831296380585c6d9e733512aecdef" + integrity sha512-lGyiEbGOvmMRKgWk4vf+lUrCWO/8YR8sUR3FKF1Cq5fovjZDlIcw3Hu5ppLHAnEXshVffvaM0eyuY/AbOeYpnQ== dependencies: "@babel/core" "^7.13.16" "@babel/parser" "^7.13.16" @@ -3679,10 +3461,10 @@ jscodeshift@^0.14.0: chalk "^4.1.2" flow-parser "0.*" graceful-fs "^4.2.4" - micromatch "^4.0.4" + micromatch "^3.1.10" neo-async "^2.5.0" node-dir "^0.1.17" - recast "^0.21.0" + recast "^0.20.4" temp "^0.8.4" write-file-atomic "^2.3.0" @@ -3701,7 +3483,7 @@ json-parse-better-errors@^1.0.1: resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -json5@^2.1.1, json5@^2.2.3: +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== @@ -3713,7 +3495,26 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" -kind-of@^6.0.2: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -3735,14 +3536,6 @@ leven@^3.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== -lighthouse-logger@^1.0.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz#aef90f9e97cd81db367c7634292ee22079280aaa" - integrity sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g== - dependencies: - debug "^2.6.9" - marky "^1.2.2" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -3857,10 +3650,17 @@ map-age-cleaner@^0.1.1, map-age-cleaner@^0.1.3: dependencies: p-defer "^1.0.0" -marky@^1.2.2: - version "1.2.5" - resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.5.tgz#55796b688cbd72390d2d399eaaf1832c9413e3c0" - integrity sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q== +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" mem@^4.3.0: version "4.3.0" @@ -3895,116 +3695,302 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -metro-babel-transformer@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.80.5.tgz#a31bdafe22c63d2548c78a41fd902bf2a98af681" - integrity sha512-sxH6hcWCorhTbk4kaShCWsadzu99WBL4Nvq4m/sDTbp32//iGuxtAnUK+ZV+6IEygr2u9Z0/4XoZ8Sbcl71MpA== +metro-babel-transformer@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.73.5.tgz#e7ebe371cd8bf5df90b0e9153587b4d5089d2ce7" + integrity sha512-G3awAJ9of/R2jEg+MRokYcq/TNvMSxJipwybQ2NfwwSj5iLEmRH2YbwTx5w8f5qKgs2K4SS2pmBIs8qjdV6p3Q== + dependencies: + "@babel/core" "^7.14.0" + hermes-parser "0.8.0" + metro-source-map "0.73.5" + nullthrows "^1.1.1" + +metro-babel-transformer@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.73.8.tgz#521374cb9234ba126f3f8d63588db5901308b4ed" + integrity sha512-GO6H/W2RjZ0/gm1pIvdO9EP34s3XN6kzoeyxqmfqKfYhJmYZf1SzXbyiIHyMbJNwJVrsKuHqu32+GopTlKscWw== dependencies: "@babel/core" "^7.20.0" - hermes-parser "0.18.2" + hermes-parser "0.8.0" + metro-source-map "0.73.8" nullthrows "^1.1.1" -metro-cache-key@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-cache-key/-/metro-cache-key-0.80.5.tgz#3fd0ce5a360e0455dc8b68a659c60abde3edac1d" - integrity sha512-fr3QLZUarsB3tRbVcmr34kCBsTHk0Sh9JXGvBY/w3b2lbre+Lq5gtgLyFElHPecGF7o4z1eK9r3ubxtScHWcbA== +metro-cache-key@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-cache-key/-/metro-cache-key-0.73.8.tgz#afc9f63454edbd9d207544445a66e8a4e119462d" + integrity sha512-VzFGu4kJGIkLjyDgVoM2ZxIHlMdCZWMqVIux9N+EeyMVMvGXTiXW8eGROgxzDhVjyR58IjfMsYpRCKz5dR+2ew== -metro-cache@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.80.5.tgz#adc2e48d87312d68f305f830b22359cb4362ce4b" - integrity sha512-2u+dQ4PZwmC7eZo9uMBNhQQMig9f+w4QWBZwXCdVy/RYOHM0eObgGdMEOwODo73uxie82T9lWzxr3aZOZ+Nqtw== +metro-cache@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.73.8.tgz#85e2d7f7c7c74d1f942b7ecd168f7aceb987d883" + integrity sha512-/uFbTIw813Rvb8kSAIHvax9gWl41dtgjY2SpJLNIBLdQ6oFZ3CVo3ahZIiEZOrCeHl9xfGn5tmvNb8CEFa/Q5w== dependencies: - metro-core "0.80.5" + metro-core "0.73.8" rimraf "^3.0.2" -metro-config@0.80.5, metro-config@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.80.5.tgz#859e2ce307372f583bc8ebfe69bd233dd9328a8b" - integrity sha512-elqo/lwvF+VjZ1OPyvmW/9hSiGlmcqu+rQvDKw5F5WMX48ZC+ySTD1WcaD7e97pkgAlJHVYqZ98FCjRAYOAFRQ== +metro-config@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.73.8.tgz#8f6c22c94528919635c6688ed8d2ad8a10c70b27" + integrity sha512-sAYq+llL6ZAfro64U99ske8HcKKswxX4wIZbll9niBKG7TkWm7tfMY1jO687XEmE4683rHncZeBRav9pLngIzg== dependencies: - connect "^3.6.5" cosmiconfig "^5.0.5" - jest-validate "^29.6.3" - metro "0.80.5" - metro-cache "0.80.5" - metro-core "0.80.5" - metro-runtime "0.80.5" + jest-validate "^26.5.2" + metro "0.73.8" + metro-cache "0.73.8" + metro-core "0.73.8" + metro-runtime "0.73.8" -metro-core@0.80.5, metro-core@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.80.5.tgz#3ead635dcecfa6d0b380f8a80d3e5406f70846a9" - integrity sha512-vkLuaBhnZxTVpaZO8ZJVEHzjaqSXpOdpAiztSZ+NDaYM6jEFgle3/XIbLW91jTSf2+T8Pj5yB1G7KuOX+BcVwg== +metro-core@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.73.8.tgz#a31ba7d7bfe3f4c2ac2c7a2493aa4229ecad701e" + integrity sha512-Aew4dthbZf8bRRjlYGL3cnai3+LKYTf6mc7YS2xLQRWtgGZ1b/H8nQtBvXZpfRYFcS84UeEQ10vwIf5eR3qPdQ== dependencies: lodash.throttle "^4.1.1" - metro-resolver "0.80.5" + metro-resolver "0.73.8" -metro-file-map@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-file-map/-/metro-file-map-0.80.5.tgz#1e2f0026c1a380a8802c977279018093c21b191e" - integrity sha512-bKCvJ05drjq6QhQxnDUt3I8x7bTcHo3IIKVobEr14BK++nmxFGn/BmFLRzVBlghM6an3gqwpNEYxS5qNc+VKcg== +metro-file-map@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-file-map/-/metro-file-map-0.73.8.tgz#88d666e7764e1b0adf5fd634d91e97e3135d2db7" + integrity sha512-CM552hUO9om02jJdLszOCIDADKNaaeVz8CjYXItndvgr5jmFlQYAR+UMvaDzeT8oYdAV1DXAljma2CS2UBymPg== dependencies: + abort-controller "^3.0.0" anymatch "^3.0.3" debug "^2.2.0" fb-watchman "^2.0.0" graceful-fs "^4.2.4" invariant "^2.2.4" - jest-worker "^29.6.3" + jest-regex-util "^27.0.6" + jest-serializer "^27.0.6" + jest-util "^27.2.0" + jest-worker "^27.2.0" micromatch "^4.0.4" - node-abort-controller "^3.1.1" nullthrows "^1.1.1" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -metro-minify-terser@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-minify-terser/-/metro-minify-terser-0.80.5.tgz#6163fc920faad46153456fcd191ccc1ce0450946" - integrity sha512-S7oZLLcab6YXUT6jYFX/ZDMN7Fq6xBGGAG8liMFU1UljX6cTcEC2u+UIafYgCLrdVexp/+ClxrIetVPZ5LtL/g== +metro-hermes-compiler@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-hermes-compiler/-/metro-hermes-compiler-0.73.8.tgz#c522e2c97afc8bdc249755d88146a75720bc2498" + integrity sha512-2d7t+TEoQLk+jyXgBykmAtPPJK2B46DB3qUYIMKDFDDaKzCljrojyVuGgQq6SM1f95fe6HDAQ3K9ihTjeB90yw== + +metro-inspector-proxy@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-inspector-proxy/-/metro-inspector-proxy-0.73.8.tgz#67d5aadfc33fe97f61c716eb168db4bd5d0e3c96" + integrity sha512-F0QxwDTox0TDeXVRN7ZmI7BknBjPDVKQ1ZeKznFBiMa0SXiD1kzoksfpDbZ6hTEKrhVM9Ep0YQmC7avwZouOnA== + dependencies: + connect "^3.6.5" + debug "^2.2.0" + ws "^7.5.1" + yargs "^17.5.1" + +metro-minify-terser@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-minify-terser/-/metro-minify-terser-0.73.8.tgz#a0fe857d6aaf99cba3a2aef59ee06ac409682c6b" + integrity sha512-pnagyXAoMPhihWrHRIWqCxrP6EJ8Hfugv5RXBb6HbOANmwajn2uQuzeu18+dXaN1yPoDCMCgpg/UA4ibFN5jtQ== dependencies: terser "^5.15.0" -metro-resolver@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.80.5.tgz#3915be3b2bcf4f3e9e2f24bdde8d8c9ac26bb134" - integrity sha512-haJ/Hveio3zv/Fr4eXVdKzjUeHHDogYok7OpRqPSXGhTXisNXB+sLN7CpcUrCddFRUDLnVaqQOYwhYsFndgUwA== +metro-minify-uglify@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.73.8.tgz#b2e2430014c340479db4fc393a2ea4c5bad75ecd" + integrity sha512-9wZqKfraVfmtMXdOzRyan+6r1woQXqqa4KeXfVh7+Mxl+5+J0Lmw6EvTrWawsaOEpvpn32q9MfoHC1d8plDJwA== + dependencies: + uglify-es "^3.1.9" + +metro-react-native-babel-preset@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.5.tgz#9b92f1ebc2b3d96f511c45a03f8e35e0fc46cc19" + integrity sha512-Ej6J8ozWSs6nrh0nwX7hgX4oPXUai40ckah37cSLu8qeED2XiEtfLV1YksTLafFE8fX0EieiP97U97dkOGHP4w== + dependencies: + "@babel/core" "^7.14.0" + "@babel/plugin-proposal-async-generator-functions" "^7.0.0" + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" + "@babel/plugin-proposal-optional-chaining" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.0.0" + "@babel/plugin-syntax-export-default-from" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.2.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-async-to-generator" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-self" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-runtime" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + "@babel/plugin-transform-typescript" "^7.5.0" + "@babel/plugin-transform-unicode-regex" "^7.0.0" + "@babel/template" "^7.0.0" + react-refresh "^0.4.0" + +metro-react-native-babel-preset@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.8.tgz#04908f264f5d99c944ae20b5b11f659431328431" + integrity sha512-spNrcQJTbQntEIqJnCA6yL4S+dzV9fXCk7U+Rm7yJasZ4o4Frn7jP23isu7FlZIp1Azx1+6SbP7SgQM+IP5JgQ== + dependencies: + "@babel/core" "^7.20.0" + "@babel/plugin-proposal-async-generator-functions" "^7.0.0" + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" + "@babel/plugin-proposal-optional-chaining" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.0.0" + "@babel/plugin-syntax-export-default-from" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.18.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-async-to-generator" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-self" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-runtime" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + "@babel/plugin-transform-typescript" "^7.5.0" + "@babel/plugin-transform-unicode-regex" "^7.0.0" + "@babel/template" "^7.0.0" + react-refresh "^0.4.0" + +metro-react-native-babel-transformer@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.73.5.tgz#fb1d48cc73ce26371cf2a115f702b7bf3bb5516b" + integrity sha512-CZYgUguqFTzV9vSOZb60p8qlp31aWz8aBB6OqoZ2gJday+n/1k+Y0yy6VPr/tfXJheuQYVIXKvG1gMmUDyxt+Q== + dependencies: + "@babel/core" "^7.14.0" + babel-preset-fbjs "^3.4.0" + hermes-parser "0.8.0" + metro-babel-transformer "0.73.5" + metro-react-native-babel-preset "0.73.5" + metro-source-map "0.73.5" + nullthrows "^1.1.1" + +metro-react-native-babel-transformer@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.73.8.tgz#cbcd4b243216878431dc4311ce46f02a928e3991" + integrity sha512-oH/LCCJPauteAE28c0KJAiSrkV+1VJbU0PwA9UwaWnle+qevs/clpKQ8LrIr33YbBj4CiI1kFoVRuNRt5h4NFg== + dependencies: + "@babel/core" "^7.20.0" + babel-preset-fbjs "^3.4.0" + hermes-parser "0.8.0" + metro-babel-transformer "0.73.8" + metro-react-native-babel-preset "0.73.8" + metro-source-map "0.73.8" + nullthrows "^1.1.1" + +metro-resolver@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.73.8.tgz#65cc158575d130363296f66a33257c7971228640" + integrity sha512-GiBWont7/OgAftkkj2TiEp+Gf1PYZUk8xV4MbtnQjIKyy3MlGY3GbpMQ1BHih9GUQqlF0n9jsUlC2K5P0almXQ== + dependencies: + absolute-path "^0.0.0" + +metro-runtime@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.73.5.tgz#8c92c3947e97a8dede6347ba6a9844bfb8be8258" + integrity sha512-8QJOS7bhJmR6r/Gkki/qY9oX/DdxnLhS8FpdG1Xmm2hDeUVAug12ekWTiCRMu7d1CDVv1F8WvUz09QckZ0dO0g== + dependencies: + "@babel/runtime" "^7.0.0" + react-refresh "^0.4.0" -metro-runtime@0.80.5, metro-runtime@^0.80.0, metro-runtime@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.80.5.tgz#48ac4c732be195e0ebdefb5ac5d32c7da76305ad" - integrity sha512-L0syTWJUdWzfUmKgkScr6fSBVTh6QDr8eKEkRtn40OBd8LPagrJGySBboWSgbyn9eIb4ayW3Y347HxgXBSAjmg== +metro-runtime@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.73.8.tgz#dadae7c154fbbde24390cf7f7e7d934a2768cd18" + integrity sha512-M+Bg9M4EN5AEpJ8NkiUsawD75ifYvYfHi05w6QzHXaqOrsTeaRbbeLuOGCYxU2f/tPg17wQV97/rqUQzs9qEtA== dependencies: "@babel/runtime" "^7.0.0" + react-refresh "^0.4.0" + +metro-source-map@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.73.5.tgz#67e14bd1fcc1074b9623640ca311cd99d07426fa" + integrity sha512-58p3zNWgUrqYYjFJb0KkZ+uJurTL4oz7i5T7577b3kvTYuJ0eK4y7rtYf8EwOfMYxRAn/m20aH1Y1fHTsLUwjQ== + dependencies: + "@babel/traverse" "^7.14.0" + "@babel/types" "^7.20.0" + invariant "^2.2.4" + metro-symbolicate "0.73.5" + nullthrows "^1.1.1" + ob1 "0.73.5" + source-map "^0.5.6" + vlq "^1.0.0" -metro-source-map@0.80.5, metro-source-map@^0.80.0, metro-source-map@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.80.5.tgz#21acdc1d5417cf3009209555d84cbeb61de5d6d5" - integrity sha512-DwSF4l03mKPNqCtyQ6K23I43qzU1BViAXnuH81eYWdHglP+sDlPpY+/7rUahXEo6qXEHXfAJgVoo1sirbXbmsQ== +metro-source-map@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.73.8.tgz#5134174e3d43de26ad331b95f637944c6547d441" + integrity sha512-wozFXuBYMAy7b8BCYwC+qoXsvayVJBHWtSTlSLva99t+CoUSG9JO9kg1umzbOz28YYPxKmvb/wbnLMkHdas2cA== dependencies: "@babel/traverse" "^7.20.0" "@babel/types" "^7.20.0" invariant "^2.2.4" - metro-symbolicate "0.80.5" + metro-symbolicate "0.73.8" + nullthrows "^1.1.1" + ob1 "0.73.8" + source-map "^0.5.6" + vlq "^1.0.0" + +metro-symbolicate@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.73.5.tgz#8de118be231decd55c8c70ed54deb308fdffceda" + integrity sha512-aIC8sDlaEdtn0dTt+64IFZFEATatFx3GtzRbJi0+jJx47RjDRiuCt9fzmTMLuadWwnbFK9ZfVMuWEXM9sdtQ7w== + dependencies: + invariant "^2.2.4" + metro-source-map "0.73.5" nullthrows "^1.1.1" - ob1 "0.80.5" source-map "^0.5.6" + through2 "^2.0.1" vlq "^1.0.0" -metro-symbolicate@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.80.5.tgz#7c253a8e05e2a8380753373ab30705d6e81094a5" - integrity sha512-IsM4mTYvmo9JvIqwEkCZ5+YeDVPST78Q17ZgljfLdHLSpIivOHp9oVoiwQ/YGbLx0xRHRIS/tKiXueWBnj3UWA== +metro-symbolicate@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.73.8.tgz#96920f607bce484283d822ee5fe18d932f69c03d" + integrity sha512-xkBAcceYYp0GGdCCuMzkCF1ejHsd0lYlbKBkjSRgM0Nlj80VapPaSwumYoAvSaDxcbkvS7/sCjURGp5DsSFgRQ== dependencies: invariant "^2.2.4" - metro-source-map "0.80.5" + metro-source-map "0.73.8" nullthrows "^1.1.1" source-map "^0.5.6" through2 "^2.0.1" vlq "^1.0.0" -metro-transform-plugins@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-transform-plugins/-/metro-transform-plugins-0.80.5.tgz#ef90d8d6522b042b832a571381f1a5a9c2c72adf" - integrity sha512-7IdlTqK/k5+qE3RvIU5QdCJUPk4tHWEqgVuYZu8exeW+s6qOJ66hGIJjXY/P7ccucqF+D4nsbAAW5unkoUdS6g== +metro-transform-plugins@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-transform-plugins/-/metro-transform-plugins-0.73.8.tgz#07be7fd94a448ea1b245ab02ce7d277d757f9a32" + integrity sha512-IxjlnB5eA49M0WfvPEzvRikK3Rr6bECUUfcZt/rWpSphq/mttgyLYcHQ+VTZZl0zHolC3cTLwgoDod4IIJBn1A== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.0" @@ -4012,28 +3998,29 @@ metro-transform-plugins@0.80.5: "@babel/traverse" "^7.20.0" nullthrows "^1.1.1" -metro-transform-worker@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-transform-worker/-/metro-transform-worker-0.80.5.tgz#45b78093f5925cbbf1ecf2695114469dd49f5169" - integrity sha512-Q1oM7hfP+RBgAtzRFBDjPhArELUJF8iRCZ8OidqCpYzQJVGuJZ7InSnIf3hn1JyqiUQwv2f1LXBO78i2rAjzyA== +metro-transform-worker@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-transform-worker/-/metro-transform-worker-0.73.8.tgz#701a006c2b4d93f1bb24802f3f2834c963153db9" + integrity sha512-B8kR6lmcvyG4UFSF2QDfr/eEnWJvg0ZadooF8Dg6m/3JSm9OAqfSoC0YrWqAuvtWImNDnbeKWN7/+ns44Hv6tg== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.0" "@babel/parser" "^7.20.0" "@babel/types" "^7.20.0" - metro "0.80.5" - metro-babel-transformer "0.80.5" - metro-cache "0.80.5" - metro-cache-key "0.80.5" - metro-minify-terser "0.80.5" - metro-source-map "0.80.5" - metro-transform-plugins "0.80.5" + babel-preset-fbjs "^3.4.0" + metro "0.73.8" + metro-babel-transformer "0.73.8" + metro-cache "0.73.8" + metro-cache-key "0.73.8" + metro-hermes-compiler "0.73.8" + metro-source-map "0.73.8" + metro-transform-plugins "0.73.8" nullthrows "^1.1.1" -metro@0.80.5, metro@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro/-/metro-0.80.5.tgz#94cd36df2eab434f050314a6d31529e8dc1b26df" - integrity sha512-OE/CGbOgbi8BlTN1QqJgKOBaC27dS0JBQw473JcivrpgVnqIsluROA7AavEaTVUrB9wPUZvoNVDROn5uiM2jfw== +metro@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.73.8.tgz#25f014e4064eb34a4833c316e0a9094528061a8c" + integrity sha512-2EMJME9w5x7Uzn+DnQ4hzWr33u/aASaOBGdpf4lxbrlk6/vl4UBfX1sru6KU535qc/0Z1BMt4Vq9qsP3ZGFmWg== dependencies: "@babel/code-frame" "^7.0.0" "@babel/core" "^7.20.0" @@ -4042,7 +4029,9 @@ metro@0.80.5, metro@^0.80.3: "@babel/template" "^7.0.0" "@babel/traverse" "^7.20.0" "@babel/types" "^7.20.0" + absolute-path "^0.0.0" accepts "^1.3.7" + async "^3.2.2" chalk "^4.0.0" ci-info "^2.0.0" connect "^3.6.5" @@ -4050,24 +4039,28 @@ metro@0.80.5, metro@^0.80.3: denodeify "^1.2.1" error-stack-parser "^2.0.6" graceful-fs "^4.2.4" - hermes-parser "0.18.2" - image-size "^1.0.2" + hermes-parser "0.8.0" + image-size "^0.6.0" invariant "^2.2.4" - jest-worker "^29.6.3" - jsc-safe-url "^0.2.2" + jest-worker "^27.2.0" lodash.throttle "^4.1.1" - metro-babel-transformer "0.80.5" - metro-cache "0.80.5" - metro-cache-key "0.80.5" - metro-config "0.80.5" - metro-core "0.80.5" - metro-file-map "0.80.5" - metro-resolver "0.80.5" - metro-runtime "0.80.5" - metro-source-map "0.80.5" - metro-symbolicate "0.80.5" - metro-transform-plugins "0.80.5" - metro-transform-worker "0.80.5" + metro-babel-transformer "0.73.8" + metro-cache "0.73.8" + metro-cache-key "0.73.8" + metro-config "0.73.8" + metro-core "0.73.8" + metro-file-map "0.73.8" + metro-hermes-compiler "0.73.8" + metro-inspector-proxy "0.73.8" + metro-minify-terser "0.73.8" + metro-minify-uglify "0.73.8" + metro-react-native-babel-preset "0.73.8" + metro-resolver "0.73.8" + metro-runtime "0.73.8" + metro-source-map "0.73.8" + metro-symbolicate "0.73.8" + metro-transform-plugins "0.73.8" + metro-transform-worker "0.73.8" mime-types "^2.1.27" node-fetch "^2.2.0" nullthrows "^1.1.1" @@ -4075,9 +4068,29 @@ metro@0.80.5, metro@^0.80.3: serialize-error "^2.1.0" source-map "^0.5.6" strip-ansi "^6.0.0" + temp "0.8.3" throat "^5.0.0" ws "^7.5.1" - yargs "^17.6.2" + yargs "^17.5.1" + +micromatch@^3.1.10: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" micromatch@^4.0.4: version "4.0.5" @@ -4126,18 +4139,19 @@ minimatch@^3.0.2, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== - dependencies: - brace-expansion "^2.0.1" - minimist@^1.2.6: 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" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + mkdirp@^0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -4145,16 +4159,6 @@ mkdirp@^0.5.1: dependencies: minimist "^1.2.6" -mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - -module-details-from-path@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b" - integrity sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A== - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -4175,6 +4179,23 @@ mustache@^4.0.1: resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + negotiator@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" @@ -4195,11 +4216,6 @@ nocache@^3.0.1: resolved "https://registry.yarnpkg.com/nocache/-/nocache-3.0.4.tgz#5b37a56ec6e09fc7d401dceaed2eab40c8bfdf79" integrity sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw== -node-abort-controller@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" - integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== - node-dir@^0.1.17: version "0.1.17" resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" @@ -4208,9 +4224,9 @@ node-dir@^0.1.17: minimatch "^3.0.2" node-fetch@^2.2.0, node-fetch@^2.6.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" - integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + 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" @@ -4219,10 +4235,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.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +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" @@ -4241,7 +4257,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -4253,16 +4269,44 @@ nullthrows@^1.1.1: resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== -ob1@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.80.5.tgz#101f5257f7e6b75599dcd55c20bfcf2a4016c37c" - integrity sha512-zYDMnnNrFi/1Tqh0vo3PE4p97Tpl9/4MP2k2ECvkbLOZzQuAYZJLTUYVLZb7hJhbhjT+JJxAwBGS8iu5hCSd1w== +ob1@0.73.5: + version "0.73.5" + resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.73.5.tgz#b80dc4a6f787044e3d8afde3c2d034ae23d05a86" + integrity sha512-MxQH/rCq9/COvgTQbjCldArmesGEidZVVQIn4vDUJvJJ8uMphXOTCBsgWTief2ugvb0WUimIaslKSA+qryFjjQ== + +ob1@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.73.8.tgz#c569f1a15ce2d04da6fd70293ad44b5a93b11978" + integrity sha512-1F7j+jzD+edS6ohQP7Vg5f3yiIk5i3x1uLrNIHOmLHWzWK1t3zrDpjnoXghccdVlsU+UjbyURnDynm4p0GgXeA== object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + on-finished@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -4296,7 +4340,7 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -onetime@^5.1.0, onetime@^5.1.2: +onetime@^5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== @@ -4310,14 +4354,6 @@ open@^6.2.0: dependencies: is-wsl "^1.1.0" -open@^7.0.3: - version "7.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" @@ -4354,6 +4390,11 @@ os-locale@^5.0.0: lcid "^3.0.0" mem "^5.0.0" +os-tmpdir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== + p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" @@ -4422,6 +4463,11 @@ parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -4484,10 +4530,10 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" - integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== +pirates@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== pkg-dir@^3.0.0: version "3.0.0" @@ -4496,12 +4542,22 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== +pkg-dir@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz#a02d6aebe6ba133a928f74aec20bafdfe6b8e760" + integrity sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA== dependencies: - find-up "^3.0.0" + find-up "^5.0.0" + +pod-install@0.1.38: + version "0.1.38" + resolved "https://registry.yarnpkg.com/pod-install/-/pod-install-0.1.38.tgz#1c16a800a5fc1abea0cafcc0e190f376368c76ab" + integrity sha512-NeDWGigjJRriOIKBOvpW2/tK2tYLfyUT7ia6C6L+oarCAhBNP+IGODWdU+GEAqvfsseqOApcFclpXAJTL0UPzA== + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== pretty-format@^26.5.2, pretty-format@^26.6.2: version "26.6.2" @@ -4513,12 +4569,12 @@ pretty-format@^26.5.2, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" - integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== +pretty-format@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a" + integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw== dependencies: - "@jest/schemas" "^29.6.3" + "@jest/schemas" "^29.4.3" ansi-styles "^5.0.0" react-is "^18.0.0" @@ -4534,7 +4590,7 @@ promise@^8.3.0: dependencies: asap "~2.0.6" -prompts@^2.4.1, prompts@^2.4.2: +prompts@^2.4.0, prompts@^2.4.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== @@ -4542,7 +4598,7 @@ prompts@^2.4.1, prompts@^2.4.2: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.7.2, prop-types@^15.8.1: +prop-types@*, prop-types@^15.7.2: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -4564,22 +4620,15 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -queue@6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.2.tgz#b91525283e2315c7553d2efa18d83e76432fed65" - integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA== - dependencies: - inherits "~2.0.3" - range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -react-devtools-core@^4.27.7: - version "4.28.5" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.28.5.tgz#c8442b91f068cdf0c899c543907f7f27d79c2508" - integrity sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA== +react-devtools-core@^4.26.1: + version "4.27.2" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.27.2.tgz#d20fc57e258c656eedabafc2c851d38b33583148" + integrity sha512-8SzmIkpO87alD7Xr6gWIEa1jHkMjawOZ+6egjazlnjB4UUcbnzGDf/vBJ4BzGuWWEM+pzrxuzsPpcMqlQkYK2g== dependencies: shell-quote "^1.6.1" ws "^7" @@ -4599,127 +4648,136 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-native-paper@^5.11.6: - version "5.12.3" - resolved "https://registry.yarnpkg.com/react-native-paper/-/react-native-paper-5.12.3.tgz#d583119722ebbfbb7fe40400181d63748cca3683" - integrity sha512-nH1e1pGPE/aOE5YR2GRX7CfMHFA9cAfrAfgCtwL4amJPDZCoVjc5yt2VDiUE1rT+JUfk0qdICMP3UggxvjMgug== +react-native-codegen@^0.71.3, react-native-codegen@^0.71.5: + version "0.71.5" + resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.71.5.tgz#454a42a891cd4ca5fc436440d301044dc1349c14" + integrity sha512-rfsuc0zkuUuMjFnrT55I1mDZ+pBRp2zAiRwxck3m6qeGJBGK5OV5JH66eDQ4aa+3m0of316CqrJDRzVlYufzIg== + dependencies: + "@babel/parser" "^7.14.0" + flow-parser "^0.185.0" + jscodeshift "^0.13.1" + nullthrows "^1.1.1" + +react-native-gradle-plugin@^0.71.12, react-native-gradle-plugin@^0.71.16: + version "0.71.16" + resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.16.tgz#822bb0c680e03b5df5aa65f2e5ffc2bc2930854a" + integrity sha512-H2BjG2zk7B7Wii9sXvd9qhCVRQYDAHSWdMw9tscmZBqSP62DkIWEQSk4/B2GhQ4aK9ydVXgtqR6tBeg3yy8TSA== + +react-native-paper@^5.4.1: + version "5.4.1" + resolved "https://registry.yarnpkg.com/react-native-paper/-/react-native-paper-5.4.1.tgz#6731ef573464c4ef00b0a046db5771720a34d73a" + integrity sha512-eh2fh/dr+j/8V9FDHGhc0/tyXjyYSJLBrSGx/4lr2qPK+92QvH2mTNwFc280NiehCkfRSW2u3LMgUuyrkkQjjw== dependencies: - "@callstack/react-theme-provider" "^3.0.9" + "@callstack/react-theme-provider" "^3.0.8" color "^3.1.2" use-latest-callback "^0.1.5" -"react-native-permissions@link:..": - version "0.0.0" - uid "" +react-native-permissions@../: + version "3.7.3" + dependencies: + picocolors "^1.0.0" + pkg-dir "^5.0.0" -react-native-safe-area-context@^4.8.2: - version "4.8.2" - resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.8.2.tgz#e6b3d8acf3c6afcb4b5db03a97f9c37df7668f65" - integrity sha512-ffUOv8BJQ6RqO3nLml5gxJ6ab3EestPiyWekxdzO/1MQ7NF8fW1Mzh1C5QE9yq573Xefnc7FuzGXjtesZGv7cQ== +react-native-safe-area-context@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.5.0.tgz#9208313236e8f49e1920ac1e2a2c975f03aed284" + integrity sha512-0WORnk9SkREGUg2V7jHZbuN5x4vcxj/1B0QOcXJjdYWrzZHgLcUzYWWIUecUPJh747Mwjt/42RZDOaFn3L8kPQ== -react-native-vector-icons@^10.0.3: - version "10.0.3" - resolved "https://registry.yarnpkg.com/react-native-vector-icons/-/react-native-vector-icons-10.0.3.tgz#369824a3b17994b2cd65edbaa32dbf9540d49678" - integrity sha512-ZgVlV5AdQgnPHHvBEihGf2xwyziT1acpXV1U+WfCgCv3lcEeCRsmwAsBU+kUSNsU+8TcWVsX04kdI6qUaS8D7w== +react-native-vector-icons@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/react-native-vector-icons/-/react-native-vector-icons-9.2.0.tgz#3c0c82e95defd274d56363cbe8fead8d53167ebd" + integrity sha512-wKYLaFuQST/chH3AJRjmOLoLy3JEs1JR6zMNgTaemFpNoXs0ztRnTxcxFD9xhX7cJe1/zoN5BpQYe7kL0m5yyA== dependencies: prop-types "^15.7.2" yargs "^16.1.1" -react-native-windows@0.73.2: - version "0.73.2" - resolved "https://registry.yarnpkg.com/react-native-windows/-/react-native-windows-0.73.2.tgz#0d7d92637c590bf855fc73e364c349f526a9581b" - integrity sha512-bcCx3T7kjqbjBMwOBqJtIQTwBrsvrKgd/0nU62/3HeALG7B3mls8LiQ1PBZSg/T4mjvMCc8mFC8Z1qHwiR9xzw== +react-native-windows@0.71.3: + version "0.71.3" + resolved "https://registry.yarnpkg.com/react-native-windows/-/react-native-windows-0.71.3.tgz#8c9b6606ce2d2d417fd9e7ee7d8cd59ef1ea1c27" + integrity sha512-EcUcDKN+05nojbcTo6MjGaO0FlVsNE6L3rfoCz3234fuQC7DPe74gLgIXWfQoVDCqs0qibwWT6viupXiPxPaxg== dependencies: "@babel/runtime" "^7.0.0" - "@jest/create-cache-key-function" "^29.6.3" - "@react-native-community/cli" "12.1.1" - "@react-native-community/cli-platform-android" "12.1.1" - "@react-native-community/cli-platform-ios" "12.1.1" - "@react-native-windows/cli" "0.73.0" + "@jest/create-cache-key-function" "^29.2.1" + "@react-native-community/cli" "10.0.0" + "@react-native-community/cli-platform-android" "10.0.0" + "@react-native-community/cli-platform-ios" "10.0.0" + "@react-native-windows/cli" "0.71.2" "@react-native/assets" "1.0.0" - "@react-native/assets-registry" "^0.73.1" - "@react-native/codegen" "^0.73.2" - "@react-native/community-cli-plugin" "^0.73.10" - "@react-native/gradle-plugin" "^0.73.4" - "@react-native/js-polyfills" "^0.73.1" - "@react-native/normalize-colors" "^0.73.2" - "@react-native/virtualized-lists" "^0.73.3" + "@react-native/normalize-color" "2.1.0" + "@react-native/polyfills" "2.0.0" abort-controller "^3.0.0" anser "^1.4.9" - ansi-regex "^5.0.0" - base64-js "^1.5.1" - deprecated-react-native-prop-types "^5.0.0" + base64-js "^1.1.2" + deprecated-react-native-prop-types "^3.0.1" event-target-shim "^5.0.1" - flow-enums-runtime "^0.0.6" invariant "^2.2.4" - jest-environment-node "^29.6.3" - jsc-android "^250231.0.0" + jest-environment-node "^29.2.1" + jsc-android "^250230.2.1" memoize-one "^5.0.0" - metro-runtime "^0.80.0" - metro-source-map "^0.80.0" + metro-react-native-babel-transformer "0.73.5" + metro-runtime "0.73.5" + metro-source-map "0.73.5" mkdirp "^0.5.1" nullthrows "^1.1.1" pretty-format "^26.5.2" promise "^8.3.0" - react-devtools-core "^4.27.7" - react-refresh "^0.14.0" + react-devtools-core "^4.26.1" + react-native-codegen "^0.71.3" + react-native-gradle-plugin "^0.71.12" + react-refresh "^0.4.0" react-shallow-renderer "^16.15.0" regenerator-runtime "^0.13.2" - scheduler "0.24.0-canary-efb381bbf-20230505" + scheduler "^0.23.0" source-map-support "^0.5.19" - stacktrace-parser "^0.1.10" + stacktrace-parser "^0.1.3" + use-sync-external-store "^1.0.0" whatwg-fetch "^3.0.0" ws "^6.2.2" - yargs "^17.6.2" - -react-native@0.73.4: - version "0.73.4" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.73.4.tgz#81e07d4e7b6308c4649d5fa24038c0e87b17f2e1" - integrity sha512-VtS+Yr6OOTIuJGDECIYWzNU8QpJjASQYvMtfa/Hvm/2/h5GdB6W9H9TOmh13x07Lj4AOhNMx3XSsz6TdrO4jIg== - dependencies: - "@jest/create-cache-key-function" "^29.6.3" - "@react-native-community/cli" "12.3.2" - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-platform-ios" "12.3.2" - "@react-native/assets-registry" "0.73.1" - "@react-native/codegen" "0.73.3" - "@react-native/community-cli-plugin" "0.73.16" - "@react-native/gradle-plugin" "0.73.4" - "@react-native/js-polyfills" "0.73.1" - "@react-native/normalize-colors" "0.73.2" - "@react-native/virtualized-lists" "0.73.4" + +react-native@0.71.4: + version "0.71.4" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.4.tgz#f03f600efe68f745d19454ab17f9c1a9ef304790" + integrity sha512-3hSYqvWrOdKhpV3HpEKp1/CkWx8Sr/N/miCrmUIAsVTSJUR7JW0VvIsrV9urDhUj/s6v2WF4n7qIEEJsmTCrPw== + dependencies: + "@jest/create-cache-key-function" "^29.2.1" + "@react-native-community/cli" "10.2.0" + "@react-native-community/cli-platform-android" "10.2.0" + "@react-native-community/cli-platform-ios" "10.2.0" + "@react-native/assets" "1.0.0" + "@react-native/normalize-color" "2.1.0" + "@react-native/polyfills" "2.0.0" abort-controller "^3.0.0" anser "^1.4.9" - ansi-regex "^5.0.0" - base64-js "^1.5.1" - chalk "^4.0.0" - deprecated-react-native-prop-types "^5.0.0" + base64-js "^1.1.2" + deprecated-react-native-prop-types "^3.0.1" event-target-shim "^5.0.1" - flow-enums-runtime "^0.0.6" invariant "^2.2.4" - jest-environment-node "^29.6.3" + jest-environment-node "^29.2.1" jsc-android "^250231.0.0" memoize-one "^5.0.0" - metro-runtime "^0.80.3" - metro-source-map "^0.80.3" + metro-react-native-babel-transformer "0.73.8" + metro-runtime "0.73.8" + metro-source-map "0.73.8" mkdirp "^0.5.1" nullthrows "^1.1.1" pretty-format "^26.5.2" promise "^8.3.0" - react-devtools-core "^4.27.7" - react-refresh "^0.14.0" + react-devtools-core "^4.26.1" + react-native-codegen "^0.71.5" + react-native-gradle-plugin "^0.71.16" + react-refresh "^0.4.0" react-shallow-renderer "^16.15.0" regenerator-runtime "^0.13.2" - scheduler "0.24.0-canary-efb381bbf-20230505" - stacktrace-parser "^0.1.10" + scheduler "^0.23.0" + stacktrace-parser "^0.1.3" + use-sync-external-store "^1.0.0" whatwg-fetch "^3.0.0" ws "^6.2.2" - yargs "^17.6.2" -react-refresh@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e" - integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== +react-refresh@^0.4.0: + version "0.4.3" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.4.3.tgz#966f1750c191672e76e16c2efa569150cc73ab53" + integrity sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA== react-shallow-renderer@^16.15.0: version "16.15.0" @@ -4763,12 +4821,12 @@ readline@^1.3.0: resolved "https://registry.yarnpkg.com/readline/-/readline-1.3.0.tgz#c580d77ef2cfc8752b132498060dc9793a7ac01c" integrity sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg== -recast@^0.21.0: - version "0.21.5" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.21.5.tgz#e8cd22bb51bcd6130e54f87955d33a2b2e57b495" - integrity sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg== +recast@^0.20.4: + version "0.20.5" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" + integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== dependencies: - ast-types "0.15.2" + ast-types "0.14.2" esprima "~4.0.0" source-map "~0.6.1" tslib "^2.0.1" @@ -4781,9 +4839,9 @@ rechoir@^0.6.2: resolve "^1.1.6" regenerate-unicode-properties@^10.1.0: - version "10.1.1" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" - integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== + 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" @@ -4792,23 +4850,26 @@ 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.2: +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.14.0: - version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - -regenerator-transform@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" - integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== +regenerator-transform@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" + integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== dependencies: "@babel/runtime" "^7.8.4" +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + regexpu-core@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" @@ -4828,41 +4889,42 @@ regjsparser@^0.9.1: dependencies: jsesc "~0.5.0" +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== -require-in-the-middle@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/require-in-the-middle/-/require-in-the-middle-7.2.0.tgz#b539de8f00955444dc8aed95e17c69b0a4f10fcf" - integrity sha512-3TLx5TGyAY6AOqLBoXmHkNql0HIf2RGbuMgCDT2WO/uGVAPJs6h7Kl+bN6TIZGd9bWhWPwnDnTHGtW8Iu77sdw== - dependencies: - debug "^4.1.1" - module-details-from-path "^1.0.3" - resolve "^1.22.1" - require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== -reselect@^4.1.7: - version "4.1.8" - resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524" - integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== - resolve-from@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw== -resolve@^1.1.6, resolve@^1.14.2, resolve@^1.22.1: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + +resolve@^1.1.6, resolve@^1.14.2: + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: - is-core-module "^2.13.0" + is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" @@ -4882,6 +4944,11 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -4894,6 +4961,11 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@~2.2.6: + version "2.2.8" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" + integrity sha512-R5KMKHnPAQaZMqLOsyuyUmcIjSeDm+73eoqQpaXA7AZ22BL+6C+1mcUscgOsNd8WVlJuvlgAPsegcx7pjlV0Dg== + rimraf@~2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -4918,27 +4990,34 @@ safe-buffer@~5.2.0: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -scheduler@0.24.0-canary-efb381bbf-20230505: - version "0.24.0-canary-efb381bbf-20230505" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.24.0-canary-efb381bbf-20230505.tgz#5dddc60e29f91cd7f8b983d7ce4a99c2202d178f" - integrity sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA== +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + +scheduler@^0.23.0: + version "0.23.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== dependencies: loose-envify "^1.1.0" semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.3.2, semver@^7.5.1, semver@^7.5.2, semver@^7.5.3: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== +semver@^7.3.2: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" @@ -4981,6 +5060,16 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" @@ -5018,9 +5107,9 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shell-quote@^1.6.1, shell-quote@^1.7.3: - version "1.8.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" - integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== + 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== shelljs@^0.8.4: version "0.8.5" @@ -5031,12 +5120,12 @@ shelljs@^0.8.4: interpret "^1.0.0" rechoir "^0.6.2" -shimmer@^1.1.0, shimmer@^1.2.0, shimmer@^1.2.1: +shimmer@^1.1.0, shimmer@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337" integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -5072,6 +5161,47 @@ slice-ansi@^2.0.0: astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + source-map-support@^0.5.16, source-map-support@^0.5.19, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" @@ -5080,6 +5210,11 @@ source-map-support@^0.5.16, source-map-support@^0.5.19, source-map-support@~0.5. buffer-from "^1.0.0" source-map "^0.6.0" +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -5095,6 +5230,13 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -5117,13 +5259,21 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== -stacktrace-parser@^0.1.10: +stacktrace-parser@^0.1.3: version "0.1.10" resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz#29fb0cae4e0d0b85155879402857a1639eb6051a" integrity sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg== dependencies: type-fest "^0.7.1" +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -5222,10 +5372,13 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -temp-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" - integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== +temp@0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" + integrity sha512-jtnWJs6B1cZlHs9wPG7BrowKxZw/rf6+UpGAkr8AaYmiTyTO7zQlLoST8zx/8TcUPnZmeBoB+H8ARuHZaSijVw== + dependencies: + os-tmpdir "^1.0.0" + rimraf "~2.2.6" temp@^0.8.4: version "0.8.4" @@ -5235,12 +5388,12 @@ temp@^0.8.4: rimraf "~2.6.2" terser@^5.15.0: - version "5.27.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.27.0.tgz#70108689d9ab25fef61c4e93e808e9fd092bf20c" - integrity sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A== + version "5.16.6" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.6.tgz#f6c7a14a378ee0630fbe3ac8d1f41b4681109533" + integrity sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg== dependencies: - "@jridgewell/source-map" "^0.3.3" - acorn "^8.8.2" + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" commander "^2.20.0" source-map-support "~0.5.20" @@ -5267,6 +5420,21 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -5274,6 +5442,16 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -5285,9 +5463,9 @@ tr46@~0.0.3: integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== tslib@^2.0.1, tslib@^2.2.0: - version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== type-detect@4.0.8: version "4.0.8" @@ -5299,15 +5477,18 @@ type-fest@^0.7.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== -typescript@^5.3.3: - version "5.3.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37" - integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw== +typescript@^4.9.5: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== -undici-types@~5.26.4: - version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" - integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +uglify-es@^3.1.9: + version "3.3.9" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" + integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== + dependencies: + commander "~2.13.0" + source-map "~0.6.1" unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" @@ -5332,6 +5513,16 @@ unicode-property-aliases-ecmascript@^2.0.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" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -5342,18 +5533,41 @@ unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +update-browserslist-db@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: escalade "^3.1.1" picocolors "^1.0.0" +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + use-latest-callback@^0.1.5: - version "0.1.9" - resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.9.tgz#10191dc54257e65a8e52322127643a8940271e2a" - integrity sha512-CL/29uS74AwreI/f2oz2hLTW7ZqVeV5+gxFeGudzQrgkCytrHw33G4KbnQOrRlAEzzAFXi7dDLMC9zhWcVpzmw== + version "0.1.5" + resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.5.tgz#a4a836c08fa72f6608730b5b8f4bbd9c57c04f51" + integrity sha512-HtHatS2U4/h32NlkhupDsPlrbiD27gSH5swBdtXbCAlc6pfOFzaj0FehW/FO12rx8j2Vy4/lJScCiJyM01E+bQ== + +use-sync-external-store@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" + integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== username@^5.1.0: version "5.1.0" @@ -5413,9 +5627,9 @@ webidl-conversions@^3.0.0: integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-fetch@^3.0.0: - version "3.6.20" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz#580ce6d791facec91d37c72890995a0b48d31c70" - integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== + version "3.6.2" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" + integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== whatwg-url@^5.0.0: version "5.0.0" @@ -5426,9 +5640,9 @@ whatwg-url@^5.0.0: webidl-conversions "^3.0.0" which-module@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" - integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== which@^1.2.9: version "1.3.1" @@ -5537,11 +5751,6 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^2.2.1: - version "2.3.4" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2" - integrity sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA== - yargs-parser@^18.1.2: version "18.1.3" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" @@ -5590,10 +5799,10 @@ yargs@^16.1.1, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.6.2: - version "17.7.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" - integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== +yargs@^17.5.1: + version "17.7.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" + integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== dependencies: cliui "^8.0.1" escalade "^3.1.1" diff --git a/ios/AppTrackingTransparency/Permission-AppTrackingTransparency.podspec b/ios/AppTrackingTransparency/Permission-AppTrackingTransparency.podspec new file mode 100644 index 00000000..52af38e7 --- /dev/null +++ b/ios/AppTrackingTransparency/Permission-AppTrackingTransparency.podspec @@ -0,0 +1,21 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-AppTrackingTransparency" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" + s.frameworks = "AppTrackingTransparency" +end diff --git a/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.h b/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.h index 541e51e0..69f8999d 100644 --- a/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.h +++ b/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerAppTrackingTransparency : NSObject diff --git a/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.mm b/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.m similarity index 70% rename from ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.mm rename to ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.m index e9476d27..c492b3f8 100644 --- a/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.mm +++ b/ios/AppTrackingTransparency/RNPermissionHandlerAppTrackingTransparency.m @@ -1,11 +1,12 @@ #import "RNPermissionHandlerAppTrackingTransparency.h" -#import -#import +@import AppTrackingTransparency; +@import AdSupport; @interface RNPermissionHandlerAppTrackingTransparency() @property (nonatomic, strong) void (^resolve)(RNPermissionStatus status); +@property (nonatomic, strong) void (^reject)(NSError *error); @end @@ -19,23 +20,19 @@ + (NSString * _Nonnull)handlerUniqueId { return @"ios.permission.APP_TRACKING_TRANSPARENCY"; } -- (RNPermissionStatus)convertStatus:(ATTrackingManagerAuthorizationStatus)status API_AVAILABLE(ios(14)){ - switch (status) { - case ATTrackingManagerAuthorizationStatusNotDetermined: - return RNPermissionStatusNotDetermined; - case ATTrackingManagerAuthorizationStatusRestricted: - return RNPermissionStatusRestricted; - case ATTrackingManagerAuthorizationStatusDenied: - return RNPermissionStatusDenied; - case ATTrackingManagerAuthorizationStatusAuthorized: - return RNPermissionStatusAuthorized; - } -} - - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { if (@available(iOS 14.0, *)) { - resolve([self convertStatus:[ATTrackingManager trackingAuthorizationStatus]]); + switch ([ATTrackingManager trackingAuthorizationStatus]) { + case ATTrackingManagerAuthorizationStatusNotDetermined: + return resolve(RNPermissionStatusNotDetermined); + case ATTrackingManagerAuthorizationStatusRestricted: + return resolve(RNPermissionStatusRestricted); + case ATTrackingManagerAuthorizationStatusDenied: + return resolve(RNPermissionStatusDenied); + case ATTrackingManagerAuthorizationStatusAuthorized: + return resolve(RNPermissionStatusAuthorized); + } } else { if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) { resolve(RNPermissionStatusAuthorized); @@ -53,11 +50,12 @@ - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve } if ([[UIApplication sharedApplication] applicationState] == UIApplicationStateActive) { - [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { - resolve([self convertStatus:status]); + [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(__unused ATTrackingManagerAuthorizationStatus status) { + [self checkWithResolver:resolve rejecter:reject]; }]; } else { _resolve = resolve; + _reject = reject; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onApplicationDidBecomeActive:) @@ -75,8 +73,8 @@ - (void)onApplicationDidBecomeActive:(__unused NSNotification *)notification { object:nil]; if (@available(iOS 14.0, *)) { - [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { - self->_resolve([self convertStatus:status]); + [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(__unused ATTrackingManagerAuthorizationStatus status) { + [self checkWithResolver:self->_resolve rejecter:self->_reject]; }]; } } diff --git a/ios/Bluetooth/RNPermissionHandlerBluetooth.h b/ios/Bluetooth/RNPermissionHandlerBluetooth.h deleted file mode 100644 index 36acc6f8..00000000 --- a/ios/Bluetooth/RNPermissionHandlerBluetooth.h +++ /dev/null @@ -1,5 +0,0 @@ -#import "RNPermissions.h" - -@interface RNPermissionHandlerBluetooth : NSObject - -@end diff --git a/ios/BluetoothPeripheral/Permission-BluetoothPeripheral.podspec b/ios/BluetoothPeripheral/Permission-BluetoothPeripheral.podspec new file mode 100644 index 00000000..ceae927d --- /dev/null +++ b/ios/BluetoothPeripheral/Permission-BluetoothPeripheral.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-BluetoothPeripheral" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.h b/ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.h new file mode 100644 index 00000000..b1a2aa85 --- /dev/null +++ b/ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.h @@ -0,0 +1,5 @@ +#import "RNPermissionsHelper.h" + +@interface RNPermissionHandlerBluetoothPeripheral : NSObject + +@end diff --git a/ios/Bluetooth/RNPermissionHandlerBluetooth.mm b/ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.m similarity index 91% rename from ios/Bluetooth/RNPermissionHandlerBluetooth.mm rename to ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.m index 88f766c0..195e1592 100644 --- a/ios/Bluetooth/RNPermissionHandlerBluetooth.mm +++ b/ios/BluetoothPeripheral/RNPermissionHandlerBluetoothPeripheral.m @@ -1,8 +1,8 @@ -#import "RNPermissionHandlerBluetooth.h" +#import "RNPermissionHandlerBluetoothPeripheral.h" -#import +@import CoreBluetooth; -@interface RNPermissionHandlerBluetooth() +@interface RNPermissionHandlerBluetoothPeripheral() @property (nonatomic, strong) CBPeripheralManager* manager; @property (nonatomic, strong) void (^resolve)(RNPermissionStatus status); @@ -10,17 +10,17 @@ @interface RNPermissionHandlerBluetooth() @end -@implementation RNPermissionHandlerBluetooth +@implementation RNPermissionHandlerBluetoothPeripheral + (NSArray * _Nonnull)usageDescriptionKeys { return @[ - @"NSBluetoothAlwaysUsageDescription", @"NSBluetoothPeripheralUsageDescription", + @"NSBluetoothAlwaysUsageDescription", ]; } + (NSString * _Nonnull)handlerUniqueId { - return @"ios.permission.BLUETOOTH"; + return @"ios.permission.BLUETOOTH_PERIPHERAL"; } - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve diff --git a/ios/Calendars/Permission-Calendars.podspec b/ios/Calendars/Permission-Calendars.podspec new file mode 100644 index 00000000..b023c34c --- /dev/null +++ b/ios/Calendars/Permission-Calendars.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Calendars" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Calendars/RNPermissionHandlerCalendars.h b/ios/Calendars/RNPermissionHandlerCalendars.h index f72e4499..b299d11a 100644 --- a/ios/Calendars/RNPermissionHandlerCalendars.h +++ b/ios/Calendars/RNPermissionHandlerCalendars.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerCalendars : NSObject diff --git a/ios/Calendars/RNPermissionHandlerCalendars.mm b/ios/Calendars/RNPermissionHandlerCalendars.m similarity index 67% rename from ios/Calendars/RNPermissionHandlerCalendars.mm rename to ios/Calendars/RNPermissionHandlerCalendars.m index 85092d5f..f49c8e28 100644 --- a/ios/Calendars/RNPermissionHandlerCalendars.mm +++ b/ios/Calendars/RNPermissionHandlerCalendars.m @@ -1,11 +1,11 @@ #import "RNPermissionHandlerCalendars.h" -#import +@import EventKit; @implementation RNPermissionHandlerCalendars + (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSCalendarsFullAccessUsageDescription"]; + return @[@"NSCalendarsUsageDescription"]; } + (NSString * _Nonnull)handlerUniqueId { @@ -16,34 +16,26 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { switch ([EKEventStore authorizationStatusForEntityType:EKEntityTypeEvent]) { case EKAuthorizationStatusNotDetermined: - case EKAuthorizationStatusWriteOnly: return resolve(RNPermissionStatusNotDetermined); case EKAuthorizationStatusRestricted: return resolve(RNPermissionStatusRestricted); case EKAuthorizationStatusDenied: return resolve(RNPermissionStatusDenied); - case EKAuthorizationStatusFullAccess: + case EKAuthorizationStatusAuthorized: return resolve(RNPermissionStatusAuthorized); } } - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - EKEventStore *store = [EKEventStore new]; - - void (^completion)(BOOL, NSError * _Nullable) = ^(__unused BOOL granted, NSError * _Nullable error) { + [[EKEventStore new] requestAccessToEntityType:EKEntityTypeEvent + completion:^(__unused BOOL granted, NSError * _Nullable error) { if (error != nil) { reject(error); } else { [self checkWithResolver:resolve rejecter:reject]; } - }; - - if (@available(iOS 17.0, *)) { - [store requestFullAccessToEventsWithCompletion:completion]; - } else { - [store requestAccessToEntityType:EKEntityTypeEvent completion:completion]; - } + }]; } @end diff --git a/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.h b/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.h deleted file mode 100644 index 3b4ad6a9..00000000 --- a/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.h +++ /dev/null @@ -1,5 +0,0 @@ -#import "RNPermissions.h" - -@interface RNPermissionHandlerCalendarsWriteOnly : NSObject - -@end diff --git a/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.mm b/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.mm deleted file mode 100644 index fa14867c..00000000 --- a/ios/CalendarsWriteOnly/RNPermissionHandlerCalendarsWriteOnly.mm +++ /dev/null @@ -1,49 +0,0 @@ -#import "RNPermissionHandlerCalendarsWriteOnly.h" - -#import - -@implementation RNPermissionHandlerCalendarsWriteOnly - -+ (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSCalendarsWriteOnlyAccessUsageDescription"]; -} - -+ (NSString * _Nonnull)handlerUniqueId { - return @"ios.permission.CALENDARS_WRITE_ONLY"; -} - -- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { - switch ([EKEventStore authorizationStatusForEntityType:EKEntityTypeEvent]) { - case EKAuthorizationStatusNotDetermined: - return resolve(RNPermissionStatusNotDetermined); - case EKAuthorizationStatusRestricted: - return resolve(RNPermissionStatusRestricted); - case EKAuthorizationStatusDenied: - return resolve(RNPermissionStatusDenied); - case EKAuthorizationStatusFullAccess: - case EKAuthorizationStatusWriteOnly: - return resolve(RNPermissionStatusAuthorized); - } -} - -- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - EKEventStore *store = [EKEventStore new]; - - void (^completion)(BOOL, NSError * _Nullable) = ^(__unused BOOL granted, NSError * _Nullable error) { - if (error != nil) { - reject(error); - } else { - [self checkWithResolver:resolve rejecter:reject]; - } - }; - - if (@available(iOS 17.0, *)) { - [store requestWriteOnlyAccessToEventsWithCompletion:completion]; - } else { - [store requestAccessToEntityType:EKEntityTypeEvent completion:completion]; - } -} - -@end diff --git a/ios/Camera/Permission-Camera.podspec b/ios/Camera/Permission-Camera.podspec new file mode 100644 index 00000000..5b76e6e3 --- /dev/null +++ b/ios/Camera/Permission-Camera.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Camera" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Camera/RNPermissionHandlerCamera.h b/ios/Camera/RNPermissionHandlerCamera.h index ad6c95ee..3fa1bbba 100644 --- a/ios/Camera/RNPermissionHandlerCamera.h +++ b/ios/Camera/RNPermissionHandlerCamera.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerCamera : NSObject diff --git a/ios/Camera/RNPermissionHandlerCamera.mm b/ios/Camera/RNPermissionHandlerCamera.m similarity index 97% rename from ios/Camera/RNPermissionHandlerCamera.mm rename to ios/Camera/RNPermissionHandlerCamera.m index 36c2a430..b5910c25 100644 --- a/ios/Camera/RNPermissionHandlerCamera.mm +++ b/ios/Camera/RNPermissionHandlerCamera.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerCamera.h" -#import +@import AVFoundation; @implementation RNPermissionHandlerCamera diff --git a/ios/Contacts/Permission-Contacts.podspec b/ios/Contacts/Permission-Contacts.podspec new file mode 100644 index 00000000..8a876c5c --- /dev/null +++ b/ios/Contacts/Permission-Contacts.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Contacts" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Contacts/RNPermissionHandlerContacts.h b/ios/Contacts/RNPermissionHandlerContacts.h index 02ea8efa..ae726719 100644 --- a/ios/Contacts/RNPermissionHandlerContacts.h +++ b/ios/Contacts/RNPermissionHandlerContacts.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerContacts : NSObject diff --git a/ios/Contacts/RNPermissionHandlerContacts.mm b/ios/Contacts/RNPermissionHandlerContacts.m similarity index 97% rename from ios/Contacts/RNPermissionHandlerContacts.mm rename to ios/Contacts/RNPermissionHandlerContacts.m index 3df413e3..b6ac89b3 100644 --- a/ios/Contacts/RNPermissionHandlerContacts.mm +++ b/ios/Contacts/RNPermissionHandlerContacts.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerContacts.h" -#import +@import Contacts; @implementation RNPermissionHandlerContacts diff --git a/ios/FaceID/Permission-FaceID.podspec b/ios/FaceID/Permission-FaceID.podspec new file mode 100644 index 00000000..063e3339 --- /dev/null +++ b/ios/FaceID/Permission-FaceID.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-FaceID" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/FaceID/RNPermissionHandlerFaceID.h b/ios/FaceID/RNPermissionHandlerFaceID.h index 62106b94..aeaaad57 100644 --- a/ios/FaceID/RNPermissionHandlerFaceID.h +++ b/ios/FaceID/RNPermissionHandlerFaceID.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerFaceID : NSObject diff --git a/ios/FaceID/RNPermissionHandlerFaceID.m b/ios/FaceID/RNPermissionHandlerFaceID.m new file mode 100644 index 00000000..cf54d284 --- /dev/null +++ b/ios/FaceID/RNPermissionHandlerFaceID.m @@ -0,0 +1,107 @@ +#import "RNPermissionHandlerFaceID.h" + +@import LocalAuthentication; +@import UIKit; + +@interface RNPermissionHandlerFaceID() + +@property (nonatomic, strong) LAContext *laContext; +@property (nonatomic, strong) void (^resolve)(RNPermissionStatus status); +@property (nonatomic, strong) void (^reject)(NSError *error); + +@end + +@implementation RNPermissionHandlerFaceID + ++ (NSArray * _Nonnull)usageDescriptionKeys { + return @[@"NSFaceIDUsageDescription"]; +} + ++ (NSString * _Nonnull)handlerUniqueId { + return @"ios.permission.FACE_ID"; +} + +- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + if (@available(iOS 11.0.1, *)) { + LAContext *context = [LAContext new]; + NSError *error; + + [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]; + bool hasFaceID = context.biometryType == LABiometryTypeFaceID; + + if (!hasFaceID) { + return resolve(RNPermissionStatusNotAvailable); + } + + if (error != nil) { + if (error.code == LAErrorBiometryNotAvailable && hasFaceID) + return resolve(RNPermissionStatusDenied); + else + return resolve(RNPermissionStatusNotAvailable); + } + + if (![RNPermissionsHelper isFlaggedAsRequested:[[self class] handlerUniqueId]]) { + return resolve(RNPermissionStatusNotDetermined); + } + + resolve(RNPermissionStatusAuthorized); + } else { + resolve(RNPermissionStatusNotAvailable); + } +} + +- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + if (@available(iOS 11.0.1, *)) { + LAContext *context = [LAContext new]; + NSError *error; + + [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]; + bool hasFaceID = context.biometryType == LABiometryTypeFaceID; + + if (!hasFaceID) { + return resolve(RNPermissionStatusNotAvailable); + } + + if (error != nil) { + if (error.code == LAErrorBiometryNotAvailable && hasFaceID) + return resolve(RNPermissionStatusDenied); + else + return resolve(RNPermissionStatusNotAvailable); + } + + _resolve = resolve; + _reject = reject; + _laContext = context; + + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(onApplicationDidBecomeActive:) + name:UIApplicationDidBecomeActiveNotification + object:nil]; + + [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics + localizedReason:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"NSFaceIDUsageDescription"] + reply:^(__unused BOOL success, __unused NSError * _Nullable error) {}]; + + // Hack to invalidate FaceID verification immediately after being requested + [self performSelector:@selector(invalidateContext) withObject:self afterDelay:0.05]; + } else { + resolve(RNPermissionStatusNotAvailable); + } +} + +- (void)invalidateContext { + [_laContext invalidate]; +} + +- (void)onApplicationDidBecomeActive:(__unused NSNotification *)notification { + [[NSNotificationCenter defaultCenter] removeObserver:self + name:UIApplicationDidBecomeActiveNotification + object:nil]; + + [RNPermissionsHelper flagAsRequested:[[self class] handlerUniqueId]]; + [self checkWithResolver:_resolve rejecter:_reject]; +} + +@end diff --git a/ios/FaceID/RNPermissionHandlerFaceID.mm b/ios/FaceID/RNPermissionHandlerFaceID.mm deleted file mode 100644 index 05875003..00000000 --- a/ios/FaceID/RNPermissionHandlerFaceID.mm +++ /dev/null @@ -1,116 +0,0 @@ -#import "RNPermissionHandlerFaceID.h" - -#import - -static NSString* SETTING_KEY = @"@RNPermissions:Requested"; - -@interface RNPermissionHandlerFaceID() - -@property (nonatomic, strong) LAContext *laContext; -@property (nonatomic, strong) void (^resolve)(RNPermissionStatus status); -@property (nonatomic, strong) void (^reject)(NSError *error); - -@end - -@implementation RNPermissionHandlerFaceID - -+ (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSFaceIDUsageDescription"]; -} - -+ (NSString * _Nonnull)handlerUniqueId { - return @"ios.permission.FACE_ID"; -} - -- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - LAContext *context = [LAContext new]; - NSError *error; - - [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]; - bool hasFaceID = context.biometryType == LABiometryTypeFaceID; - - if (!hasFaceID) { - return resolve(RNPermissionStatusNotAvailable); - } - - if (error != nil) { - if (error.code == LAErrorBiometryNotAvailable && hasFaceID) - return resolve(RNPermissionStatusDenied); - else - return resolve(RNPermissionStatusNotAvailable); - } - - NSArray *requested = [[NSUserDefaults standardUserDefaults] arrayForKey:SETTING_KEY]; - NSString *handlerId = [[self class] handlerUniqueId]; - - if (requested == nil || ![requested containsObject:handlerId]) { - return resolve(RNPermissionStatusNotDetermined); - } - - resolve(RNPermissionStatusAuthorized); -} - -- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - LAContext *context = [LAContext new]; - NSError *error; - - [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]; - bool hasFaceID = context.biometryType == LABiometryTypeFaceID; - - if (!hasFaceID) { - return resolve(RNPermissionStatusNotAvailable); - } - - if (error != nil) { - if (error.code == LAErrorBiometryNotAvailable && hasFaceID) - return resolve(RNPermissionStatusDenied); - else - return resolve(RNPermissionStatusNotAvailable); - } - - _resolve = resolve; - _reject = reject; - _laContext = context; - - [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(onApplicationDidBecomeActive:) - name:UIApplicationDidBecomeActiveNotification - object:nil]; - - [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics - localizedReason:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"NSFaceIDUsageDescription"] - reply:^(__unused BOOL success, __unused NSError * _Nullable error) {}]; - - // Hack to invalidate FaceID verification immediately after being requested - [self performSelector:@selector(invalidateContext) withObject:self afterDelay:0.05]; -} - -- (void)invalidateContext { - [_laContext invalidate]; -} - -- (void)onApplicationDidBecomeActive:(__unused NSNotification *)notification { - [[NSNotificationCenter defaultCenter] removeObserver:self - name:UIApplicationDidBecomeActiveNotification - object:nil]; - - NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; - NSString *handlerId = [[self class] handlerUniqueId]; - NSMutableArray *requested = [[userDefaults arrayForKey:SETTING_KEY] mutableCopy]; - - if (requested == nil) { - requested = [NSMutableArray new]; - } - - if (![requested containsObject:handlerId]) { - [requested addObject:handlerId]; - [userDefaults setObject:requested forKey:SETTING_KEY]; - [userDefaults synchronize]; - } - - [self checkWithResolver:_resolve rejecter:_reject]; -} - -@end diff --git a/ios/LocationAccuracy/Permission-LocationAccuracy.podspec b/ios/LocationAccuracy/Permission-LocationAccuracy.podspec new file mode 100644 index 00000000..4bb685fa --- /dev/null +++ b/ios/LocationAccuracy/Permission-LocationAccuracy.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-LocationAccuracy" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.h b/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.h index 508039c0..fe003a21 100644 --- a/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.h +++ b/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerLocationAccuracy : NSObject diff --git a/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.mm b/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.m similarity index 91% rename from ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.mm rename to ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.m index 3cc64aec..4c2b7853 100644 --- a/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.mm +++ b/ios/LocationAccuracy/RNPermissionHandlerLocationAccuracy.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerLocationAccuracy.h" -#import +@import CoreLocation; @interface RNPermissionHandlerLocationAccuracy() @@ -23,6 +23,10 @@ + (NSString * _Nonnull)handlerUniqueId { - (void)checkWithResolver:(RCTPromiseResolveBlock _Nonnull)resolve rejecter:(RCTPromiseRejectBlock _Nonnull)reject { if (@available(iOS 14, *)) { + if (![CLLocationManager locationServicesEnabled]) { + return reject(@"cannot_check_location_accuracy", @"Location services are disabled", nil); + } + switch ([CLLocationManager authorizationStatus]) { case kCLAuthorizationStatusNotDetermined: return reject(@"cannot_check_location_accuracy", @"Location permission hasn't been requested first", nil); @@ -51,6 +55,10 @@ - (void)requestWithPurposeKey:(NSString * _Nonnull)purposeKey resolver:(RCTPromiseResolveBlock _Nonnull)resolve rejecter:(RCTPromiseRejectBlock _Nonnull)reject { if (@available(iOS 14, *)) { + if (![CLLocationManager locationServicesEnabled]) { + return reject(@"cannot_request_location_accuracy", @"Location services are disabled", nil); + } + switch ([CLLocationManager authorizationStatus]) { case kCLAuthorizationStatusNotDetermined: return reject(@"cannot_request_location_accuracy", @"Location permission hasn't been requested first", nil); diff --git a/ios/LocationAlways/Permission-LocationAlways.podspec b/ios/LocationAlways/Permission-LocationAlways.podspec new file mode 100644 index 00000000..e180e334 --- /dev/null +++ b/ios/LocationAlways/Permission-LocationAlways.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-LocationAlways" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/LocationAlways/RNPermissionHandlerLocationAlways.h b/ios/LocationAlways/RNPermissionHandlerLocationAlways.h index 2a557717..3cdb0b56 100644 --- a/ios/LocationAlways/RNPermissionHandlerLocationAlways.h +++ b/ios/LocationAlways/RNPermissionHandlerLocationAlways.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerLocationAlways : NSObject diff --git a/ios/LocationAlways/RNPermissionHandlerLocationAlways.mm b/ios/LocationAlways/RNPermissionHandlerLocationAlways.m similarity index 84% rename from ios/LocationAlways/RNPermissionHandlerLocationAlways.mm rename to ios/LocationAlways/RNPermissionHandlerLocationAlways.m index 00b734f8..29c90750 100644 --- a/ios/LocationAlways/RNPermissionHandlerLocationAlways.mm +++ b/ios/LocationAlways/RNPermissionHandlerLocationAlways.m @@ -1,6 +1,7 @@ #import "RNPermissionHandlerLocationAlways.h" -#import +@import CoreLocation; +@import UIKit; @interface RNPermissionHandlerLocationAlways() @@ -13,7 +14,10 @@ @interface RNPermissionHandlerLocationAlways() @implementation RNPermissionHandlerLocationAlways + (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSLocationAlwaysAndWhenInUseUsageDescription"]; + return @[ + @"NSLocationAlwaysAndWhenInUseUsageDescription", + @"NSLocationAlwaysUsageDescription", + ]; } + (NSString * _Nonnull)handlerUniqueId { @@ -22,6 +26,10 @@ + (NSString * _Nonnull)handlerUniqueId { - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { + if (![CLLocationManager locationServicesEnabled]) { + return resolve(RNPermissionStatusNotAvailable); + } + switch ([CLLocationManager authorizationStatus]) { case kCLAuthorizationStatusNotDetermined: return resolve(RNPermissionStatusNotDetermined); @@ -37,6 +45,9 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + if (![CLLocationManager locationServicesEnabled]) { + return resolve(RNPermissionStatusNotAvailable); + } if ([CLLocationManager authorizationStatus] != kCLAuthorizationStatusNotDetermined) { return [self checkWithResolver:resolve rejecter:reject]; } diff --git a/ios/LocationWhenInUse/Permission-LocationWhenInUse.podspec b/ios/LocationWhenInUse/Permission-LocationWhenInUse.podspec new file mode 100644 index 00000000..27c63d07 --- /dev/null +++ b/ios/LocationWhenInUse/Permission-LocationWhenInUse.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-LocationWhenInUse" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.h b/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.h index 98badee1..d31f5a56 100644 --- a/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.h +++ b/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerLocationWhenInUse : NSObject diff --git a/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.mm b/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.m similarity index 89% rename from ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.mm rename to ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.m index df174c51..07a5964d 100644 --- a/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.mm +++ b/ios/LocationWhenInUse/RNPermissionHandlerLocationWhenInUse.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerLocationWhenInUse.h" -#import +@import CoreLocation; @interface RNPermissionHandlerLocationWhenInUse() @@ -22,6 +22,10 @@ + (NSString * _Nonnull)handlerUniqueId { - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { + if (![CLLocationManager locationServicesEnabled]) { + return resolve(RNPermissionStatusNotAvailable); + } + switch ([CLLocationManager authorizationStatus]) { case kCLAuthorizationStatusNotDetermined: return resolve(RNPermissionStatusNotDetermined); @@ -37,6 +41,9 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + if (![CLLocationManager locationServicesEnabled]) { + return resolve(RNPermissionStatusNotAvailable); + } if ([CLLocationManager authorizationStatus] != kCLAuthorizationStatusNotDetermined) { return [self checkWithResolver:resolve rejecter:reject]; } diff --git a/ios/MediaLibrary/Permission-MediaLibrary.podspec b/ios/MediaLibrary/Permission-MediaLibrary.podspec new file mode 100644 index 00000000..3e71a6bb --- /dev/null +++ b/ios/MediaLibrary/Permission-MediaLibrary.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-MediaLibrary" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.h b/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.h index 443204e0..498e9a6d 100644 --- a/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.h +++ b/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerMediaLibrary : NSObject diff --git a/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.mm b/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.m similarity index 93% rename from ios/MediaLibrary/RNPermissionHandlerMediaLibrary.mm rename to ios/MediaLibrary/RNPermissionHandlerMediaLibrary.m index 6176c400..d7cf000c 100644 --- a/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.mm +++ b/ios/MediaLibrary/RNPermissionHandlerMediaLibrary.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerMediaLibrary.h" -#import +@import MediaPlayer; @implementation RNPermissionHandlerMediaLibrary @@ -14,7 +14,7 @@ + (NSString * _Nonnull)handlerUniqueId { - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { -#if TARGET_OS_TV +#if TARGET_OS_SIMULATOR || TARGET_OS_TV resolve(RNPermissionStatusNotAvailable); #else switch ([MPMediaLibrary authorizationStatus]) { @@ -32,7 +32,7 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { -#if TARGET_OS_TV +#if TARGET_OS_SIMULATOR || TARGET_OS_TV resolve(RNPermissionStatusNotAvailable); #else [MPMediaLibrary requestAuthorization:^(__unused MPMediaLibraryAuthorizationStatus status) { diff --git a/ios/Microphone/Permission-Microphone.podspec b/ios/Microphone/Permission-Microphone.podspec new file mode 100644 index 00000000..66f20a33 --- /dev/null +++ b/ios/Microphone/Permission-Microphone.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Microphone" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Microphone/RNPermissionHandlerMicrophone.h b/ios/Microphone/RNPermissionHandlerMicrophone.h index afa38adf..80e9783b 100644 --- a/ios/Microphone/RNPermissionHandlerMicrophone.h +++ b/ios/Microphone/RNPermissionHandlerMicrophone.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerMicrophone : NSObject diff --git a/ios/Microphone/RNPermissionHandlerMicrophone.m b/ios/Microphone/RNPermissionHandlerMicrophone.m new file mode 100644 index 00000000..549174e2 --- /dev/null +++ b/ios/Microphone/RNPermissionHandlerMicrophone.m @@ -0,0 +1,34 @@ +#import "RNPermissionHandlerMicrophone.h" + +@import AVFoundation; + +@implementation RNPermissionHandlerMicrophone + ++ (NSArray * _Nonnull)usageDescriptionKeys { + return @[@"NSMicrophoneUsageDescription"]; +} + ++ (NSString * _Nonnull)handlerUniqueId { + return @"ios.permission.MICROPHONE"; +} + +- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { + switch ([[AVAudioSession sharedInstance] recordPermission]) { + case AVAudioSessionRecordPermissionUndetermined: + return resolve(RNPermissionStatusNotDetermined); + case AVAudioSessionRecordPermissionDenied: + return resolve(RNPermissionStatusDenied); + case AVAudioSessionRecordPermissionGranted: + return resolve(RNPermissionStatusAuthorized); + } +} + +- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve + rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { + [[AVAudioSession sharedInstance] requestRecordPermission:^(__unused BOOL granted) { + [self checkWithResolver:resolve rejecter:reject]; + }]; +} + +@end diff --git a/ios/Microphone/RNPermissionHandlerMicrophone.mm b/ios/Microphone/RNPermissionHandlerMicrophone.mm deleted file mode 100644 index b3c85016..00000000 --- a/ios/Microphone/RNPermissionHandlerMicrophone.mm +++ /dev/null @@ -1,51 +0,0 @@ -#import "RNPermissionHandlerMicrophone.h" - -#import - -@implementation RNPermissionHandlerMicrophone - -+ (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSMicrophoneUsageDescription"]; -} - -+ (NSString * _Nonnull)handlerUniqueId { - return @"ios.permission.MICROPHONE"; -} - -- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (__unused ^ _Nonnull)(NSError * _Nonnull))reject { - if (@available(iOS 17.0, *)) { - switch ([[AVAudioApplication sharedInstance] recordPermission]) { - case AVAudioApplicationRecordPermissionUndetermined: - return resolve(RNPermissionStatusNotDetermined); - case AVAudioApplicationRecordPermissionDenied: - return resolve(RNPermissionStatusDenied); - case AVAudioApplicationRecordPermissionGranted: - return resolve(RNPermissionStatusAuthorized); - } - } else { - switch ([[AVAudioSession sharedInstance] recordPermission]) { - case AVAudioSessionRecordPermissionUndetermined: - return resolve(RNPermissionStatusNotDetermined); - case AVAudioSessionRecordPermissionDenied: - return resolve(RNPermissionStatusDenied); - case AVAudioSessionRecordPermissionGranted: - return resolve(RNPermissionStatusAuthorized); - } - } -} - -- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - if (@available(iOS 17.0, *)) { - [AVAudioApplication requestRecordPermissionWithCompletionHandler:^(__unused BOOL granted) { - [self checkWithResolver:resolve rejecter:reject]; - }]; - } else { - [[AVAudioSession sharedInstance] requestRecordPermission:^(__unused BOOL granted) { - [self checkWithResolver:resolve rejecter:reject]; - }]; - } -} - -@end diff --git a/ios/Motion/Permission-Motion.podspec b/ios/Motion/Permission-Motion.podspec new file mode 100644 index 00000000..8676aeed --- /dev/null +++ b/ios/Motion/Permission-Motion.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Motion" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Motion/RNPermissionHandlerMotion.h b/ios/Motion/RNPermissionHandlerMotion.h index ce4dbeed..65f3813a 100644 --- a/ios/Motion/RNPermissionHandlerMotion.h +++ b/ios/Motion/RNPermissionHandlerMotion.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerMotion : NSObject diff --git a/ios/Motion/RNPermissionHandlerMotion.mm b/ios/Motion/RNPermissionHandlerMotion.m similarity index 70% rename from ios/Motion/RNPermissionHandlerMotion.mm rename to ios/Motion/RNPermissionHandlerMotion.m index 3a4f2576..fd120848 100644 --- a/ios/Motion/RNPermissionHandlerMotion.mm +++ b/ios/Motion/RNPermissionHandlerMotion.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerMotion.h" -#import +@import CoreMotion; @interface RNPermissionHandlerMotion() @@ -25,16 +25,24 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve return resolve(RNPermissionStatusNotAvailable); } - switch ([CMMotionActivityManager authorizationStatus]) { - case CMAuthorizationStatusNotDetermined: - return resolve(RNPermissionStatusNotDetermined); - case CMAuthorizationStatusRestricted: - return resolve(RNPermissionStatusRestricted); - case CMAuthorizationStatusDenied: - return resolve(RNPermissionStatusDenied); - case CMAuthorizationStatusAuthorized: - return resolve(RNPermissionStatusAuthorized); + if (@available(iOS 11.0, *)) { + switch ([CMMotionActivityManager authorizationStatus]) { + case CMAuthorizationStatusNotDetermined: + return resolve(RNPermissionStatusNotDetermined); + case CMAuthorizationStatusRestricted: + return resolve(RNPermissionStatusRestricted); + case CMAuthorizationStatusDenied: + return resolve(RNPermissionStatusDenied); + case CMAuthorizationStatusAuthorized: + return resolve(RNPermissionStatusAuthorized); + } + } + + if (![RNPermissionsHelper isFlaggedAsRequested:[[self class] handlerUniqueId]]) { + return resolve(RNPermissionStatusNotDetermined); } + + [self requestWithResolver:resolve rejecter:reject]; } - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve @@ -57,6 +65,8 @@ - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve return reject(error); } + [RNPermissionsHelper flagAsRequested:[[self class] handlerUniqueId]]; + if (error != nil) { return resolve(RNPermissionStatusDenied); } diff --git a/ios/Notifications/Permission-Notifications.podspec b/ios/Notifications/Permission-Notifications.podspec new file mode 100644 index 00000000..45798cef --- /dev/null +++ b/ios/Notifications/Permission-Notifications.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Notifications" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Notifications/RNPermissionHandlerNotifications.h b/ios/Notifications/RNPermissionHandlerNotifications.h index 6601123a..5a5ee0e8 100644 --- a/ios/Notifications/RNPermissionHandlerNotifications.h +++ b/ios/Notifications/RNPermissionHandlerNotifications.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerNotifications : NSObject diff --git a/ios/Notifications/RNPermissionHandlerNotifications.mm b/ios/Notifications/RNPermissionHandlerNotifications.m similarity index 67% rename from ios/Notifications/RNPermissionHandlerNotifications.mm rename to ios/Notifications/RNPermissionHandlerNotifications.m index faef058e..14d8f3d2 100644 --- a/ios/Notifications/RNPermissionHandlerNotifications.mm +++ b/ios/Notifications/RNPermissionHandlerNotifications.m @@ -1,6 +1,7 @@ #import "RNPermissionHandlerNotifications.h" -#import +@import UserNotifications; +@import UIKit; @interface RNPermissionHandlerNotifications() @@ -21,29 +22,41 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus status, NSDictio NSMutableDictionary *result = [NSMutableDictionary new]; if (settings.alertSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.alertSetting == UNNotificationSettingEnabled) forKey:@"alert"]; + bool value = settings.alertSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"alert"]; } if (settings.badgeSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.badgeSetting == UNNotificationSettingEnabled) forKey:@"badge"]; + bool value = settings.badgeSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"badge"]; } if (settings.soundSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.soundSetting == UNNotificationSettingEnabled) forKey:@"sound"]; + bool value = settings.soundSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"sound"]; } if (settings.lockScreenSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.lockScreenSetting == UNNotificationSettingEnabled) forKey:@"lockScreen"]; + bool value = settings.lockScreenSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"lockScreen"]; } if (settings.carPlaySetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.carPlaySetting == UNNotificationSettingEnabled) forKey:@"carPlay"]; + bool value = settings.carPlaySetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"carPlay"]; } if (settings.notificationCenterSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.notificationCenterSetting == UNNotificationSettingEnabled) forKey:@"notificationCenter"]; + bool value = settings.notificationCenterSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"notificationCenter"]; } - [result setValue:@(settings.providesAppNotificationSettings == true) forKey:@"providesAppSettings"]; - [result setValue:@(settings.authorizationStatus == UNAuthorizationStatusProvisional) forKey:@"provisional"]; + if (@available(iOS 12.0, *)) { + bool providesAppSettingsValue = settings.providesAppNotificationSettings == true; + bool provisionalValue = settings.authorizationStatus == UNAuthorizationStatusProvisional; - if (settings.criticalAlertSetting != UNNotificationSettingNotSupported) { - [result setValue:@(settings.criticalAlertSetting == UNNotificationSettingEnabled) forKey:@"criticalAlert"]; + [result setValue:@(providesAppSettingsValue) forKey:@"providesAppSettings"]; + [result setValue:@(provisionalValue) forKey:@"provisional"]; + + if (settings.criticalAlertSetting != UNNotificationSettingNotSupported) { + bool value = settings.criticalAlertSetting == UNNotificationSettingEnabled; + [result setValue:@(value) forKey:@"criticalAlert"]; + } } switch (settings.authorizationStatus) { @@ -85,14 +98,17 @@ - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus status, NSDict if (carPlay) { types += UNAuthorizationOptionCarPlay; } - if (criticalAlert) { - types += UNAuthorizationOptionCriticalAlert; - } - if (provisional) { - types += UNAuthorizationOptionProvisional; - } - if (providesAppSettings) { - types += UNAuthorizationOptionProvidesAppNotificationSettings; + + if (@available(iOS 12.0, *)) { + if (criticalAlert) { + types += UNAuthorizationOptionCriticalAlert; + } + if (provisional) { + types += UNAuthorizationOptionProvisional; + } + if (providesAppSettings) { + types += UNAuthorizationOptionProvidesAppNotificationSettings; + } } if (!alert && diff --git a/ios/PhotoLibrary/Permission-PhotoLibrary.podspec b/ios/PhotoLibrary/Permission-PhotoLibrary.podspec new file mode 100644 index 00000000..3c0ce197 --- /dev/null +++ b/ios/PhotoLibrary/Permission-PhotoLibrary.podspec @@ -0,0 +1,21 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-PhotoLibrary" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" + s.frameworks = "PhotosUI" +end diff --git a/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.h b/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.h index d304b0a6..1155f2b6 100644 --- a/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.h +++ b/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.h @@ -1,8 +1,8 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerPhotoLibrary : NSObject -- (void)openPhotoPickerWithResolver:(RCTPromiseResolveBlock _Nonnull)resolve - rejecter:(RCTPromiseRejectBlock _Nonnull)reject; +- (void)openLimitedPhotoLibraryPickerWithResolver:(RCTPromiseResolveBlock _Nonnull)resolve + rejecter:(RCTPromiseRejectBlock _Nonnull)reject; @end diff --git a/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.mm b/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.m similarity index 63% rename from ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.mm rename to ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.m index 9f306629..8960089c 100644 --- a/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.mm +++ b/ios/PhotoLibrary/RNPermissionHandlerPhotoLibrary.m @@ -1,8 +1,8 @@ #import "RNPermissionHandlerPhotoLibrary.h" #import -#import -#import +@import Photos; +@import PhotosUI; @implementation RNPermissionHandlerPhotoLibrary @@ -51,36 +51,17 @@ - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve } } -- (void)openPhotoPickerWithResolver:(RCTPromiseResolveBlock _Nonnull)resolve - rejecter:(RCTPromiseRejectBlock _Nonnull)reject { - if (@available(iOS 14.0, *)) { +- (void)openLimitedPhotoLibraryPickerWithResolver:(RCTPromiseResolveBlock _Nonnull)resolve + rejecter:(RCTPromiseRejectBlock _Nonnull)reject { + if (@available(iOS 14, *)) { if ([PHPhotoLibrary authorizationStatusForAccessLevel:PHAccessLevelReadWrite] != PHAuthorizationStatusLimited) { return reject(@"cannot_open_limited_picker", @"Photo library permission isn't limited", nil); } - UIViewController *viewController = RCTPresentedViewController(); - PHPhotoLibrary *photoLibrary = [PHPhotoLibrary sharedPhotoLibrary]; - - if (@available(iOS 15, *)) { - [photoLibrary presentLimitedLibraryPickerFromViewController:viewController - completionHandler:^(__unused NSArray * _Nonnull assets) { - resolve(@(true)); - }]; - } else { - __block bool pickerVisible = false; - [photoLibrary presentLimitedLibraryPickerFromViewController:viewController]; + UIViewController *presentedViewController = RCTPresentedViewController(); + [[PHPhotoLibrary sharedPhotoLibrary] presentLimitedLibraryPickerFromViewController:presentedViewController]; - [NSTimer scheduledTimerWithTimeInterval:0.1 - repeats:true - block:^(NSTimer * _Nonnull timer) { - if ([RCTPresentedViewController() class] == [PHPickerViewController class]) { - pickerVisible = true; - } else if (pickerVisible) { - [timer invalidate]; - resolve(@(true)); - } - }]; - } + resolve(@(true)); } else { reject(@"cannot_open_limited_picker", @"Only available on iOS 14 or higher", nil); } diff --git a/ios/PhotoLibraryAddOnly/Permission-PhotoLibraryAddOnly.podspec b/ios/PhotoLibraryAddOnly/Permission-PhotoLibraryAddOnly.podspec new file mode 100644 index 00000000..7ad55d99 --- /dev/null +++ b/ios/PhotoLibraryAddOnly/Permission-PhotoLibraryAddOnly.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-PhotoLibraryAddOnly" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.h b/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.h index b598882d..7440a990 100644 --- a/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.h +++ b/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerPhotoLibraryAddOnly : NSObject diff --git a/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.mm b/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.m similarity index 98% rename from ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.mm rename to ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.m index aadde22c..d73583a1 100644 --- a/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.mm +++ b/ios/PhotoLibraryAddOnly/RNPermissionHandlerPhotoLibraryAddOnly.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerPhotoLibraryAddOnly.h" -#import +@import Photos; @implementation RNPermissionHandlerPhotoLibraryAddOnly diff --git a/ios/PrivacyInfo.xcprivacy b/ios/PrivacyInfo.xcprivacy deleted file mode 100644 index 0a95d093..00000000 --- a/ios/PrivacyInfo.xcprivacy +++ /dev/null @@ -1,23 +0,0 @@ - - - - - NSPrivacyAccessedAPITypes - - - NSPrivacyAccessedAPIType - NSPrivacyAccessedAPICategoryUserDefaults - NSPrivacyAccessedAPITypeReasons - - CA92.1 - - - - NSPrivacyCollectedDataTypes - - NSPrivacyTracking - - NSPrivacyTrackingDomains - - - diff --git a/ios/RNPermissions.h b/ios/RNPermissions.h deleted file mode 100644 index d8054d00..00000000 --- a/ios/RNPermissions.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifdef RCT_NEW_ARCH_ENABLED -#import -#else -#import -#endif - -typedef enum { - RNPermissionStatusNotAvailable = 0, - RNPermissionStatusNotDetermined = 1, - RNPermissionStatusRestricted = 2, - RNPermissionStatusDenied = 3, - RNPermissionStatusAuthorized = 4, - RNPermissionStatusLimited = 5, -} RNPermissionStatus; - -@protocol RNPermissionHandler - -@required - -+ (NSArray * _Nonnull)usageDescriptionKeys; - -+ (NSString * _Nonnull)handlerUniqueId; - -- (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus status))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull error))reject; - -- (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus status))resolve - rejecter:(void (^ _Nonnull)(NSError * _Nonnull error))reject; - -@end - -#ifdef RCT_NEW_ARCH_ENABLED -@interface RNPermissions : NSObject -#else -@interface RNPermissions : NSObject -#endif - -@end diff --git a/ios/RNPermissions.mm b/ios/RNPermissions.mm deleted file mode 100644 index 7519260b..00000000 --- a/ios/RNPermissions.mm +++ /dev/null @@ -1,454 +0,0 @@ -#import "RNPermissions.h" -#import - -#if __has_include("RNPermissionHandlerBluetooth.h") -#import "RNPermissionHandlerBluetooth.h" -#endif -#if __has_include("RNPermissionHandlerCalendars.h") -#import "RNPermissionHandlerCalendars.h" -#endif -#if __has_include("RNPermissionHandlerCamera.h") -#import "RNPermissionHandlerCamera.h" -#endif -#if __has_include("RNPermissionHandlerContacts.h") -#import "RNPermissionHandlerContacts.h" -#endif -#if __has_include("RNPermissionHandlerFaceID.h") -#import "RNPermissionHandlerFaceID.h" -#endif -#if __has_include("RNPermissionHandlerLocationAlways.h") -#import "RNPermissionHandlerLocationAlways.h" -#endif -#if __has_include("RNPermissionHandlerLocationWhenInUse.h") -#import "RNPermissionHandlerLocationWhenInUse.h" -#endif -#if __has_include("RNPermissionHandlerMediaLibrary.h") -#import "RNPermissionHandlerMediaLibrary.h" -#endif -#if __has_include("RNPermissionHandlerMicrophone.h") -#import "RNPermissionHandlerMicrophone.h" -#endif -#if __has_include("RNPermissionHandlerMotion.h") -#import "RNPermissionHandlerMotion.h" -#endif -#if __has_include("RNPermissionHandlerNotifications.h") -#import "RNPermissionHandlerNotifications.h" -#endif -#if __has_include("RNPermissionHandlerPhotoLibrary.h") -#import "RNPermissionHandlerPhotoLibrary.h" -#endif -#if __has_include("RNPermissionHandlerReminders.h") -#import "RNPermissionHandlerReminders.h" -#endif -#if __has_include("RNPermissionHandlerSiri.h") -#import "RNPermissionHandlerSiri.h" -#endif -#if __has_include("RNPermissionHandlerSpeechRecognition.h") -#import "RNPermissionHandlerSpeechRecognition.h" -#endif -#if __has_include("RNPermissionHandlerStoreKit.h") -#import "RNPermissionHandlerStoreKit.h" -#endif -#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") -#import "RNPermissionHandlerAppTrackingTransparency.h" -#endif -#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") -#import "RNPermissionHandlerPhotoLibraryAddOnly.h" -#endif -#if __has_include("RNPermissionHandlerLocationAccuracy.h") -#import "RNPermissionHandlerLocationAccuracy.h" -#endif -#if __has_include("RNPermissionHandlerCalendarsWriteOnly.h") -#import "RNPermissionHandlerCalendarsWriteOnly.h" -#endif - -@interface RNPermissions() - -@property (nonatomic, strong) NSMutableDictionary> *_Nonnull handlers; - -@end - -@implementation RNPermissions - -RCT_EXPORT_MODULE(); - -+ (BOOL)requiresMainQueueSetup { - return NO; -} - -- (dispatch_queue_t)methodQueue { - return dispatch_get_main_queue(); -} - -- (NSDictionary *)constantsToExport { - NSMutableArray *available = [NSMutableArray new]; - -#if __has_include("RNPermissionHandlerBluetooth.h") - [available addObject:[RNPermissionHandlerBluetooth handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerCalendars.h") - [available addObject:[RNPermissionHandlerCalendars handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerCamera.h") - [available addObject:[RNPermissionHandlerCamera handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerContacts.h") - [available addObject:[RNPermissionHandlerContacts handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerFaceID.h") - [available addObject:[RNPermissionHandlerFaceID handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerLocationAlways.h") - [available addObject:[RNPermissionHandlerLocationAlways handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerLocationWhenInUse.h") - [available addObject:[RNPermissionHandlerLocationWhenInUse handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerMediaLibrary.h") - [available addObject:[RNPermissionHandlerMediaLibrary handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerMicrophone.h") - [available addObject:[RNPermissionHandlerMicrophone handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerMotion.h") - [available addObject:[RNPermissionHandlerMotion handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerNotifications.h") - [available addObject:[RNPermissionHandlerNotifications handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerPhotoLibrary.h") - [available addObject:[RNPermissionHandlerPhotoLibrary handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerReminders.h") - [available addObject:[RNPermissionHandlerReminders handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerSiri.h") - [available addObject:[RNPermissionHandlerSiri handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerSpeechRecognition.h") - [available addObject:[RNPermissionHandlerSpeechRecognition handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerStoreKit.h") - [available addObject:[RNPermissionHandlerStoreKit handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") - [available addObject:[RNPermissionHandlerAppTrackingTransparency handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") - [available addObject:[RNPermissionHandlerPhotoLibraryAddOnly handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerLocationAccuracy.h") - [available addObject:[RNPermissionHandlerLocationAccuracy handlerUniqueId]]; -#endif -#if __has_include("RNPermissionHandlerCalendarsWriteOnly.h") - [available addObject:[RNPermissionHandlerCalendarsWriteOnly handlerUniqueId]]; -#endif - -#if RCT_DEV - if ([available count] == 0) { - NSMutableString *message = [NSMutableString new]; - - [message appendString:@"⚠ No permission handler detected.\n\n"]; - [message appendString:@"• Check that you are correctly calling setup_permissions in your Podfile.\n"]; - [message appendString:@"• Uninstall this app, reinstall your Pods, delete your Xcode DerivedData folder and rebuild it.\n"]; - - RCTLogError(@"%@", message); - } -#endif - - return @{ @"available": available }; -} - -- (void)checkUsageDescriptionKeys:(NSArray * _Nonnull)keys { -#if RCT_DEV - for (NSString *key in keys) { - if (![[NSBundle mainBundle] objectForInfoDictionaryKey:key]) { - RCTLogWarn(@"Missing \"%@\" property in \"Info.plist\"", key); - return; - } - } -#endif -} - -- (id _Nullable)handlerForPermission:(NSString *)permission { - id handler = nil; - - if (false) {} -#if __has_include("RNPermissionHandlerBluetooth.h") - else if ([permission isEqualToString:[RNPermissionHandlerBluetooth handlerUniqueId]]) { - handler = [RNPermissionHandlerBluetooth new]; - } -#endif -#if __has_include("RNPermissionHandlerCalendars.h") - else if ([permission isEqualToString:[RNPermissionHandlerCalendars handlerUniqueId]]) { - handler = [RNPermissionHandlerCalendars new]; - } -#endif -#if __has_include("RNPermissionHandlerCamera.h") - else if ([permission isEqualToString:[RNPermissionHandlerCamera handlerUniqueId]]) { - handler = [RNPermissionHandlerCamera new]; - } -#endif -#if __has_include("RNPermissionHandlerContacts.h") - else if ([permission isEqualToString:[RNPermissionHandlerContacts handlerUniqueId]]) { - handler = [RNPermissionHandlerContacts new]; - } -#endif -#if __has_include("RNPermissionHandlerFaceID.h") - else if ([permission isEqualToString:[RNPermissionHandlerFaceID handlerUniqueId]]) { - handler = [RNPermissionHandlerFaceID new]; - } -#endif -#if __has_include("RNPermissionHandlerLocationAlways.h") - else if ([permission isEqualToString:[RNPermissionHandlerLocationAlways handlerUniqueId]]) { - handler = [RNPermissionHandlerLocationAlways new]; - } -#endif -#if __has_include("RNPermissionHandlerLocationWhenInUse.h") - else if ([permission isEqualToString:[RNPermissionHandlerLocationWhenInUse handlerUniqueId]]) { - handler = [RNPermissionHandlerLocationWhenInUse new]; - } -#endif -#if __has_include("RNPermissionHandlerMediaLibrary.h") - else if ([permission isEqualToString:[RNPermissionHandlerMediaLibrary handlerUniqueId]]) { - handler = [RNPermissionHandlerMediaLibrary new]; - } -#endif -#if __has_include("RNPermissionHandlerMicrophone.h") - else if ([permission isEqualToString:[RNPermissionHandlerMicrophone handlerUniqueId]]) { - handler = [RNPermissionHandlerMicrophone new]; - } -#endif -#if __has_include("RNPermissionHandlerMotion.h") - else if ([permission isEqualToString:[RNPermissionHandlerMotion handlerUniqueId]]) { - handler = [RNPermissionHandlerMotion new]; - } -#endif -#if __has_include("RNPermissionHandlerPhotoLibrary.h") - else if ([permission isEqualToString:[RNPermissionHandlerPhotoLibrary handlerUniqueId]]) { - handler = [RNPermissionHandlerPhotoLibrary new]; - } -#endif -#if __has_include("RNPermissionHandlerReminders.h") - else if ([permission isEqualToString:[RNPermissionHandlerReminders handlerUniqueId]]) { - handler = [RNPermissionHandlerReminders new]; - } -#endif -#if __has_include("RNPermissionHandlerSiri.h") - else if ([permission isEqualToString:[RNPermissionHandlerSiri handlerUniqueId]]) { - handler = [RNPermissionHandlerSiri new]; - } -#endif -#if __has_include("RNPermissionHandlerSpeechRecognition.h") - else if ([permission isEqualToString:[RNPermissionHandlerSpeechRecognition handlerUniqueId]]) { - handler = [RNPermissionHandlerSpeechRecognition new]; - } -#endif -#if __has_include("RNPermissionHandlerStoreKit.h") - else if ([permission isEqualToString:[RNPermissionHandlerStoreKit handlerUniqueId]]) { - handler = [RNPermissionHandlerStoreKit new]; - } -#endif -#if __has_include("RNPermissionHandlerAppTrackingTransparency.h") - else if ([permission isEqualToString:[RNPermissionHandlerAppTrackingTransparency handlerUniqueId]]) { - handler = [RNPermissionHandlerAppTrackingTransparency new]; - } -#endif -#if __has_include("RNPermissionHandlerPhotoLibraryAddOnly.h") - else if ([permission isEqualToString:[RNPermissionHandlerPhotoLibraryAddOnly handlerUniqueId]]) { - handler = [RNPermissionHandlerPhotoLibraryAddOnly new]; - } -#endif -#if __has_include("RNPermissionHandlerCalendarsWriteOnly.h") - else if ([permission isEqualToString:[RNPermissionHandlerCalendarsWriteOnly handlerUniqueId]]) { - handler = [RNPermissionHandlerCalendarsWriteOnly new]; - } -#endif - else { - RCTLogError(@"Unknown permission \"%@\"", permission); - } - - [self checkUsageDescriptionKeys:[[handler class] usageDescriptionKeys]]; - return handler; -} - -- (NSString *)stringForStatus:(RNPermissionStatus)status { - switch (status) { - case RNPermissionStatusNotAvailable: - case RNPermissionStatusRestricted: - return @"unavailable"; - case RNPermissionStatusNotDetermined: - return @"denied"; - case RNPermissionStatusDenied: - return @"blocked"; - case RNPermissionStatusLimited: - return @"limited"; - case RNPermissionStatusAuthorized: - return @"granted"; - } -} - -- (NSString *)lockHandler:(id)handler { - if (_handlers == nil) { - _handlers = [NSMutableDictionary new]; - } - - NSString *lockId = [[NSUUID UUID] UUIDString]; - [_handlers setObject:handler forKey:lockId]; - - return lockId; -} - -- (void)unlockHandler:(NSString * _Nonnull)lockId { - if (_handlers != nil) { - [_handlers removeObjectForKey:lockId]; - } -} - -RCT_EXPORT_METHOD(openSettings:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { - UIApplication *sharedApplication = [UIApplication sharedApplication]; - NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; - - [sharedApplication openURL:url options:@{} completionHandler:^(BOOL success) { - if (success) { - resolve(@(true)); - } else { - reject(@"cannot_open_settings", @"Cannot open application settings", nil); - } - }]; -} - -RCT_EXPORT_METHOD(check:(NSString *)permission - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { - id handler = [self handlerForPermission:permission]; - NSString *lockId = [self lockHandler:handler]; - - [handler checkWithResolver:^(RNPermissionStatus status) { - resolve([self stringForStatus:status]); - [self unlockHandler:lockId]; - } rejecter:^(NSError *error) { - reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); - [self unlockHandler:lockId]; - }]; -} - -RCT_EXPORT_METHOD(request:(NSString *)permission - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { - id handler = [self handlerForPermission:permission]; - NSString *lockId = [self lockHandler:handler]; - - [handler requestWithResolver:^(RNPermissionStatus status) { - resolve([self stringForStatus:status]); - [self unlockHandler:lockId]; - } rejecter:^(NSError *error) { - reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); - [self unlockHandler:lockId]; - }]; -} - -RCT_EXPORT_METHOD(checkNotifications:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { -#if __has_include("RNPermissionHandlerNotifications.h") - RNPermissionHandlerNotifications *handler = [RNPermissionHandlerNotifications new]; - NSString *lockId = [self lockHandler:(id)handler]; - - [handler checkWithResolver:^(RNPermissionStatus status, NSDictionary * _Nonnull settings) { - resolve(@{ @"status": [self stringForStatus:status], @"settings": settings }); - [self unlockHandler:lockId]; - } rejecter:^(NSError * _Nonnull error) { - reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); - [self unlockHandler:lockId]; - }]; -#else - reject(@"notifications_pod_missing", @"Notifications permission pod is missing", nil); -#endif -} - -RCT_EXPORT_METHOD(requestNotifications:(NSArray * _Nonnull)options - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { -#if __has_include("RNPermissionHandlerNotifications.h") - RNPermissionHandlerNotifications *handler = [RNPermissionHandlerNotifications new]; - NSString *lockId = [self lockHandler:(id)handler]; - - [handler requestWithResolver:^(RNPermissionStatus status, NSDictionary * _Nonnull settings) { - resolve(@{ @"status": [self stringForStatus:status], @"settings": settings }); - [self unlockHandler:lockId]; - } rejecter:^(NSError * _Nonnull error) { - reject([NSString stringWithFormat:@"%ld", (long)error.code], error.localizedDescription, error); - [self unlockHandler:lockId]; - } options:options]; -#else - reject(@"notifications_pod_missing", @"Notifications permission pod is missing", nil); -#endif -} - -RCT_EXPORT_METHOD(openPhotoPicker:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { -#if __has_include("RNPermissionHandlerPhotoLibrary.h") - RNPermissionHandlerPhotoLibrary *handler = [RNPermissionHandlerPhotoLibrary new]; - [handler openPhotoPickerWithResolver:resolve rejecter:reject]; -#else - reject(@"photo_library_pod_missing", @"PhotoLibrary permission pod is missing", nil); -#endif -} - -RCT_EXPORT_METHOD(checkLocationAccuracy:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { -#if __has_include("RNPermissionHandlerLocationAccuracy.h") - [self checkUsageDescriptionKeys:[RNPermissionHandlerLocationAccuracy usageDescriptionKeys]]; - - RNPermissionHandlerLocationAccuracy *handler = [RNPermissionHandlerLocationAccuracy new]; - [handler checkWithResolver:resolve rejecter:reject]; -#else - reject(@"location_accuracy_pod_missing", @"LocationAccuracy permission pod is missing", nil); -#endif -} - -RCT_EXPORT_METHOD(requestLocationAccuracy:(NSString * _Nonnull)purposeKey - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject) { -#if __has_include("RNPermissionHandlerLocationAccuracy.h") - [self checkUsageDescriptionKeys:[RNPermissionHandlerLocationAccuracy usageDescriptionKeys]]; - - RNPermissionHandlerLocationAccuracy *handler = [RNPermissionHandlerLocationAccuracy new]; - [handler requestWithPurposeKey:purposeKey resolver:resolve rejecter:reject]; -#else - reject(@"location_accuracy_pod_missing", @"LocationAccuracy permission pod is missing", nil); -#endif -} - -- (void)checkMultiple:(NSArray *)permissions - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject { - reject(@"RNPermissions:checkMultiple", @"checkMultiple is not supported on iOS", nil); -} - -- (void)requestMultiple:(NSArray *)permissions - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject { - reject(@"RNPermissions:requestMultiple", @"requestMultiple is not supported on iOS", nil); -} - -- (void)shouldShowRequestRationale:(NSString *)permission - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject { - reject(@"RNPermissions:shouldShowRequestRationale", @"shouldShowRequestRationale is not supported on iOS", nil); -} - -#if RCT_NEW_ARCH_ENABLED - -- (std::shared_ptr)getTurboModule:(const facebook::react::ObjCTurboModule::InitParams &)params { - return std::make_shared(params); -} - -- (facebook::react::ModuleConstants)getConstants { - return [self constantsToExport]; -} - -#endif - -@end diff --git a/ios/RNPermissions.xcodeproj/project.pbxproj b/ios/RNPermissions.xcodeproj/project.pbxproj index ec6f3018..289a6929 100644 --- a/ios/RNPermissions.xcodeproj/project.pbxproj +++ b/ios/RNPermissions.xcodeproj/project.pbxproj @@ -7,7 +7,7 @@ objects = { /* Begin PBXBuildFile section */ - DD3987E62A091920007E27CF /* RNPermissions.mm in Sources */ = {isa = PBXBuildFile; fileRef = DD3987E42A091920007E27CF /* RNPermissions.mm */; }; + DD95B2F622D398C1000B5FC6 /* RNPermissions.m in Sources */ = {isa = PBXBuildFile; fileRef = DD95B2F422D398C1000B5FC6 /* RNPermissions.m */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -24,8 +24,8 @@ /* Begin PBXFileReference section */ 134814201AA4EA6300B7C361 /* libRNPermissions.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNPermissions.a; sourceTree = BUILT_PRODUCTS_DIR; }; - DD3987E32A091920007E27CF /* RNPermissions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNPermissions.h; sourceTree = ""; }; - DD3987E42A091920007E27CF /* RNPermissions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RNPermissions.mm; sourceTree = ""; }; + DD95B2F422D398C1000B5FC6 /* RNPermissions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNPermissions.m; sourceTree = ""; }; + DD95B2F522D398C1000B5FC6 /* RNPermissions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNPermissions.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -50,8 +50,8 @@ 58B511D21A9E6C8500147676 = { isa = PBXGroup; children = ( - DD3987E32A091920007E27CF /* RNPermissions.h */, - DD3987E42A091920007E27CF /* RNPermissions.mm */, + DD95B2F522D398C1000B5FC6 /* RNPermissions.h */, + DD95B2F422D398C1000B5FC6 /* RNPermissions.m */, 134814211AA4EA7D00B7C361 /* Products */, ); indentWidth = 2; @@ -95,7 +95,7 @@ }; buildConfigurationList = 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "RNPermissions" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = en; + developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, @@ -115,7 +115,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - DD3987E62A091920007E27CF /* RNPermissions.mm in Sources */, + DD95B2F622D398C1000B5FC6 /* RNPermissions.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ios/LocalNetworkPrivacy/RNPermissionsHelper.h b/ios/RNPermissionsHelper.h similarity index 100% rename from ios/LocalNetworkPrivacy/RNPermissionsHelper.h rename to ios/RNPermissionsHelper.h diff --git a/ios/RNPermissionsHelper.m b/ios/RNPermissionsHelper.m new file mode 100644 index 00000000..aaa4b96e --- /dev/null +++ b/ios/RNPermissionsHelper.m @@ -0,0 +1,27 @@ +#import "RNPermissionsHelper.h" + +@implementation RNPermissionsHelper + +static NSString* SETTING_KEY = @"@RNPermissions:Requested"; + ++ (bool)isFlaggedAsRequested:(NSString * _Nonnull)handlerId { + NSArray *requested = [[NSUserDefaults standardUserDefaults] arrayForKey:SETTING_KEY]; + return requested == nil ? false : [requested containsObject:handlerId]; +} + ++ (void)flagAsRequested:(NSString * _Nonnull)handlerId { + NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; + NSMutableArray *requested = [[userDefaults arrayForKey:SETTING_KEY] mutableCopy]; + + if (requested == nil) { + requested = [NSMutableArray new]; + } + + if (![requested containsObject:handlerId]) { + [requested addObject:handlerId]; + [userDefaults setObject:requested forKey:SETTING_KEY]; + [userDefaults synchronize]; + } +} + +@end diff --git a/ios/RNPermissionsModule.h b/ios/RNPermissionsModule.h new file mode 100644 index 00000000..d8ec4a1d --- /dev/null +++ b/ios/RNPermissionsModule.h @@ -0,0 +1,20 @@ +#ifdef RCT_NEW_ARCH_ENABLED +#import +#else +#import +#endif + +#import +#import "RNPermissionsHelper.h" + +@interface RCTConvert (RNPermission) + +@end + +#ifdef RCT_NEW_ARCH_ENABLED +@interface RNPermissionsModule : NSObject +#else +@interface RNPermissionsModule : NSObject +#endif + +@end diff --git a/ios/LocalNetworkPrivacy/RNPermissionsModule.mm b/ios/RNPermissionsModule.mm similarity index 100% rename from ios/LocalNetworkPrivacy/RNPermissionsModule.mm rename to ios/RNPermissionsModule.mm diff --git a/ios/Reminders/Permission-Reminders.podspec b/ios/Reminders/Permission-Reminders.podspec new file mode 100644 index 00000000..93bd7fa6 --- /dev/null +++ b/ios/Reminders/Permission-Reminders.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Reminders" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Reminders/RNPermissionHandlerReminders.h b/ios/Reminders/RNPermissionHandlerReminders.h index 35da1c5a..a168043c 100644 --- a/ios/Reminders/RNPermissionHandlerReminders.h +++ b/ios/Reminders/RNPermissionHandlerReminders.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerReminders : NSObject diff --git a/ios/Reminders/RNPermissionHandlerReminders.mm b/ios/Reminders/RNPermissionHandlerReminders.m similarity index 67% rename from ios/Reminders/RNPermissionHandlerReminders.mm rename to ios/Reminders/RNPermissionHandlerReminders.m index 2fe34619..64b4aa74 100644 --- a/ios/Reminders/RNPermissionHandlerReminders.mm +++ b/ios/Reminders/RNPermissionHandlerReminders.m @@ -1,11 +1,11 @@ #import "RNPermissionHandlerReminders.h" -#import +@import EventKit; @implementation RNPermissionHandlerReminders + (NSArray * _Nonnull)usageDescriptionKeys { - return @[@"NSRemindersFullAccessUsageDescription"]; + return @[@"NSRemindersUsageDescription"]; } + (NSString * _Nonnull)handlerUniqueId { @@ -20,30 +20,22 @@ - (void)checkWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve case EKAuthorizationStatusRestricted: return resolve(RNPermissionStatusRestricted); case EKAuthorizationStatusDenied: - case EKAuthorizationStatusWriteOnly: return resolve(RNPermissionStatusDenied); - case EKAuthorizationStatusFullAccess: + case EKAuthorizationStatusAuthorized: return resolve(RNPermissionStatusAuthorized); } } - (void)requestWithResolver:(void (^ _Nonnull)(RNPermissionStatus))resolve rejecter:(void (^ _Nonnull)(NSError * _Nonnull))reject { - EKEventStore *store = [EKEventStore new]; - - void (^completion)(BOOL, NSError * _Nullable) = ^(__unused BOOL granted, NSError * _Nullable error) { + [[EKEventStore new] requestAccessToEntityType:EKEntityTypeReminder + completion:^(__unused BOOL granted, NSError * _Nullable error) { if (error != nil) { reject(error); } else { [self checkWithResolver:resolve rejecter:reject]; } - }; - - if (@available(iOS 17.0, *)) { - [store requestFullAccessToRemindersWithCompletion:completion]; - } else { - [store requestAccessToEntityType:EKEntityTypeReminder completion:completion]; - } + }]; } @end diff --git a/ios/Siri/Permission-Siri.podspec b/ios/Siri/Permission-Siri.podspec new file mode 100644 index 00000000..09e4778c --- /dev/null +++ b/ios/Siri/Permission-Siri.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-Siri" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/Siri/RNPermissionHandlerSiri.h b/ios/Siri/RNPermissionHandlerSiri.h index 5adf78cb..3d912985 100644 --- a/ios/Siri/RNPermissionHandlerSiri.h +++ b/ios/Siri/RNPermissionHandlerSiri.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerSiri : NSObject diff --git a/ios/Siri/RNPermissionHandlerSiri.mm b/ios/Siri/RNPermissionHandlerSiri.m similarity index 97% rename from ios/Siri/RNPermissionHandlerSiri.mm rename to ios/Siri/RNPermissionHandlerSiri.m index 7c60741f..0b6e8249 100644 --- a/ios/Siri/RNPermissionHandlerSiri.mm +++ b/ios/Siri/RNPermissionHandlerSiri.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerSiri.h" -#import +@import Intents; @implementation RNPermissionHandlerSiri diff --git a/ios/SpeechRecognition/Permission-SpeechRecognition.podspec b/ios/SpeechRecognition/Permission-SpeechRecognition.podspec new file mode 100644 index 00000000..959505f4 --- /dev/null +++ b/ios/SpeechRecognition/Permission-SpeechRecognition.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-SpeechRecognition" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.h b/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.h index 9e9a304b..8a390535 100644 --- a/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.h +++ b/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerSpeechRecognition : NSObject diff --git a/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.mm b/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.m similarity index 98% rename from ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.mm rename to ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.m index afe8d004..a1cf861e 100644 --- a/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.mm +++ b/ios/SpeechRecognition/RNPermissionHandlerSpeechRecognition.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerSpeechRecognition.h" -#import +@import Speech; @implementation RNPermissionHandlerSpeechRecognition diff --git a/ios/StoreKit/Permission-StoreKit.podspec b/ios/StoreKit/Permission-StoreKit.podspec new file mode 100644 index 00000000..3df03e49 --- /dev/null +++ b/ios/StoreKit/Permission-StoreKit.podspec @@ -0,0 +1,20 @@ +require 'json' +package = JSON.parse(File.read('../../package.json')) + +Pod::Spec.new do |s| + s.name = "Permission-StoreKit" + s.dependency "RNPermissions" + + s.version = package["version"] + s.license = package["license"] + s.summary = package["description"] + s.authors = package["author"] + s.homepage = package["homepage"] + + s.ios.deployment_target = "10.0" + s.tvos.deployment_target = "11.0" + s.requires_arc = true + + s.source = { :git => package["repository"]["url"], :tag => s.version } + s.source_files = "*.{h,m}" +end diff --git a/ios/StoreKit/RNPermissionHandlerStoreKit.h b/ios/StoreKit/RNPermissionHandlerStoreKit.h index d30b534e..2af97eb7 100644 --- a/ios/StoreKit/RNPermissionHandlerStoreKit.h +++ b/ios/StoreKit/RNPermissionHandlerStoreKit.h @@ -1,4 +1,4 @@ -#import "RNPermissions.h" +#import "RNPermissionsHelper.h" @interface RNPermissionHandlerStoreKit : NSObject diff --git a/ios/StoreKit/RNPermissionHandlerStoreKit.mm b/ios/StoreKit/RNPermissionHandlerStoreKit.m similarity index 97% rename from ios/StoreKit/RNPermissionHandlerStoreKit.mm rename to ios/StoreKit/RNPermissionHandlerStoreKit.m index a107d62e..7467783c 100644 --- a/ios/StoreKit/RNPermissionHandlerStoreKit.mm +++ b/ios/StoreKit/RNPermissionHandlerStoreKit.m @@ -1,6 +1,6 @@ #import "RNPermissionHandlerStoreKit.h" -#import +@import StoreKit; @implementation RNPermissionHandlerStoreKit diff --git a/mock.js b/mock.js index 5687b393..3e5a9aa1 100644 --- a/mock.js +++ b/mock.js @@ -12,7 +12,7 @@ const {RESULTS} = require('./dist/commonjs/results'); const PERMISSIONS = {ANDROID, IOS, WINDOWS}; export {PERMISSIONS, RESULTS}; -export const openPhotoPicker = jest.fn(async () => {}); +export const openLimitedPhotoLibraryPicker = jest.fn(async () => {}); export const openSettings = jest.fn(async () => {}); export const check = jest.fn(async (permission) => RESULTS.GRANTED); export const request = jest.fn(async (permission) => RESULTS.GRANTED); @@ -72,7 +72,7 @@ export default { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings, request, requestLocationAccuracy, diff --git a/package.json b/package.json index 6f7f17d2..3621b1b9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-native-permissions", - "version": "4.1.5", + "version": "3.8.0", "license": "MIT", "description": "An unified permissions API for React Native on iOS, Android and Windows", "author": "Mathieu Acthernoene ", @@ -25,20 +25,18 @@ "!/android/build", "/dist", "/ios", - "/scripts", "/windows", "/src", "/*.podspec", - "app.plugin.js", - "mock.js", - "react-native.config.js" + "react-native.config.js", + "mock.js" ], "scripts": { "format": "prettier '**/*' -u -w", - "lint": "eslint './**/*.{js,ts,tsx}'", - "typecheck": "tsc --noEmit", - "build": "bob build", - "prepack": "prettier '**/*' -u -c && yarn lint && yarn typecheck && yarn build" + "lint": "eslint \"./**/*.{js,ts,tsx}\"", + "setup-hooks": "git config --local core.hooksPath .hooks", + "prepack": "bob build", + "typecheck": "tsc --project ./ --noEmit" }, "react-native-builder-bob": { "source": "src", @@ -49,8 +47,12 @@ "typescript" ] }, + "lint-staged": { + "**/*.{js,ts,tsx}": "eslint", + "*": "prettier -u -w" + }, "codegenConfig": { - "name": "RNPermissionsSpec", + "name": "rnpermissions", "type": "modules", "jsSrcsDir": "./src", "android": { @@ -58,30 +60,32 @@ } }, "peerDependencies": { - "react": ">=18.1.0", - "react-native": ">=0.70.0", - "react-native-windows": ">=0.70.0" + "react": ">=16.13.1", + "react-native": ">=0.63.3", + "react-native-windows": ">=0.62.0" }, "peerDependenciesMeta": { "react-native-windows": { "optional": true } }, + "dependencies": { + "picocolors": "^1.0.0", + "pkg-dir": "^5.0.0" + }, "devDependencies": { - "@babel/core": "^7.20.0", - "@babel/preset-env": "^7.20.0", - "@expo/config-plugins": "^7.8.4", - "@types/react": "^18.2.47", - "@typescript-eslint/eslint-plugin": "^6.18.0", - "@typescript-eslint/parser": "^6.18.0", - "eslint": "^8.56.0", - "eslint-plugin-react": "^7.33.2", + "@types/react": "^18.0.28", + "@typescript-eslint/eslint-plugin": "^5.55.0", + "@typescript-eslint/parser": "^5.55.0", + "eslint": "^8.36.0", + "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", - "prettier": "^3.1.1", - "prettier-plugin-organize-imports": "^3.2.4", - "react": "18.2.0", - "react-native": "0.73.4", - "react-native-builder-bob": "^0.23.2", - "typescript": "^5.3.3" + "lint-staged": "^13.2.0", + "prettier": "^2.8.4", + "prettier-plugin-organize-imports": "^3.2.2", + "react": "^18.2.0", + "react-native": "^0.71.4", + "react-native-builder-bob": "^0.20.4", + "typescript": "^4.9.5" } } diff --git a/react-native.config.js b/react-native.config.js new file mode 100644 index 00000000..6d0c4acf --- /dev/null +++ b/react-native.config.js @@ -0,0 +1,74 @@ +const {existsSync} = require('fs'); +const fs = require('fs/promises'); +const path = require('path'); +const pc = require('picocolors'); +const pkgDir = require('pkg-dir'); + +const CONFIG_KEY = 'reactNativePermissionsIOS'; + +const log = { + error: (text) => console.log(pc.red(text)), + warning: (text) => console.log(pc.yellow(text)), +}; + +module.exports = { + commands: [ + { + name: 'setup-ios-permissions', + description: + 'Update react-native-permissions podspec to link additional permission handlers.', + func: async () => { + const rootDir = pkgDir.sync() || process.cwd(); + const pkgPath = path.join(rootDir, 'package.json'); + const pkg = await fs.readFile(pkgPath, 'utf-8'); + const jsonPath = path.join(rootDir, `${CONFIG_KEY}.json`); + + let config = JSON.parse(pkg)[CONFIG_KEY]; + + if (!config && existsSync(jsonPath)) { + const text = await fs.readFile(jsonPath, 'utf-8'); + config = JSON.parse(text); + } + + if (!config) { + log.error( + `No config detected. In order to setup iOS permissions, you first need to add an "${CONFIG_KEY}" array in your package.json.`, + ); + + process.exit(1); + } + + if (!Array.isArray(config) || config.length === 0) { + log.error(`Invalid "${CONFIG_KEY}" config detected. It must be a non-empty array.`); + process.exit(1); + } + + const iosDirPath = path.join(__dirname, 'ios'); + const podspecPath = path.join(__dirname, 'RNPermissions.podspec'); + const iosDir = await fs.readdir(iosDirPath, {withFileTypes: true}); + const podspec = await fs.readFile(podspecPath, 'utf-8'); + + const directories = iosDir + .filter((dirent) => dirent.isDirectory() || dirent.name.endsWith('.xcodeproj')) + .map((dirent) => dirent.name) + .filter((name) => config.includes(name)); + + const unknownPermissions = config + .filter((name) => !directories.includes(name)) + .map((name) => `"${name}"`); + + if (unknownPermissions.length > 0) { + log.warning(`Unknown iOS permissions: ${unknownPermissions.join(', ')}`); + } + + const sourceFiles = [ + '"ios/*.{h,m,mm}"', + ...directories.map((name) => `"ios/${name}/*.{h,m,mm}"`), + ]; + + const podspecContent = podspec.replace(/"ios\/\*\.{h,m,mm}".*/, sourceFiles.join(', ')); + return fs.writeFile(podspecPath, podspecContent, 'utf-8'); + }, + }, + ], +}; diff --git a/src/NativePermissionsModule.ts b/src/NativePermissionsModule.ts new file mode 100644 index 00000000..7d524a21 --- /dev/null +++ b/src/NativePermissionsModule.ts @@ -0,0 +1,29 @@ +import {TurboModule, TurboModuleRegistry} from 'react-native'; + +type NotificationsResponse = { + status: Object; + settings: Object; +}; + +export interface Spec extends TurboModule { + checkNotifications(): Promise; + openSettings(): Promise; + + // Android only part + checkMultiplePermissions(permissions: string[]): Promise; + checkPermission(permission: string): Promise; + requestMultiplePermissions(permissions: string[]): Promise; + requestPermission(permission: string): Promise; + shouldShowRequestPermissionRationale(permission: string): Promise; + + // iOS only part + check(permission: string): Promise; // TODO: should be number prolly + checkLocationAccuracy(): Promise; + getConstants(): {available?: string[]}; + openLimitedPhotoLibraryPicker(): Promise; + request(permission: string): Promise; // TODO: should be number prolly + requestLocationAccuracy(purposeKey: string): Promise; + requestNotifications(options: string[]): Promise; +} + +export default TurboModuleRegistry.getEnforcing('RNPermissionsModule'); diff --git a/src/NativeRNPermissions.ts b/src/NativeRNPermissions.ts deleted file mode 100644 index b084875e..00000000 --- a/src/NativeRNPermissions.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type {TurboModule} from 'react-native'; -import {TurboModuleRegistry} from 'react-native'; - -type NotificationsResponse = { - status: Object; - settings: Object; -}; - -export interface Spec extends TurboModule { - getConstants(): { - available: string[]; - }; - - openSettings(): Promise; - check(permission: string): Promise; - checkNotifications(): Promise; - request(permission: string): Promise; - requestNotifications(options: string[]): Promise; - - // Android only part - checkMultiple(permissions: string[]): Promise; - requestMultiple(permissions: string[]): Promise; - shouldShowRequestRationale(permission: string): Promise; - - // iOS only part - checkLocationAccuracy(): Promise; - openPhotoPicker(): Promise; - requestLocationAccuracy(purposeKey: string): Promise; -} - -export default TurboModuleRegistry.getEnforcing('RNPermissions'); diff --git a/src/contract.ts b/src/contract.ts index 13182cd7..956202d3 100644 --- a/src/contract.ts +++ b/src/contract.ts @@ -12,14 +12,12 @@ export type Contract = { check(permission: Permission): Promise; checkLocationAccuracy(): Promise; checkNotifications(): Promise; - openPhotoPicker(): Promise; + openLimitedPhotoLibraryPicker(): Promise; openSettings(): Promise; - request( - permission: Permission, - rationale?: Rationale | (() => Promise), - ): Promise; + request(permission: Permission, rationale?: Rationale): Promise; requestLocationAccuracy(options: LocationAccuracyOptions): Promise; requestNotifications(options: NotificationOption[]): Promise; + checkMultiple

( permissions: P, ): Promise>; diff --git a/src/expo.ts b/src/expo.ts deleted file mode 100644 index 3595c6fd..00000000 --- a/src/expo.ts +++ /dev/null @@ -1,75 +0,0 @@ -import {ConfigPlugin, withDangerousMod} from '@expo/config-plugins'; -import {mergeContents} from '@expo/config-plugins/build/utils/generateCode'; -import * as fs from 'fs/promises'; -import * as path from 'path'; - -type Props = { - iosPermissions?: ( - | 'AppTrackingTransparency' - | 'Bluetooth' - | 'Calendars' - | 'CalendarsWriteOnly' - | 'Camera' - | 'Contacts' - | 'FaceID' - | 'LocationAccuracy' - | 'LocationAlways' - | 'LocationWhenInUse' - | 'MediaLibrary' - | 'Microphone' - | 'Motion' - | 'Notifications' - | 'PhotoLibrary' - | 'PhotoLibraryAddOnly' - | 'Reminders' - | 'Siri' - | 'SpeechRecognition' - | 'StoreKit' - )[]; -}; - -const withPermissions: ConfigPlugin = (config, {iosPermissions = []}) => - withDangerousMod(config, [ - 'ios', - async (config) => { - const file = path.join(config.modRequest.platformProjectRoot, 'Podfile'); - const contents = await fs.readFile(file, 'utf8'); - - if (iosPermissions.length === 0) { - return config; - } - - const withRequire = mergeContents({ - tag: 'require', - src: contents, - anchor: - /^require File\.join\(File\.dirname\(`node --print "require\.resolve\('react-native\/package\.json'\)"`\), "scripts\/react_native_pods"\)$/m, - newSrc: `require File.join(File.dirname(\`node --print "require.resolve('react-native-permissions/package.json')"\`), "scripts/setup")`, - offset: 1, - comment: '#', - }); - - const withSetup = mergeContents({ - tag: 'setup', - src: withRequire.contents, - anchor: /^prepare_react_native_project!$/m, - newSrc: `setup_permissions([ -${iosPermissions.map((permission) => ` '${permission}',`).join('\n')} -])`, - offset: 1, - comment: '#', - }); - - if (!withRequire.didMerge || !withSetup.didMerge) { - console.error( - "ERROR: Cannot add react-native-permissions to the project's ios/Podfile because it's malformed. Please report this with a copy of your project Podfile.", - ); - return config; - } - - await fs.writeFile(file, withSetup.contents, 'utf-8'); - return config; - }, - ]); - -export default withPermissions; diff --git a/src/index.ts b/src/index.ts index e5636693..9409a7b0 100644 --- a/src/index.ts +++ b/src/index.ts @@ -10,7 +10,7 @@ export const check = methods.check; export const checkLocationAccuracy = methods.checkLocationAccuracy; export const checkMultiple = methods.checkMultiple; export const checkNotifications = methods.checkNotifications; -export const openPhotoPicker = methods.openPhotoPicker; +export const openLimitedPhotoLibraryPicker = methods.openLimitedPhotoLibraryPicker; export const openSettings = methods.openSettings; export const request = methods.request; export const requestLocationAccuracy = methods.requestLocationAccuracy; @@ -25,7 +25,7 @@ export default { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings, request, requestLocationAccuracy, diff --git a/src/methods.android.ts b/src/methods.android.ts index 97d60623..2420c5a0 100644 --- a/src/methods.android.ts +++ b/src/methods.android.ts @@ -1,16 +1,10 @@ import {Alert, AlertButton} from 'react-native'; -import NativeModule from './NativeRNPermissions'; import type {Contract} from './contract'; -import type { - NotificationOption, - NotificationsResponse, - Permission, - PermissionStatus, - Rationale, -} from './types'; +import NativeModule from './NativePermissionsModule'; +import type {NotificationsResponse, Permission, PermissionStatus, Rationale} from './types'; import { checkLocationAccuracy, - openPhotoPicker, + openLimitedPhotoLibraryPicker, requestLocationAccuracy, } from './unsupportedPlatformMethods'; import {platformVersion, uniq} from './utils'; @@ -22,39 +16,39 @@ async function openSettings(): Promise { } function check(permission: Permission): Promise { - return NativeModule.check(permission) as Promise; + return NativeModule.checkPermission(permission) as Promise; } -async function showRationaleAlert(rationale: Rationale): Promise { - return new Promise((resolve) => { - const {title, message, buttonPositive, buttonNegative, buttonNeutral} = rationale; - const buttons: AlertButton[] = []; +async function request(permission: Permission, rationale?: Rationale): Promise { + if (rationale) { + const shouldShowRationale = await NativeModule.shouldShowRequestPermissionRationale(permission); - if (buttonNegative) { - const onPress = () => resolve(false); - buttonNeutral && buttons.push({text: buttonNeutral, onPress}); - buttons.push({text: buttonNegative, onPress}); - } + if (shouldShowRationale) { + const {title, message, buttonPositive, buttonNegative, buttonNeutral} = rationale; - buttons.push({text: buttonPositive, onPress: () => resolve(true)}); - Alert.alert(title, message, buttons, {cancelable: false}); - }); -} + return new Promise((resolve) => { + const buttons: AlertButton[] = []; + + if (buttonNegative) { + const onPress = () => + resolve(NativeModule.checkPermission(permission) as Promise); + + buttonNeutral && buttons.push({text: buttonNeutral, onPress}); + buttons.push({text: buttonNegative, onPress}); + } -async function request( - permission: Permission, - rationale?: Rationale | (() => Promise), -): Promise { - if (rationale == null || !(await NativeModule.shouldShowRequestRationale(permission))) { - return NativeModule.request(permission) as Promise; + buttons.push({ + text: buttonPositive, + onPress: () => + resolve(NativeModule.requestPermission(permission) as Promise), + }); + + Alert.alert(title, message, buttons, {cancelable: false}); + }); + } } - return (typeof rationale === 'function' ? rationale() : showRationaleAlert(rationale)).then( - (shouldRequest) => - (shouldRequest - ? NativeModule.request(permission) - : NativeModule.check(permission)) as Promise, - ); + return NativeModule.requestPermission(permission) as Promise; } async function checkNotifications(): Promise { @@ -66,9 +60,9 @@ async function checkNotifications(): Promise { return {status, settings: {}}; } -async function requestNotifications(options: NotificationOption[]): Promise { +async function requestNotifications(): Promise { if (platformVersion < TIRAMISU_VERSION_CODE) { - return NativeModule.requestNotifications(options) as Promise; + return NativeModule.checkNotifications() as Promise; } const status = await request('android.permission.POST_NOTIFICATIONS'); @@ -79,14 +73,18 @@ function checkMultiple

( permissions: P, ): Promise> { const dedup = uniq(permissions); - return NativeModule.checkMultiple(dedup) as Promise>; + return NativeModule.checkMultiplePermissions(dedup) as Promise< + Record + >; } function requestMultiple

( permissions: P, ): Promise> { const dedup = uniq(permissions); - return NativeModule.requestMultiple(dedup) as Promise>; + return NativeModule.requestMultiplePermissions(dedup) as Promise< + Record + >; } export const methods: Contract = { @@ -94,7 +92,7 @@ export const methods: Contract = { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings, request, requestLocationAccuracy, diff --git a/src/methods.ios.ts b/src/methods.ios.ts index 21f208a1..0c77e816 100644 --- a/src/methods.ios.ts +++ b/src/methods.ios.ts @@ -1,5 +1,5 @@ import type {Contract} from './contract'; -import NativeModule from './NativeRNPermissions'; +import NativeModule from './NativePermissionsModule'; import {RESULTS} from './results'; import type { LocationAccuracy, @@ -13,7 +13,7 @@ import {uniq} from './utils'; let available: string[] | undefined = undefined; -function getAvailable(): string[] { +function getAvailable(): string[] | undefined { if (available == null) { available = NativeModule.getConstants().available; } @@ -21,8 +21,8 @@ function getAvailable(): string[] { return available; } -async function openPhotoPicker(): Promise { - await NativeModule.openPhotoPicker(); +async function openLimitedPhotoLibraryPicker(): Promise { + await NativeModule.openLimitedPhotoLibraryPicker(); } async function openSettings(): Promise { @@ -30,13 +30,13 @@ async function openSettings(): Promise { } async function check(permission: Permission): Promise { - return getAvailable().includes(permission) + return getAvailable()?.includes(permission) ? (NativeModule.check(permission) as Promise) : RESULTS.UNAVAILABLE; } async function request(permission: Permission): Promise { - return getAvailable().includes(permission) + return getAvailable()?.includes(permission) ? (NativeModule.request(permission) as Promise) : RESULTS.UNAVAILABLE; } @@ -85,7 +85,7 @@ async function requestMultiple

( const dedup = uniq(permissions); for (let index = 0; index < dedup.length; index++) { - const permission = dedup[index] as P[number]; + const permission: P[number] = dedup[index]; output[permission] = await request(permission); } @@ -97,7 +97,7 @@ export const methods: Contract = { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings, request, requestLocationAccuracy, diff --git a/src/methods.ts b/src/methods.ts index aa854225..4c509a03 100644 --- a/src/methods.ts +++ b/src/methods.ts @@ -3,7 +3,7 @@ import {RESULTS} from './results'; import type {NotificationsResponse, Permission, PermissionStatus} from './types'; import { checkLocationAccuracy, - openPhotoPicker, + openLimitedPhotoLibraryPicker, requestLocationAccuracy, } from './unsupportedPlatformMethods'; @@ -18,13 +18,10 @@ async function checkNotifications(): Promise { async function checkMultiple

( permissions: P, ): Promise> { - return permissions.reduce( - (acc, permission: P[number]) => { - acc[permission] = RESULTS.UNAVAILABLE; - return acc; - }, - {} as Record, - ); + return permissions.reduce((acc, permission: P[number]) => { + acc[permission] = RESULTS.UNAVAILABLE; + return acc; + }, {} as Record); } export const methods: Contract = { @@ -32,7 +29,7 @@ export const methods: Contract = { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings: Promise.reject, request: check, requestLocationAccuracy, diff --git a/src/methods.windows.ts b/src/methods.windows.ts index f7364bcb..da615cc6 100644 --- a/src/methods.windows.ts +++ b/src/methods.windows.ts @@ -3,7 +3,7 @@ import type {Contract} from './contract'; import type {NotificationsResponse, Permission, PermissionStatus} from './types'; import { checkLocationAccuracy, - openPhotoPicker, + openLimitedPhotoLibraryPicker, requestLocationAccuracy, } from './unsupportedPlatformMethods'; import {uniq} from './utils'; @@ -57,7 +57,7 @@ async function requestMultiple

( const dedup = uniq(permissions); for (let index = 0; index < dedup.length; index++) { - const permission = dedup[index] as P[number]; + const permission: P[number] = dedup[index]; output[permission] = await request(permission); } @@ -69,7 +69,7 @@ export const methods: Contract = { checkLocationAccuracy, checkMultiple, checkNotifications, - openPhotoPicker, + openLimitedPhotoLibraryPicker, openSettings, request, requestLocationAccuracy, diff --git a/src/permissions.android.ts b/src/permissions.android.ts index ee15437f..34bf9c44 100644 --- a/src/permissions.android.ts +++ b/src/permissions.android.ts @@ -28,7 +28,6 @@ const ANDROID = Object.freeze({ READ_MEDIA_AUDIO: 'android.permission.READ_MEDIA_AUDIO', READ_MEDIA_IMAGES: 'android.permission.READ_MEDIA_IMAGES', READ_MEDIA_VIDEO: 'android.permission.READ_MEDIA_VIDEO', - READ_MEDIA_VISUAL_USER_SELECTED: 'android.permission.READ_MEDIA_VISUAL_USER_SELECTED', READ_PHONE_NUMBERS: 'android.permission.READ_PHONE_NUMBERS', READ_PHONE_STATE: 'android.permission.READ_PHONE_STATE', READ_SMS: 'android.permission.READ_SMS', diff --git a/src/unsupportedPlatformMethods.ts b/src/unsupportedPlatformMethods.ts index aa64a9a0..fbbdfac3 100644 --- a/src/unsupportedPlatformMethods.ts +++ b/src/unsupportedPlatformMethods.ts @@ -12,6 +12,6 @@ export async function requestLocationAccuracy( throw new Error(IOS_14); } -export async function openPhotoPicker(): Promise { +export async function openLimitedPhotoLibraryPicker(): Promise { throw new Error(IOS_14); } diff --git a/tsconfig.json b/tsconfig.json index 875ad734..21a80d97 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,26 +1,15 @@ { "compilerOptions": { - "module": "ESNext", - "lib": ["ES2017"], "jsx": "react-native", + "lib": ["ES2016"], "moduleResolution": "Node", + "target": "ES5", "allowJs": false, "strict": true, - "declaration": true, - "sourceMap": true, - "stripInternal": true, - "skipLibCheck": true, - - "allowUnreachableCode": false, - "allowUnusedLabels": false, - "noFallthroughCasesInSwitch": true, - "noImplicitOverride": true, - "noImplicitReturns": false, - "noUncheckedIndexedAccess": true, - "noUnusedLocals": true, - "noUnusedParameters": true, + "esModuleInterop": true, + "skipLibCheck": true }, - "include": ["src"], - "exclude": ["example", "node_modules"], + "include": ["src/**/*.ts"], + "exclude": ["node_modules"] } diff --git a/windows/RNPermissions/RNPermissions.vcxproj b/windows/RNPermissions/RNPermissions.vcxproj index be06da71..5b3bb0ad 100644 --- a/windows/RNPermissions/RNPermissions.vcxproj +++ b/windows/RNPermissions/RNPermissions.vcxproj @@ -1,6 +1,6 @@ - + true true @@ -14,7 +14,7 @@ Windows Store 10.0 10.0.18362.0 - 10.0.17763.0 + 10.0.16299.0 @@ -151,6 +151,13 @@ - + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + diff --git a/windows/RNPermissions/packages.config b/windows/RNPermissions/packages.config index 3c3b8f6c..1447e714 100644 --- a/windows/RNPermissions/packages.config +++ b/windows/RNPermissions/packages.config @@ -1,4 +1,4 @@ - + - - + + \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 2f187b46..3c1504a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,298 +2,292 @@ # yarn lockfile v1 -"@aashutoshrathi/word-wrap@^1.2.3": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" - integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== - "@ampproject/remapping@^2.2.0": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" - integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + version "2.2.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: - "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== - dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" - -"@babel/code-frame@~7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" + integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== dependencies: - "@babel/highlight" "^7.10.4" + "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.3", "@babel/compat-data@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== +"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.1", "@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.13.16", "@babel/core@^7.18.5", "@babel/core@^7.20.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" - integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== + 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.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.9" - "@babel/parser" "^7.23.9" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - convert-source-map "^2.0.0" + "@babel/code-frame" "^7.18.6" + "@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.3" - semver "^6.3.1" + json5 "^2.2.2" + semver "^6.3.0" -"@babel/generator@^7.20.0", "@babel/generator@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== +"@babel/generator@^7.20.0", "@babel/generator@^7.21.3": + 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.23.6" + "@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.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" - integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== +"@babel/helper-annotate-as-pure@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" + integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.18.6" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" - integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz#acd4edfd7a566d1d51ea975dff38fd52906981bb" + integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== dependencies: - "@babel/types" "^7.22.15" + "@babel/helper-explode-assignable-expression" "^7.18.6" + "@babel/types" "^7.18.9" -"@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== +"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": + 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.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" + "@babel/compat-data" "^7.20.5" + "@babel/helper-validator-option" "^7.18.6" + browserslist "^4.21.3" lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.23.6": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.9.tgz#fddfdf51fca28f23d16b9e3935a4732690acfad6" - integrity sha512-B2L9neXTIyPQoXDm+NtovPvG6VOLWnaXu3BIeVDWwdKFgG30oNa6CqVGiJPDWQwIAK49t9gnQI9c6K6RzabiKw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-member-expression-to-functions" "^7.23.0" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - semver "^6.3.1" - -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" - integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" + semver "^6.3.0" + +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz#64f49ecb0020532f19b1d014b03bccaa1ab85fb9" + integrity sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^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.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", "@babel/helper-create-regexp-features-plugin@^7.20.5": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz#53ff78472e5ce10a52664272a239787107603ebb" + integrity sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" regexpu-core "^5.3.1" - semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz#465805b7361f461e86c680f1de21eaf88c25901b" - integrity sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q== +"@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.22.6" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-compilation-targets" "^7.17.7" + "@babel/helper-plugin-utils" "^7.16.7" debug "^4.1.1" lodash.debounce "^4.0.8" resolve "^1.14.2" + semver "^6.1.2" -"@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" + integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== -"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== +"@babel/helper-explode-assignable-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" + integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" + "@babel/types" "^7.18.6" -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== +"@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/types" "^7.22.5" + "@babel/template" "^7.20.7" + "@babel/types" "^7.21.0" -"@babel/helper-member-expression-to-functions@^7.22.15", "@babel/helper-member-expression-to-functions@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" - integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== +"@babel/helper-hoist-variables@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" + integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== dependencies: - "@babel/types" "^7.23.0" - -"@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== - dependencies: - "@babel/types" "^7.22.15" + "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" - -"@babel/helper-optimise-call-expression@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" - integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== - dependencies: - "@babel/types" "^7.22.5" - -"@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.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== - -"@babel/helper-remap-async-to-generator@^7.18.9", "@babel/helper-remap-async-to-generator@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" - integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-wrap-function" "^7.22.20" - -"@babel/helper-replace-supers@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" - integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-member-expression-to-functions" "^7.22.15" - "@babel/helper-optimise-call-expression" "^7.22.5" - -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" - integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-string-parser@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== - -"@babel/helper-validator-identifier@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== - -"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - -"@babel/helper-wrap-function@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" - integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== - dependencies: - "@babel/helper-function-name" "^7.22.5" - "@babel/template" "^7.22.15" - "@babel/types" "^7.22.19" - -"@babel/helpers@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" - integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== - dependencies: - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - -"@babel/highlight@^7.10.4", "@babel/highlight@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" +"@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.21.0" + +"@babel/helper-module-imports@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" + integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@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.20.2" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.2" + "@babel/types" "^7.21.2" + +"@babel/helper-optimise-call-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" + integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== + +"@babel/helper-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== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-wrap-function" "^7.18.9" + "@babel/types" "^7.18.9" + +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" + integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.20.7" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.7" + "@babel/types" "^7.20.7" -"@babel/parser@^7.13.16", "@babel/parser@^7.20.0", "@babel/parser@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" - integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== +"@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.20.2" + +"@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.20.0" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" - integrity sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ== +"@babel/helper-split-export-declaration@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" + integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/types" "^7.18.6" + +"@babel/helper-string-parser@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz#f6652bb16b94f8f9c20c50941e16e9756898dc5d" - integrity sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ== +"@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", "@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.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-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-transform-optional-chaining" "^7.23.3" + "@babel/helper-function-name" "^7.19.0" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.7": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz#516462a95d10a9618f197d39ad291a9b47ae1d7b" - integrity sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw== +"@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/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" + +"@babel/highlight@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.20.0", "@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-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" + integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz#d9c85589258539a22a901033853101a6198d4ef1" + integrity sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-proposal-optional-chaining" "^7.20.7" -"@babel/plugin-proposal-async-generator-functions@^7.0.0": +"@babel/plugin-proposal-async-generator-functions@^7.0.0", "@babel/plugin-proposal-async-generator-functions@^7.20.1": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz#bfb7276d2d573cb67ba379984a2334e262ba5326" integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== @@ -303,7 +297,7 @@ "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.17.12", "@babel/plugin-proposal-class-properties@^7.18.0": +"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.17.12", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -311,15 +305,56 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz#77bdd66fb7b605f3a61302d224bdfacf5547977d" + integrity sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-proposal-dynamic-import@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" + integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-proposal-export-default-from@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.23.3.tgz#6f511a676c540ccc8d17a8553dbba9230b0ddac0" - integrity sha512-Q23MpLZfSGZL1kU7fWqV262q65svLSCIP5kZ/JCW/rKTCm/FrLjpvEd2kfUYMVeHh4QhV/xzyoRAHWrAZJrE3Q== + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.18.10.tgz#091f4794dbce4027c03cf4ebc64d3fb96b75c206" + integrity sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-export-default-from" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-default-from" "^7.18.6" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.0": +"@babel/plugin-proposal-export-namespace-from@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" + integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + +"@babel/plugin-proposal-json-strings@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" + integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-json-strings" "^7.8.3" + +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + +"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== @@ -327,7 +362,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-numeric-separator@^7.0.0": +"@babel/plugin-proposal-numeric-separator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== @@ -335,7 +370,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.20.0": +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== @@ -346,7 +381,7 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.20.7" -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": +"@babel/plugin-proposal-optional-catch-binding@^7.0.0", "@babel/plugin-proposal-optional-catch-binding@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== @@ -354,7 +389,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.20.0": +"@babel/plugin-proposal-optional-chaining@^7.0.0", "@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== @@ -363,10 +398,31 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": - version "7.21.0-placeholder-for-preset-env.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" - integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== +"@babel/plugin-proposal-private-methods@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" + integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-proposal-private-property-in-object@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz#19496bd9883dd83c23c7d7fc45dcd9ad02dfa1dc" + integrity sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + +"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" + integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -375,7 +431,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13": +"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -389,19 +445,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": +"@babel/plugin-syntax-dynamic-import@^7.0.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-export-default-from@^7.0.0", "@babel/plugin-syntax-export-default-from@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.23.3.tgz#7e6d4bf595d5724230200fb2b7401d4734b15335" - integrity sha512-KeENO5ck1IeZ/l2lFZNy+mpobV3D2Zy5C1YFnWm+YuY5mQiAWc4yAp13dqgguwsBsFVLh4LPCEqCa5qW13N+hw== +"@babel/plugin-syntax-export-default-from@^7.0.0", "@babel/plugin-syntax-export-default-from@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.18.6.tgz#8df076711a4818c4ce4f23e61d622b0ba2ff84bc" + integrity sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" @@ -410,33 +466,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.23.3.tgz#084564e0f3cc21ea6c70c44cff984a1c0509729a" - integrity sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-import-assertions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz#9c05a7f592982aff1a2768260ad84bcd3f0c77fc" - integrity sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-import-attributes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz#992aee922cf04512461d7dae3ff6951b90a2dc06" - integrity sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA== +"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz#774d825256f2379d06139be0c723c4dd444f3ca1" + integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-import-meta@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== +"@babel/plugin-syntax-import-assertions@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" @@ -445,12 +487,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" - integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== +"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" @@ -473,7 +515,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -508,507 +550,373 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" - integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-syntax-unicode-sets-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" - integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz#94c6dcfd731af90f27a79509f9ab7fb2120fc38b" - integrity sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ== +"@babel/plugin-syntax-typescript@^7.20.0": + 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.22.5" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-async-generator-functions@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz#9adaeb66fc9634a586c5df139c6240d41ed801ce" - integrity sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-remap-async-to-generator" "^7.22.20" - "@babel/plugin-syntax-async-generators" "^7.8.4" - -"@babel/plugin-transform-async-to-generator@^7.20.0", "@babel/plugin-transform-async-to-generator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz#d1f513c7a8a506d43f47df2bf25f9254b0b051fa" - integrity sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw== +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.18.6": + 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-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-remap-async-to-generator" "^7.22.20" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-block-scoped-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz#fe1177d715fb569663095e04f3598525d98e8c77" - integrity sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A== +"@babel/plugin-transform-async-to-generator@^7.0.0", "@babel/plugin-transform-async-to-generator@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354" + integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-remap-async-to-generator" "^7.18.9" -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz#b2d38589531c6c80fbe25e6b58e763622d2d3cf5" - integrity sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw== +"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" + integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-class-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz#35c377db11ca92a785a718b6aa4e3ed1eb65dc48" - integrity sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg== +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02" + integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-class-static-block@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz#2a202c8787a8964dd11dfcedf994d36bfc844ab5" - integrity sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ== +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665" + integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.23.8": - version "7.23.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz#d08ae096c240347badd68cdf1b6d1624a6435d92" - integrity sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.20" - "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.21.0" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@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", "@babel/plugin-transform-computed-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz#652e69561fcc9d2b50ba4f7ac7f60dcf65e86474" - integrity sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/template" "^7.22.15" - -"@babel/plugin-transform-destructuring@^7.20.0", "@babel/plugin-transform-destructuring@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz#8c9ee68228b12ae3dff986e56ed1ba4f3c446311" - integrity sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw== +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.18.9": + 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.22.5" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" -"@babel/plugin-transform-dotall-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz#3f7af6054882ede89c378d0cf889b854a993da50" - integrity sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ== +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.20.2": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz#73b46d0fd11cd6ef57dea8a381b1215f4959d401" + integrity sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-duplicate-keys@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz#664706ca0a5dfe8d066537f99032fc1dc8b720ce" - integrity sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA== +"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" + integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-dynamic-import@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz#c7629e7254011ac3630d47d7f34ddd40ca535143" - integrity sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ== +"@babel/plugin-transform-duplicate-keys@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" + integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-exponentiation-operator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz#ea0d978f6b9232ba4722f3dbecdd18f450babd18" - integrity sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ== +"@babel/plugin-transform-exponentiation-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" + integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-export-namespace-from@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz#084c7b25e9a5c8271e987a08cf85807b80283191" - integrity sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ== +"@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.18.6": + 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.22.5" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-flow" "^7.18.6" -"@babel/plugin-transform-flow-strip-types@^7.20.0", "@babel/plugin-transform-flow-strip-types@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.23.3.tgz#cfa7ca159cc3306fab526fc67091556b51af26ff" - integrity sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q== +"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.18.8": + 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.22.5" - "@babel/plugin-syntax-flow" "^7.23.3" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-for-of@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz#81c37e24171b37b370ba6aaffa7ac86bcb46f94e" - integrity sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw== +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" + integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-compilation-targets" "^7.18.9" + "@babel/helper-function-name" "^7.18.9" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz#8f424fcd862bf84cb9a1a6b42bc2f47ed630f8dc" - integrity sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw== +"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" + integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== dependencies: - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-json-strings@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz#a871d9b6bd171976efad2e43e694c961ffa3714d" - integrity sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg== +"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" + integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz#8214665f00506ead73de157eba233e7381f3beb4" - integrity sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ== +"@babel/plugin-transform-modules-amd@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a" + integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-logical-assignment-operators@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz#e599f82c51d55fac725f62ce55d3a0886279ecb5" - integrity sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg== +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6": + 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-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/helper-module-transforms" "^7.21.2" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-simple-access" "^7.20.2" -"@babel/plugin-transform-member-expression-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz#e37b3f0502289f477ac0e776b05a833d853cabcc" - integrity sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag== +"@babel/plugin-transform-modules-systemjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz#467ec6bba6b6a50634eea61c9c232654d8a4696e" + integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-identifier" "^7.19.1" -"@babel/plugin-transform-modules-amd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz#e19b55436a1416829df0a1afc495deedfae17f7d" - integrity sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw== +"@babel/plugin-transform-modules-umd@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" + integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4" - integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" + integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-create-regexp-features-plugin" "^7.20.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-modules-systemjs@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz#105d3ed46e4a21d257f83a2f9e2ee4203ceda6be" - integrity sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw== +"@babel/plugin-transform-new-target@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" + integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== dependencies: - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-umd@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz#5d4395fccd071dfefe6585a4411aa7d6b7d769e9" - integrity sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg== +"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" + integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== dependencies: - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" - integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz#18fc4e797cf6d6d972cb8c411dbe8a809fa157db" + integrity sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.5" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-new-target@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz#5491bb78ed6ac87e990957cea367eab781c4d980" - integrity sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ== +"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" + integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-nullish-coalescing-operator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz#45556aad123fc6e52189ea749e33ce090637346e" - integrity sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA== +"@babel/plugin-transform-react-display-name@^7.0.0", "@babel/plugin-transform-react-display-name@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" + integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-numeric-separator@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz#03d08e3691e405804ecdd19dd278a40cca531f29" - integrity sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q== +"@babel/plugin-transform-react-jsx-development@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5" + integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-transform-react-jsx" "^7.18.6" -"@babel/plugin-transform-object-rest-spread@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz#2b9c2d26bf62710460bdc0d1730d4f1048361b83" - integrity sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g== +"@babel/plugin-transform-react-jsx-self@^7.0.0": + 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/compat-data" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.23.3" + "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-object-super@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz#81fdb636dcb306dd2e4e8fd80db5b2362ed2ebcd" - integrity sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA== +"@babel/plugin-transform-react-jsx-source@^7.0.0": + 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.22.5" - "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-optional-catch-binding@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz#318066de6dacce7d92fa244ae475aa8d91778017" - integrity sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A== +"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.18.6": + 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-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-jsx" "^7.18.6" + "@babel/types" "^7.21.0" -"@babel/plugin-transform-optional-chaining@^7.23.3", "@babel/plugin-transform-optional-chaining@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz#6acf61203bdfc4de9d4e52e64490aeb3e52bd017" - integrity sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA== +"@babel/plugin-transform-react-pure-annotations@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz#561af267f19f3e5d59291f9950fd7b9663d0d844" + integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz#83ef5d1baf4b1072fa6e54b2b0999a7b2527e2af" - integrity sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw== +"@babel/plugin-transform-regenerator@^7.18.6": + 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.22.5" + "@babel/helper-plugin-utils" "^7.20.2" + regenerator-transform "^0.15.1" -"@babel/plugin-transform-private-methods@^7.22.5", "@babel/plugin-transform-private-methods@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz#b2d7a3c97e278bfe59137a978d53b2c2e038c0e4" - integrity sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g== +"@babel/plugin-transform-reserved-words@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" + integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-private-property-in-object@^7.22.11", "@babel/plugin-transform-private-property-in-object@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz#3ec711d05d6608fd173d9b8de39872d8dbf68bf5" - integrity sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A== +"@babel/plugin-transform-runtime@^7.0.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz#2a884f29556d0a68cd3d152dcc9e6c71dfb6eee8" + integrity sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-module-imports" "^7.18.6" + "@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-property-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz#54518f14ac4755d22b92162e4a852d308a560875" - integrity sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw== +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" + integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-react-display-name@^7.0.0", "@babel/plugin-transform-react-display-name@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.23.3.tgz#70529f034dd1e561045ad3c8152a267f0d7b6200" - integrity sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw== +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.19.0": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" + integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" -"@babel/plugin-transform-react-jsx-development@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz#e716b6edbef972a92165cd69d92f1255f7e73e87" - integrity sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A== +"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" + integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== dependencies: - "@babel/plugin-transform-react-jsx" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz#ed3e7dadde046cce761a8e3cf003a13d1a7972d9" - integrity sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ== +"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" + integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz#03527006bdc8775247a78643c51d4e715fe39a3e" - integrity sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g== +"@babel/plugin-transform-typeof-symbol@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" + integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.22.15", "@babel/plugin-transform-react-jsx@^7.22.5": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz#393f99185110cea87184ea47bcb4a7b0c2e39312" - integrity sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA== +"@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-annotate-as-pure" "^7.22.5" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/types" "^7.23.4" + "@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-react-pure-annotations@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.23.3.tgz#fabedbdb8ee40edf5da96f3ecfc6958e3783b93c" - integrity sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ== +"@babel/plugin-transform-unicode-escapes@^7.18.10": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" + integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-regenerator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz#141afd4a2057298602069fce7f2dc5173e6c561c" - integrity sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ== +"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" + integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - regenerator-transform "^0.15.2" + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-reserved-words@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz#4130dcee12bd3dd5705c587947eb715da12efac8" - integrity sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg== +"@babel/preset-env@^7.18.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" + integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-runtime@^7.0.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.9.tgz#2c64d0680fc8e09e1dfe8fd5c646fe72abd82004" - integrity sha512-A7clW3a0aSjm3ONU9o2HAILSegJCYlEZmOhmBRReVtIpY/Z/p7yIZ+wR41Z+UipwdGuqwtID/V/dOdZXjwi9gQ== - dependencies: - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" - semver "^6.3.1" - -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz#97d82a39b0e0c24f8a981568a8ed851745f59210" - integrity sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz#41d17aacb12bde55168403c6f2d6bdca563d362c" - integrity sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - -"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz#dec45588ab4a723cb579c609b294a3d1bd22ff04" - integrity sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-template-literals@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz#5f0f028eb14e50b5d0f76be57f90045757539d07" - integrity sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-typeof-symbol@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz#9dfab97acc87495c0c449014eb9c547d8966bca4" - integrity sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-typescript@^7.23.3", "@babel/plugin-transform-typescript@^7.5.0": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz#aa36a94e5da8d94339ae3a4e22d40ed287feb34c" - integrity sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.23.6" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-typescript" "^7.23.3" - -"@babel/plugin-transform-unicode-escapes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz#1f66d16cab01fab98d784867d24f70c1ca65b925" - integrity sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-unicode-property-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz#19e234129e5ffa7205010feec0d94c251083d7ad" - integrity sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz#26897708d8f42654ca4ce1b73e96140fbad879dc" - integrity sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/plugin-transform-unicode-sets-regex@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz#4fb6f0a719c2c5859d11f6b55a050cc987f3799e" - integrity sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - -"@babel/preset-env@^7.18.2", "@babel/preset-env@^7.20.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.9.tgz#beace3b7994560ed6bf78e4ae2073dff45387669" - integrity sha512-3kBGTNBBk9DQiPoXYS0g0BYlwTQYUTifqgKTjxUwEUkduRT2QOa0FPGBJ+NROQhGyYO5BuTJwGvBnqKDykac6A== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.23.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.7" - "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" + "@babel/compat-data" "^7.20.1" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-async-generator-functions" "^7.20.1" + "@babel/plugin-proposal-class-properties" "^7.18.6" + "@babel/plugin-proposal-class-static-block" "^7.18.6" + "@babel/plugin-proposal-dynamic-import" "^7.18.6" + "@babel/plugin-proposal-export-namespace-from" "^7.18.9" + "@babel/plugin-proposal-json-strings" "^7.18.6" + "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" + "@babel/plugin-proposal-numeric-separator" "^7.18.6" + "@babel/plugin-proposal-object-rest-spread" "^7.20.2" + "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" + "@babel/plugin-proposal-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-private-methods" "^7.18.6" + "@babel/plugin-proposal-private-property-in-object" "^7.18.6" + "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.23.3" - "@babel/plugin-syntax-import-attributes" "^7.23.3" - "@babel/plugin-syntax-import-meta" "^7.10.4" + "@babel/plugin-syntax-import-assertions" "^7.20.0" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" @@ -1018,112 +926,96 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.23.3" - "@babel/plugin-transform-async-generator-functions" "^7.23.9" - "@babel/plugin-transform-async-to-generator" "^7.23.3" - "@babel/plugin-transform-block-scoped-functions" "^7.23.3" - "@babel/plugin-transform-block-scoping" "^7.23.4" - "@babel/plugin-transform-class-properties" "^7.23.3" - "@babel/plugin-transform-class-static-block" "^7.23.4" - "@babel/plugin-transform-classes" "^7.23.8" - "@babel/plugin-transform-computed-properties" "^7.23.3" - "@babel/plugin-transform-destructuring" "^7.23.3" - "@babel/plugin-transform-dotall-regex" "^7.23.3" - "@babel/plugin-transform-duplicate-keys" "^7.23.3" - "@babel/plugin-transform-dynamic-import" "^7.23.4" - "@babel/plugin-transform-exponentiation-operator" "^7.23.3" - "@babel/plugin-transform-export-namespace-from" "^7.23.4" - "@babel/plugin-transform-for-of" "^7.23.6" - "@babel/plugin-transform-function-name" "^7.23.3" - "@babel/plugin-transform-json-strings" "^7.23.4" - "@babel/plugin-transform-literals" "^7.23.3" - "@babel/plugin-transform-logical-assignment-operators" "^7.23.4" - "@babel/plugin-transform-member-expression-literals" "^7.23.3" - "@babel/plugin-transform-modules-amd" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-modules-systemjs" "^7.23.9" - "@babel/plugin-transform-modules-umd" "^7.23.3" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" - "@babel/plugin-transform-new-target" "^7.23.3" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" - "@babel/plugin-transform-numeric-separator" "^7.23.4" - "@babel/plugin-transform-object-rest-spread" "^7.23.4" - "@babel/plugin-transform-object-super" "^7.23.3" - "@babel/plugin-transform-optional-catch-binding" "^7.23.4" - "@babel/plugin-transform-optional-chaining" "^7.23.4" - "@babel/plugin-transform-parameters" "^7.23.3" - "@babel/plugin-transform-private-methods" "^7.23.3" - "@babel/plugin-transform-private-property-in-object" "^7.23.4" - "@babel/plugin-transform-property-literals" "^7.23.3" - "@babel/plugin-transform-regenerator" "^7.23.3" - "@babel/plugin-transform-reserved-words" "^7.23.3" - "@babel/plugin-transform-shorthand-properties" "^7.23.3" - "@babel/plugin-transform-spread" "^7.23.3" - "@babel/plugin-transform-sticky-regex" "^7.23.3" - "@babel/plugin-transform-template-literals" "^7.23.3" - "@babel/plugin-transform-typeof-symbol" "^7.23.3" - "@babel/plugin-transform-unicode-escapes" "^7.23.3" - "@babel/plugin-transform-unicode-property-regex" "^7.23.3" - "@babel/plugin-transform-unicode-regex" "^7.23.3" - "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" - "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.8" - babel-plugin-polyfill-corejs3 "^0.9.0" - babel-plugin-polyfill-regenerator "^0.5.5" - core-js-compat "^3.31.0" - semver "^6.3.1" + "@babel/plugin-transform-arrow-functions" "^7.18.6" + "@babel/plugin-transform-async-to-generator" "^7.18.6" + "@babel/plugin-transform-block-scoped-functions" "^7.18.6" + "@babel/plugin-transform-block-scoping" "^7.20.2" + "@babel/plugin-transform-classes" "^7.20.2" + "@babel/plugin-transform-computed-properties" "^7.18.9" + "@babel/plugin-transform-destructuring" "^7.20.2" + "@babel/plugin-transform-dotall-regex" "^7.18.6" + "@babel/plugin-transform-duplicate-keys" "^7.18.9" + "@babel/plugin-transform-exponentiation-operator" "^7.18.6" + "@babel/plugin-transform-for-of" "^7.18.8" + "@babel/plugin-transform-function-name" "^7.18.9" + "@babel/plugin-transform-literals" "^7.18.9" + "@babel/plugin-transform-member-expression-literals" "^7.18.6" + "@babel/plugin-transform-modules-amd" "^7.19.6" + "@babel/plugin-transform-modules-commonjs" "^7.19.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.6" + "@babel/plugin-transform-modules-umd" "^7.18.6" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" + "@babel/plugin-transform-new-target" "^7.18.6" + "@babel/plugin-transform-object-super" "^7.18.6" + "@babel/plugin-transform-parameters" "^7.20.1" + "@babel/plugin-transform-property-literals" "^7.18.6" + "@babel/plugin-transform-regenerator" "^7.18.6" + "@babel/plugin-transform-reserved-words" "^7.18.6" + "@babel/plugin-transform-shorthand-properties" "^7.18.6" + "@babel/plugin-transform-spread" "^7.19.0" + "@babel/plugin-transform-sticky-regex" "^7.18.6" + "@babel/plugin-transform-template-literals" "^7.18.9" + "@babel/plugin-transform-typeof-symbol" "^7.18.9" + "@babel/plugin-transform-unicode-escapes" "^7.18.10" + "@babel/plugin-transform-unicode-regex" "^7.18.6" + "@babel/preset-modules" "^0.1.5" + "@babel/types" "^7.20.2" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" + core-js-compat "^3.25.1" + semver "^6.3.0" "@babel/preset-flow@^7.13.13", "@babel/preset-flow@^7.17.12": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.23.3.tgz#8084e08b9ccec287bd077ab288b286fab96ffab1" - integrity sha512-7yn6hl8RIv+KNk6iIrGZ+D06VhVY35wLVf23Cz/mMu1zOr7u4MMP4j0nZ9tLf8+4ZFpnib8cFYgB/oYg9hfswA== + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" + integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-transform-flow-strip-types" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-flow-strip-types" "^7.18.6" -"@babel/preset-modules@0.1.6-no-external-plugins": - version "0.1.6-no-external-plugins" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" - integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== +"@babel/preset-modules@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" + integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" "@babel/types" "^7.4.4" esutils "^2.0.2" "@babel/preset-react@^7.17.12": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.23.3.tgz#f73ca07e7590f977db07eb54dbe46538cc015709" - integrity sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w== + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.18.6.tgz#979f76d6277048dc19094c217b507f3ad517dd2d" + integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-transform-react-display-name" "^7.23.3" - "@babel/plugin-transform-react-jsx" "^7.22.15" - "@babel/plugin-transform-react-jsx-development" "^7.22.5" - "@babel/plugin-transform-react-pure-annotations" "^7.23.3" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-react-display-name" "^7.18.6" + "@babel/plugin-transform-react-jsx" "^7.18.6" + "@babel/plugin-transform-react-jsx-development" "^7.18.6" + "@babel/plugin-transform-react-pure-annotations" "^7.18.6" "@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.17.12": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz#14534b34ed5b6d435aa05f1ae1c5e7adcc01d913" - integrity sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ== + 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.22.5" - "@babel/helper-validator-option" "^7.22.15" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/plugin-transform-modules-commonjs" "^7.23.3" - "@babel/plugin-transform-typescript" "^7.23.3" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.21.0" + "@babel/plugin-transform-typescript" "^7.21.0" "@babel/register@^7.13.16": - version "7.23.7" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.23.7.tgz#485a5e7951939d21304cae4af1719fdb887bc038" - integrity sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ== + 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" make-dir "^2.1.0" - pirates "^4.0.6" + pirates "^4.0.5" source-map-support "^0.5.16" "@babel/regjsgen@^0.8.0": @@ -1132,66 +1024,66 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.0.0", "@babel/runtime@^7.8.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7" - integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== - dependencies: - regenerator-runtime "^0.14.0" - -"@babel/template@^7.0.0", "@babel/template@^7.22.15", "@babel/template@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" - integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" - -"@babel/traverse@^7.20.0", "@babel/traverse@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" - integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" - debug "^4.3.1" + 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.20.7": + 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.20.7" + "@babel/types" "^7.20.7" + +"@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.21.3": + 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.21.3" + "@babel/helper-environment-visitor" "^7.18.9" + "@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.21.3" + "@babel/types" "^7.21.3" + debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.20.0", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.4.4": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" - integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== +"@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.4.4": + 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.23.4" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" -"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" - integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== +"@eslint-community/eslint-utils@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz#a831e6e468b4b2b5ae42bf658bea015bf10bc518" + integrity sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ== dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1": - version "4.10.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" - integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== +"@eslint-community/regexpp@^4.4.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.4.0.tgz#3e61c564fcd6b921cb789838631c5ee44df09403" + integrity sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ== -"@eslint/eslintrc@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" - integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== +"@eslint/eslintrc@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.0.1.tgz#7888fe7ec8f21bc26d646dbd2c11cd776e21192d" + integrity sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw== dependencies: ajv "^6.12.4" debug "^4.3.2" - espree "^9.6.0" + espree "^9.5.0" globals "^13.19.0" ignore "^5.2.0" import-fresh "^3.2.1" @@ -1199,101 +1091,30 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.56.0": - version "8.56.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.56.0.tgz#ef20350fec605a7f7035a01764731b2de0f3782b" - integrity sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A== - -"@expo/config-plugins@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-7.8.4.tgz#533b5d536c1dc8b5544d64878b51bda28f2e1a1f" - integrity sha512-hv03HYxb/5kX8Gxv/BTI8TLc9L06WzqAfHRRXdbar4zkLcP2oTzvsLEF4/L/TIpD3rsnYa0KU42d0gWRxzPCJg== - dependencies: - "@expo/config-types" "^50.0.0-alpha.1" - "@expo/fingerprint" "^0.6.0" - "@expo/json-file" "~8.3.0" - "@expo/plist" "^0.1.0" - "@expo/sdk-runtime-versions" "^1.0.0" - "@react-native/normalize-color" "^2.0.0" - chalk "^4.1.2" - debug "^4.3.1" - find-up "~5.0.0" - getenv "^1.0.0" - glob "7.1.6" - resolve-from "^5.0.0" - semver "^7.5.3" - slash "^3.0.0" - slugify "^1.6.6" - xcode "^3.0.1" - xml2js "0.6.0" - -"@expo/config-types@^50.0.0-alpha.1": - version "50.0.0" - resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-50.0.0.tgz#b534d3ec997ec60f8af24f6ad56244c8afc71a0b" - integrity sha512-0kkhIwXRT6EdFDwn+zTg9R2MZIAEYGn1MVkyRohAd+C9cXOb5RA8WLQi7vuxKF9m1SMtNAUrf0pO+ENK0+/KSw== - -"@expo/fingerprint@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@expo/fingerprint/-/fingerprint-0.6.0.tgz#77366934673d4ecea37284109b4dd67f9e6a7487" - integrity sha512-KfpoVRTMwMNJ/Cf5o+Ou8M/Y0EGSTqK+rbi70M2Y0K2qgWNfMJ1gm6sYO9uc8lcTr7YSYM1Rme3dk7QXhpScNA== - dependencies: - "@expo/spawn-async" "^1.5.0" - chalk "^4.1.2" - debug "^4.3.4" - find-up "^5.0.0" - minimatch "^3.0.4" - p-limit "^3.1.0" - resolve-from "^5.0.0" - -"@expo/json-file@~8.3.0": - version "8.3.0" - resolved "https://registry.yarnpkg.com/@expo/json-file/-/json-file-8.3.0.tgz#fc84af77b532a4e9bfb5beafd0e3b7f692b6bd7e" - integrity sha512-yROUeXJXR5goagB8c3muFLCzLmdGOvoPpR5yDNaXrnTp4euNykr9yW0wWhJx4YVRTNOPtGBnEbbJBW+a9q+S6g== - dependencies: - "@babel/code-frame" "~7.10.4" - json5 "^2.2.2" - write-file-atomic "^2.3.0" +"@eslint/js@8.36.0": + version "8.36.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.36.0.tgz#9837f768c03a1e4a30bd304a64fb8844f0e72efe" + integrity sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg== -"@expo/plist@^0.1.0": - version "0.1.0" - resolved "https://registry.yarnpkg.com/@expo/plist/-/plist-0.1.0.tgz#eabc95f951d14e10c87fd0443ee01d567371f058" - integrity sha512-xWD+8vIFif0wKyuqe3fmnmnSouXYucciZXFzS0ZD5OV9eSAS1RGQI5FaGGJ6zxJ4mpdy/4QzbLdBjnYE5vxA0g== - dependencies: - "@xmldom/xmldom" "~0.7.7" - base64-js "^1.2.3" - xmlbuilder "^14.0.0" - -"@expo/sdk-runtime-versions@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@expo/sdk-runtime-versions/-/sdk-runtime-versions-1.0.0.tgz#d7ebd21b19f1c6b0395e50d78da4416941c57f7c" - integrity sha512-Doz2bfiPndXYFPMRwPyGa1k5QaKDVpY806UJj570epIiMzWaYyCtobasyfC++qfIXVb5Ocy7r3tP9d62hAQ7IQ== - -"@expo/spawn-async@^1.5.0": - version "1.7.2" - resolved "https://registry.yarnpkg.com/@expo/spawn-async/-/spawn-async-1.7.2.tgz#fcfe66c3e387245e72154b1a7eae8cada6a47f58" - integrity sha512-QdWi16+CHB9JYP7gma19OVVg0BFkvU8zNj9GjWorYI8Iv8FUxjOCcYRuAmX4s/h91e4e7BPsskc8cSrZYho9Ew== - dependencies: - cross-spawn "^7.0.3" - -"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": +"@hapi/hoek@^9.0.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== -"@hapi/topo@^5.1.0": +"@hapi/topo@^5.0.0": version "5.1.0" resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== dependencies: "@hapi/hoek" "^9.0.0" -"@humanwhocodes/config-array@^0.11.13": - version "0.11.14" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" - integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg== +"@humanwhocodes/config-array@^0.11.8": + version "0.11.8" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" + integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g== dependencies: - "@humanwhocodes/object-schema" "^2.0.2" - debug "^4.3.1" + "@humanwhocodes/object-schema" "^1.2.1" + debug "^4.1.1" minimatch "^3.0.5" "@humanwhocodes/module-importer@^1.0.1": @@ -1301,51 +1122,46 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/object-schema@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917" - integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw== - -"@isaacs/ttlcache@^1.4.1": - version "1.4.1" - resolved "https://registry.yarnpkg.com/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz#21fb23db34e9b6220c6ba023a0118a2dd3461ea2" - integrity sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA== +"@humanwhocodes/object-schema@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== -"@jest/create-cache-key-function@^29.6.3": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz#793be38148fab78e65f40ae30c36785f4ad859f0" - integrity sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA== +"@jest/create-cache-key-function@^29.2.1": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.5.0.tgz#24e019d03e634be4affe8bcee787d75a36ae57a2" + integrity sha512-LIDZyZgnZss7uikvBKBB/USWwG+GO8+GnwRWT+YkCGDGsqLQlhm9BC3z6+7+eMs1kUlvXQIWEzBR8Q2Pnvx6lg== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" -"@jest/environment@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" - integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== +"@jest/environment@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65" + integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ== dependencies: - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^29.7.0" + jest-mock "^29.5.0" -"@jest/fake-timers@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" - integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== +"@jest/fake-timers@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c" + integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^29.7.0" - jest-mock "^29.7.0" - jest-util "^29.7.0" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" -"@jest/schemas@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" - integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== +"@jest/schemas@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" + integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== dependencies: - "@sinclair/typebox" "^0.27.8" + "@sinclair/typebox" "^0.25.16" "@jest/types@^26.6.2": version "26.6.2" @@ -1358,57 +1174,76 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" - integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== +"@jest/types@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== dependencies: - "@jest/schemas" "^29.6.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + +"@jest/types@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593" + integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog== + dependencies: + "@jest/schemas" "^29.4.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" "@types/yargs" "^17.0.8" chalk "^4.0.0" +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/set-array@^1.0.1": +"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/source-map@^0.3.3": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" - integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@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.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.22" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" - integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== + 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.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1431,309 +1266,184 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@react-native-community/cli-clean@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.3.2.tgz#d4f1730c3d22d816b4d513d330d5f3896a3f5921" - integrity sha512-90k2hCX0ddSFPT7EN7h5SZj0XZPXP0+y/++v262hssoey3nhurwF57NGWN0XAR0o9BSW7+mBfeInfabzDraO6A== +"@react-native-community/cli-clean@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-10.1.1.tgz#4c73ce93a63a24d70c0089d4025daac8184ff504" + integrity sha512-iNsrjzjIRv9yb5y309SWJ8NDHdwYtnCpmxZouQDyOljUdC9MwdZ4ChbtA4rwQyAwgOVfS9F/j56ML3Cslmvrxg== dependencies: - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" - execa "^5.0.0" + execa "^1.0.0" + prompts "^2.4.0" -"@react-native-community/cli-config@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.3.2.tgz#1a5de302de4d597ff2fc9932a032134b6ec4325f" - integrity sha512-UUCzDjQgvAVL/57rL7eOuFUhd+d+6qfM7V8uOegQFeFEmSmvUUDLYoXpBa5vAK9JgQtSqMBJ1Shmwao+/oElxQ== +"@react-native-community/cli-config@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-10.1.1.tgz#08dcc5d7ca1915647dc06507ed853fe0c1488395" + integrity sha512-p4mHrjC+s/ayiNVG6T35GdEGdP6TuyBUg5plVGRJfTl8WT6LBfLYLk+fz/iETrEZ/YkhQIsQcEUQC47MqLNHog== dependencies: - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" cosmiconfig "^5.1.0" - deepmerge "^4.3.0" + deepmerge "^3.2.0" glob "^7.1.3" joi "^17.2.1" -"@react-native-community/cli-debugger-ui@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.2.tgz#b2743876b03e560fbf5ef516e95387fcb6d91630" - integrity sha512-nSWQUL+51J682DlfcC1bjkUbQbGvHCC25jpqTwHIjmmVjYCX1uHuhPSqQKgPNdvtfOkrkACxczd7kVMmetxY2Q== +"@react-native-community/cli-debugger-ui@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-10.0.0.tgz#4bb6d41c7e46449714dc7ba5d9f5b41ef0ea7c57" + integrity sha512-8UKLcvpSNxnUTRy8CkCl27GGLqZunQ9ncGYhSrWyKrU9SWBJJGeZwi2k2KaoJi5FvF2+cD0t8z8cU6lsq2ZZmA== dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.3.2.tgz#9e82b49f04ee03872b2975f26c8799cecac021ce" - integrity sha512-GrAabdY4qtBX49knHFvEAdLtCjkmndjTeqhYO6BhsbAeKOtspcLT/0WRgdLIaKODRa61ADNB3K5Zm4dU0QrZOg== +"@react-native-community/cli-doctor@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-10.2.0.tgz#6050030eea9200ce3c35de360cf8455e126b4d45" + integrity sha512-yLxJazUmNSPslHxeeev0gLvsK0nQan8BmGWbtqPz2WwbIbD89vbytC7G96OxiQXr46iWEWAwEJiTTdgA7jlA5Q== dependencies: - "@react-native-community/cli-config" "12.3.2" - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-platform-ios" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" + "@react-native-community/cli-config" "^10.1.1" + "@react-native-community/cli-platform-ios" "^10.2.0" + "@react-native-community/cli-tools" "^10.1.1" chalk "^4.1.2" command-exists "^1.2.8" - deepmerge "^4.3.0" - envinfo "^7.10.0" - execa "^5.0.0" - hermes-profile-transformer "^0.0.6" - ip "^1.1.5" - node-stream-zip "^1.9.1" - ora "^5.4.1" - semver "^7.5.2" - strip-ansi "^5.2.0" - wcwidth "^1.0.1" - yaml "^2.2.1" - -"@react-native-community/cli-hermes@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.3.2.tgz#5f266985fe32a37e9020e881460e9017870be2e5" - integrity sha512-SL6F9O8ghp4ESBFH2YAPLtIN39jdnvGBKnK4FGKpDCjtB3DnUmDsGFlH46S+GGt5M6VzfG2eeKEOKf3pZ6jUzA== - dependencies: - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - chalk "^4.1.2" - hermes-profile-transformer "^0.0.6" - ip "^1.1.5" - -"@react-native-community/cli-platform-android@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.2.tgz#de54d89712f8ea95046d798ec274fd6caea70c34" - integrity sha512-MZ5nO8yi/N+Fj2i9BJcJ9C/ez+9/Ir7lQt49DWRo9YDmzye66mYLr/P2l/qxsixllbbDi7BXrlLpxaEhMrDopg== - dependencies: - "@react-native-community/cli-tools" "12.3.2" - chalk "^4.1.2" - execa "^5.0.0" - fast-xml-parser "^4.2.4" - glob "^7.1.3" - logkitty "^0.7.1" - -"@react-native-community/cli-platform-ios@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.2.tgz#07e298f69761424da85909790a43ec60ebfe6097" - integrity sha512-OcWEAbkev1IL6SUiQnM6DQdsvfsKZhRZtoBNSj9MfdmwotVZSOEZJ+IjZ1FR9ChvMWayO9ns/o8LgoQxr1ZXeg== - dependencies: - "@react-native-community/cli-tools" "12.3.2" - chalk "^4.1.2" - execa "^5.0.0" - fast-xml-parser "^4.0.12" - glob "^7.1.3" - ora "^5.4.1" - -"@react-native-community/cli-plugin-metro@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.2.tgz#7db7dc8939b821b9aeebdd5ee3293f3a0201a2ea" - integrity sha512-FpFBwu+d2E7KRhYPTkKvQsWb2/JKsJv+t1tcqgQkn+oByhp+qGyXBobFB8/R3yYvRRDCSDhS+atWTJzk9TjM8g== - -"@react-native-community/cli-server-api@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.3.2.tgz#11df4e20ed72d59cf22adf77bd30aff3d6e70dc9" - integrity sha512-iwa7EO9XFA/OjI5pPLLpI/6mFVqv8L73kNck3CNOJIUCCveGXBKK0VMyOkXaf/BYnihgQrXh+x5cxbDbggr7+Q== - dependencies: - "@react-native-community/cli-debugger-ui" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - compression "^1.7.1" - connect "^3.6.5" - errorhandler "^1.5.1" - nocache "^3.0.1" - pretty-format "^26.6.2" - serve-static "^1.13.1" - ws "^7.5.1" - -"@react-native-community/cli-tools@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.3.2.tgz#d3362b04fba3f73ec82c5a493696b575acfb420c" - integrity sha512-nDH7vuEicHI2TI0jac/DjT3fr977iWXRdgVAqPZFFczlbs7A8GQvEdGnZ1G8dqRUmg+kptw0e4hwczAOG89JzQ== - dependencies: - appdirsjs "^1.2.4" - chalk "^4.1.2" - find-up "^5.0.0" - mime "^2.4.1" - node-fetch "^2.6.0" - open "^6.2.0" - ora "^5.4.1" - semver "^7.5.2" - shell-quote "^1.7.3" - sudo-prompt "^9.0.0" - -"@react-native-community/cli-types@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.3.2.tgz#0551c553c87701faae580097d7786dfff8ec2ef4" - integrity sha512-9D0UEFqLW8JmS16mjHJxUJWX8E+zJddrHILSH8AJHZ0NNHv4u2DXKdb0wFLMobFxGNxPT+VSOjc60fGvXzWHog== - dependencies: - joi "^17.2.1" - -"@react-native-community/cli@12.3.2": - version "12.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.3.2.tgz#002ae3683b9fe6b0a83a837f41d9db541ea7667f" - integrity sha512-WgoUWwLDcf/G1Su2COUUVs3RzAwnV/vUTdISSpAUGgSc57mPabaAoUctKTnfYEhCnE3j02k3VtaVPwCAFRO3TQ== - dependencies: - "@react-native-community/cli-clean" "12.3.2" - "@react-native-community/cli-config" "12.3.2" - "@react-native-community/cli-debugger-ui" "12.3.2" - "@react-native-community/cli-doctor" "12.3.2" - "@react-native-community/cli-hermes" "12.3.2" - "@react-native-community/cli-plugin-metro" "12.3.2" - "@react-native-community/cli-server-api" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - "@react-native-community/cli-types" "12.3.2" - chalk "^4.1.2" - commander "^9.4.1" - deepmerge "^4.3.0" - execa "^5.0.0" - find-up "^4.1.0" - fs-extra "^8.1.0" - graceful-fs "^4.1.3" - prompts "^2.4.2" - semver "^7.5.2" - -"@react-native/assets-registry@0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.73.1.tgz#e2a6b73b16c183a270f338dc69c36039b3946e85" - integrity sha512-2FgAbU7uKM5SbbW9QptPPZx8N9Ke2L7bsHb+EhAanZjFZunA9PaYtyjUQ1s7HD+zDVqOQIvjkpXSv7Kejd2tqg== - -"@react-native/babel-plugin-codegen@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.73.4.tgz#8a2037d5585b41877611498ae66adbf1dddfec1b" - integrity sha512-XzRd8MJGo4Zc5KsphDHBYJzS1ryOHg8I2gOZDAUCGcwLFhdyGu1zBNDJYH2GFyDrInn9TzAbRIf3d4O+eltXQQ== - dependencies: - "@react-native/codegen" "0.73.3" - -"@react-native/babel-preset@0.73.21": - version "0.73.21" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.73.21.tgz#174c16493fa4e311b2f5f0c58d4f3c6a5a68bbea" - integrity sha512-WlFttNnySKQMeujN09fRmrdWqh46QyJluM5jdtDNrkl/2Hx6N4XeDUGhABvConeK95OidVO7sFFf7sNebVXogA== - dependencies: - "@babel/core" "^7.20.0" - "@babel/plugin-proposal-async-generator-functions" "^7.0.0" - "@babel/plugin-proposal-class-properties" "^7.18.0" - "@babel/plugin-proposal-export-default-from" "^7.0.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.0" - "@babel/plugin-proposal-numeric-separator" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.20.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-optional-chaining" "^7.20.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-export-default-from" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.18.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-syntax-optional-chaining" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.20.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.20.0" - "@babel/plugin-transform-flow-strip-types" "^7.20.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-private-methods" "^7.22.5" - "@babel/plugin-transform-private-property-in-object" "^7.22.11" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - "@babel/plugin-transform-runtime" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.5.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - "@babel/template" "^7.0.0" - "@react-native/babel-plugin-codegen" "0.73.4" - babel-plugin-transform-flow-enums "^0.0.2" - react-refresh "^0.14.0" + envinfo "^7.7.2" + execa "^1.0.0" + hermes-profile-transformer "^0.0.6" + ip "^1.1.5" + node-stream-zip "^1.9.1" + ora "^5.4.1" + prompts "^2.4.0" + semver "^6.3.0" + strip-ansi "^5.2.0" + sudo-prompt "^9.0.0" + wcwidth "^1.0.1" -"@react-native/codegen@0.73.3": - version "0.73.3" - resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.73.3.tgz#cc984a8b17334d986cc600254a0d4b7fa7d68a94" - integrity sha512-sxslCAAb8kM06vGy9Jyh4TtvjhcP36k/rvj2QE2Jdhdm61KvfafCATSIsOfc0QvnduWFcpXUPvAVyYwuv7PYDg== +"@react-native-community/cli-hermes@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-10.2.0.tgz#cc252f435b149f74260bc918ce22fdf58033a87e" + integrity sha512-urfmvNeR8IiO/Sd92UU3xPO+/qI2lwCWQnxOkWaU/i2EITFekE47MD6MZrfVulRVYRi5cuaFqKZO/ccOdOB/vQ== dependencies: - "@babel/parser" "^7.20.0" - flow-parser "^0.206.0" - glob "^7.1.1" - invariant "^2.2.4" - jscodeshift "^0.14.0" - mkdirp "^0.5.1" - nullthrows "^1.1.1" + "@react-native-community/cli-platform-android" "^10.2.0" + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + hermes-profile-transformer "^0.0.6" + ip "^1.1.5" -"@react-native/community-cli-plugin@0.73.16": - version "0.73.16" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.16.tgz#29dca91aa3e24c8cd534dbf3db5766509da92ea3" - integrity sha512-eNH3v3qJJF6f0n/Dck90qfC9gVOR4coAXMTdYECO33GfgjTi+73vf/SBqlXw9HICH/RNZYGPM3wca4FRF7TYeQ== +"@react-native-community/cli-platform-android@10.2.0", "@react-native-community/cli-platform-android@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-10.2.0.tgz#0bc689270a5f1d9aaf9e723181d43ca4dbfffdef" + integrity sha512-CBenYwGxwFdObZTn1lgxWtMGA5ms2G/ALQhkS+XTAD7KHDrCxFF9yT/fnAjFZKM6vX/1TqGI1RflruXih3kAhw== dependencies: - "@react-native-community/cli-server-api" "12.3.2" - "@react-native-community/cli-tools" "12.3.2" - "@react-native/dev-middleware" "0.73.7" - "@react-native/metro-babel-transformer" "0.73.15" - chalk "^4.0.0" - execa "^5.1.1" - metro "^0.80.3" - metro-config "^0.80.3" - metro-core "^0.80.3" - node-fetch "^2.2.0" - readline "^1.3.0" + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + execa "^1.0.0" + glob "^7.1.3" + logkitty "^0.7.1" + +"@react-native-community/cli-platform-ios@10.2.0", "@react-native-community/cli-platform-ios@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.2.0.tgz#be21c0e3bbf17358d540cc23e5556bf679f6322e" + integrity sha512-hIPK3iL/mL+0ChXmQ9uqqzNOKA48H+TAzg+hrxQLll/6dNMxDeK9/wZpktcsh8w+CyhqzKqVernGcQs7tPeKGw== + dependencies: + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + execa "^1.0.0" + fast-xml-parser "^4.0.12" + glob "^7.1.3" + ora "^5.4.1" -"@react-native/debugger-frontend@0.73.3": - version "0.73.3" - resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.73.3.tgz#033757614d2ada994c68a1deae78c1dd2ad33c2b" - integrity sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw== +"@react-native-community/cli-plugin-metro@^10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-10.2.0.tgz#83cabbc04c80f7e94f88ed998b72c7d572c6f094" + integrity sha512-9eiJrKYuauEDkQLCrjJUh7tS9T0oaMQqVUSSSuyDG6du7HQcfaR4mSf21wK75jvhKiwcQLpsFmMdctAb+0v+Cg== + dependencies: + "@react-native-community/cli-server-api" "^10.1.1" + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + execa "^1.0.0" + metro "0.73.8" + metro-config "0.73.8" + metro-core "0.73.8" + metro-react-native-babel-transformer "0.73.8" + metro-resolver "0.73.8" + metro-runtime "0.73.8" + readline "^1.3.0" -"@react-native/dev-middleware@0.73.7": - version "0.73.7" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.7.tgz#61d2bf08973d9a537fa3f2a42deeb13530d721ae" - integrity sha512-BZXpn+qKp/dNdr4+TkZxXDttfx8YobDh8MFHsMk9usouLm22pKgFIPkGBV0X8Do4LBkFNPGtrnsKkWk/yuUXKg== +"@react-native-community/cli-server-api@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-10.1.1.tgz#e382269de281bb380c2e685431364fbbb8c1cb3a" + integrity sha512-NZDo/wh4zlm8as31UEBno2bui8+ufzsZV+KN7QjEJWEM0levzBtxaD+4je0OpfhRIIkhaRm2gl/vVf7OYAzg4g== dependencies: - "@isaacs/ttlcache" "^1.4.1" - "@react-native/debugger-frontend" "0.73.3" - chrome-launcher "^0.15.2" - chromium-edge-launcher "^1.0.0" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-tools" "^10.1.1" + compression "^1.7.1" connect "^3.6.5" - debug "^2.2.0" - node-fetch "^2.2.0" - open "^7.0.3" + errorhandler "^1.5.0" + nocache "^3.0.1" + pretty-format "^26.6.2" serve-static "^1.13.1" - temp-dir "^2.0.0" - -"@react-native/gradle-plugin@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.73.4.tgz#aa55784a8c2b471aa89934db38c090d331baf23b" - integrity sha512-PMDnbsZa+tD55Ug+W8CfqXiGoGneSSyrBZCMb5JfiB3AFST3Uj5e6lw8SgI/B6SKZF7lG0BhZ6YHZsRZ5MlXmg== + ws "^7.5.1" -"@react-native/js-polyfills@0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.73.1.tgz#730b0a7aaab947ae6f8e5aa9d995e788977191ed" - integrity sha512-ewMwGcumrilnF87H4jjrnvGZEaPFCAC4ebraEK+CurDDmwST/bIicI4hrOAv+0Z0F7DEK4O4H7r8q9vH7IbN4g== +"@react-native-community/cli-tools@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-10.1.1.tgz#fa66e509c0d3faa31f7bb87ed7d42ad63f368ddd" + integrity sha512-+FlwOnZBV+ailEzXjcD8afY2ogFEBeHOw/8+XXzMgPaquU2Zly9B+8W089tnnohO3yfiQiZqkQlElP423MY74g== + dependencies: + appdirsjs "^1.2.4" + chalk "^4.1.2" + find-up "^5.0.0" + mime "^2.4.1" + node-fetch "^2.6.0" + open "^6.2.0" + ora "^5.4.1" + semver "^6.3.0" + shell-quote "^1.7.3" -"@react-native/metro-babel-transformer@0.73.15": - version "0.73.15" - resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.73.15.tgz#c516584dde62d65a46668074084359c03e6a50f1" - integrity sha512-LlkSGaXCz+xdxc9819plmpsl4P4gZndoFtpjN3GMBIu6f7TBV0GVbyJAU4GE8fuAWPVSVL5ArOcdkWKSbI1klw== +"@react-native-community/cli-types@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-10.0.0.tgz#046470c75ec18f8b3bd906e54e43a6f678e01a45" + integrity sha512-31oUM6/rFBZQfSmDQsT1DX/5fjqfxg7sf2u8kTPJK7rXVya5SRpAMaCXsPAG0omsmJxXt+J9HxUi3Ic+5Ux5Iw== dependencies: - "@babel/core" "^7.20.0" - "@react-native/babel-preset" "0.73.21" - hermes-parser "0.15.0" - nullthrows "^1.1.1" + joi "^17.2.1" + +"@react-native-community/cli@10.2.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.2.0.tgz#bcb65bb3dcb03b0fc4e49619d51e12d23396b301" + integrity sha512-QH7AFBz5FX2zTZRH/o3XehHrZ0aZZEL5Sh+23nSEFgSj3bLFfvjjZhuoiRSAo7iiBdvAoXrfxQ8TXgg4Xf/7fw== + dependencies: + "@react-native-community/cli-clean" "^10.1.1" + "@react-native-community/cli-config" "^10.1.1" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-doctor" "^10.2.0" + "@react-native-community/cli-hermes" "^10.2.0" + "@react-native-community/cli-plugin-metro" "^10.2.0" + "@react-native-community/cli-server-api" "^10.1.1" + "@react-native-community/cli-tools" "^10.1.1" + "@react-native-community/cli-types" "^10.0.0" + chalk "^4.1.2" + commander "^9.4.1" + execa "^1.0.0" + find-up "^4.1.0" + fs-extra "^8.1.0" + graceful-fs "^4.1.3" + prompts "^2.4.0" + semver "^6.3.0" -"@react-native/normalize-color@^2.0.0": +"@react-native/assets@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" + integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ== + +"@react-native/normalize-color@*", "@react-native/normalize-color@2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@react-native/normalize-color/-/normalize-color-2.1.0.tgz#939b87a9849e81687d3640c5efa2a486ac266f91" integrity sha512-Z1jQI2NpdFJCVgpY+8Dq/Bt3d+YUi1928Q+/CZm/oh66fzM0RUl54vvuXlPJKybH4pdCZey1eDTPaLHkMPNgWA== -"@react-native/normalize-colors@0.73.2", "@react-native/normalize-colors@^0.73.0": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.73.2.tgz#cc8e48fbae2bbfff53e12f209369e8d2e4cf34ec" - integrity sha512-bRBcb2T+I88aG74LMVHaKms2p/T8aQd8+BZ7LuuzXlRfog1bMWWn/C5i0HVuvW4RPtXQYgIlGiXVDy9Ir1So/w== - -"@react-native/virtualized-lists@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.73.4.tgz#640e594775806f63685435b5d9c3d05c378ccd8c" - integrity sha512-HpmLg1FrEiDtrtAbXiwCgXFYyloK/dOIPIuWW3fsqukwJEWAiTzm1nXGJ7xPU5XTHiWZ4sKup5Ebaj8z7iyWog== - dependencies: - invariant "^2.2.4" - nullthrows "^1.1.1" +"@react-native/polyfills@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@react-native/polyfills/-/polyfills-2.0.0.tgz#4c40b74655c83982c8cf47530ee7dc13d957b6aa" + integrity sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ== -"@sideway/address@^4.1.4": +"@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== @@ -1750,209 +1460,197 @@ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== -"@sinclair/typebox@^0.27.8": - version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" - integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== +"@sinclair/typebox@^0.25.16": + version "0.25.24" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" + integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== -"@sinonjs/commons@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" - integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== +"@sinonjs/commons@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" + integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^10.0.2": - version "10.3.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" - integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== + version "10.0.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" + integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== dependencies: - "@sinonjs/commons" "^3.0.0" + "@sinonjs/commons" "^2.0.0" "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" - integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" - integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" - integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@^7.0.12": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== +"@types/json-schema@^7.0.9": + version "7.0.11" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" + integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== "@types/node@*": - version "20.11.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.7.tgz#cb49aedd758c978c30806d0c38b520ed2a3df6e0" - integrity sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A== - dependencies: - undici-types "~5.26.4" + version "18.15.3" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.3.tgz#f0b991c32cfc6a4e7f3399d6cb4b8cf9a0315014" + integrity sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw== "@types/parse-json@^4.0.0": - version "4.0.2" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239" - integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prop-types@*": - version "15.7.11" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" - integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== + version "15.7.5" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" + integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== -"@types/react@^18.2.47": - version "18.2.48" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.48.tgz#11df5664642d0bd879c1f58bc1d37205b064e8f1" - integrity sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w== +"@types/react@^18.0.28": + 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" "*" csstype "^3.0.2" "@types/scheduler@*": - version "0.16.8" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff" - integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== + version "0.16.2" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== -"@types/semver@^7.5.0": - version "7.5.6" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.6.tgz#c65b2bfce1bec346582c07724e3f8c1017a20339" - integrity sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A== +"@types/semver@^7.3.12": + version "7.3.13" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" + integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== "@types/stack-utils@^2.0.0": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" - integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/yargs-parser@*": - version "21.0.3" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" - integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== + version "21.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^15.0.0": - version "15.0.19" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.19.tgz#328fb89e46109ecbdb70c295d96ff2f46dfd01b9" - integrity sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA== + 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.5" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" + integrity sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ== dependencies: "@types/yargs-parser" "*" "@types/yargs@^17.0.8": - version "17.0.32" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229" - integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog== + version "17.0.22" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" + integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^6.18.0": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz#bb0676af940bc23bf299ca58dbdc6589c2548c2e" - integrity sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg== +"@typescript-eslint/eslint-plugin@^5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.55.0.tgz#bc2400c3a23305e8c9a9c04aa40933868aaaeb47" + integrity sha512-IZGc50rtbjk+xp5YQoJvmMPmJEYoC53SiKPXyqWfv15XoD2Y5Kju6zN0DwlmaGJp1Iw33JsWJcQ7nw0lGCGjVg== dependencies: - "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/type-utils" "6.19.1" - "@typescript-eslint/utils" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.55.0" + "@typescript-eslint/type-utils" "5.55.0" + "@typescript-eslint/utils" "5.55.0" debug "^4.3.4" - graphemer "^1.4.0" - ignore "^5.2.4" - natural-compare "^1.4.0" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/parser@^6.18.0": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.19.1.tgz#68a87bb21afaf0b1689e9cdce0e6e75bc91ada78" - integrity sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ== - dependencies: - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/typescript-estree" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + grapheme-splitter "^1.0.4" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/parser@^5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.55.0.tgz#8c96a0b6529708ace1dcfa60f5e6aec0f5ed2262" + integrity sha512-ppvmeF7hvdhUUZWSd2EEWfzcFkjJzgNQzVST22nzg958CR+sphy8A6K7LXQZd6V75m1VKjp+J4g/PCEfSCmzhw== + dependencies: + "@typescript-eslint/scope-manager" "5.55.0" + "@typescript-eslint/types" "5.55.0" + "@typescript-eslint/typescript-estree" "5.55.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz#2f527ee30703a6169a52b31d42a1103d80acd51b" - integrity sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w== +"@typescript-eslint/scope-manager@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.55.0.tgz#e863bab4d4183ddce79967fe10ceb6c829791210" + integrity sha512-OK+cIO1ZGhJYNCL//a3ROpsd83psf4dUJ4j7pdNVzd5DmIk+ffkuUIX2vcZQbEW/IR41DYsfJTB19tpCboxQuw== dependencies: - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@typescript-eslint/types" "5.55.0" + "@typescript-eslint/visitor-keys" "5.55.0" -"@typescript-eslint/type-utils@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz#6a130e3afe605a4898e043fa9f72e96309b54935" - integrity sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg== +"@typescript-eslint/type-utils@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.55.0.tgz#74bf0233523f874738677bb73cb58094210e01e9" + integrity sha512-ObqxBgHIXj8rBNm0yh8oORFrICcJuZPZTqtAFh0oZQyr5DnAHZWfyw54RwpEEH+fD8suZaI0YxvWu5tYE/WswA== dependencies: - "@typescript-eslint/typescript-estree" "6.19.1" - "@typescript-eslint/utils" "6.19.1" + "@typescript-eslint/typescript-estree" "5.55.0" + "@typescript-eslint/utils" "5.55.0" debug "^4.3.4" - ts-api-utils "^1.0.1" + tsutils "^3.21.0" -"@typescript-eslint/types@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.19.1.tgz#2d4c9d492a63ede15e7ba7d129bdf7714b77f771" - integrity sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg== +"@typescript-eslint/types@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.55.0.tgz#9830f8d3bcbecf59d12f821e5bc6960baaed41fd" + integrity sha512-M4iRh4AG1ChrOL6Y+mETEKGeDnT7Sparn6fhZ5LtVJF1909D5O4uqK+C5NPbLmpfZ0XIIxCdwzKiijpZUOvOug== -"@typescript-eslint/typescript-estree@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz#796d88d88882f12e85bb33d6d82d39e1aea54ed1" - integrity sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA== +"@typescript-eslint/typescript-estree@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.55.0.tgz#8db7c8e47ecc03d49b05362b8db6f1345ee7b575" + integrity sha512-I7X4A9ovA8gdpWMpr7b1BN9eEbvlEtWhQvpxp/yogt48fy9Lj3iE3ild/1H3jKBBIYj5YYJmS2+9ystVhC7eaQ== dependencies: - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/visitor-keys" "6.19.1" + "@typescript-eslint/types" "5.55.0" + "@typescript-eslint/visitor-keys" "5.55.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" - minimatch "9.0.3" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/utils@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.19.1.tgz#df93497f9cfddde2bcc2a591da80536e68acd151" - integrity sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.12" - "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.19.1" - "@typescript-eslint/types" "6.19.1" - "@typescript-eslint/typescript-estree" "6.19.1" - semver "^7.5.4" - -"@typescript-eslint/visitor-keys@6.19.1": - version "6.19.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz#2164073ed4fc34a5ff3b5e25bb5a442100454c4c" - integrity sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ== - dependencies: - "@typescript-eslint/types" "6.19.1" - eslint-visitor-keys "^3.4.1" - -"@ungap/structured-clone@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" - integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== + semver "^7.3.7" + tsutils "^3.21.0" -"@xmldom/xmldom@^0.8.8": - version "0.8.10" - resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz#a1337ca426aa61cef9fe15b5b28e340a72f6fa99" - integrity sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw== - -"@xmldom/xmldom@~0.7.7": - version "0.7.13" - resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.13.tgz#ff34942667a4e19a9f4a0996a76814daac364cf3" - integrity sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g== +"@typescript-eslint/utils@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.55.0.tgz#34e97322e7ae5b901e7a870aabb01dad90023341" + integrity sha512-FkW+i2pQKcpDC3AY6DU54yl8Lfl14FVGYDgBTyGKB75cCwV3KpkpTMFi9d9j2WAJ4271LR2HeC5SEWF/CZmmfw== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.55.0" + "@typescript-eslint/types" "5.55.0" + "@typescript-eslint/typescript-estree" "5.55.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/visitor-keys@5.55.0": + version "5.55.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.55.0.tgz#01ad414fca8367706d76cdb94adf788dc5b664a2" + integrity sha512-q2dlHHwWgirKh1D3acnuApXG+VNXpEY5/AwRxDVuEQpxWaB0jCDe0jFMVMALJ3ebSfuOVE8/rMS+9ZOYGg1GWw== + dependencies: + "@typescript-eslint/types" "5.55.0" + eslint-visitor-keys "^3.3.0" abort-controller@^3.0.0: version "3.0.0" @@ -1961,6 +1659,11 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" +absolute-path@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/absolute-path/-/absolute-path-0.0.0.tgz#a78762fbdadfb5297be99b15d35a785b2f095bf7" + integrity sha512-HQiug4c+/s3WOvEnDRxXVmNtSG5s2gJM9r19BTcqjp7BWcE48PB+Y2G6jE65kqI0LpsQeMZygt/b60Gi4KxGyA== + accepts@^1.3.7, accepts@~1.3.5, accepts@~1.3.7: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -1974,10 +1677,10 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn@^8.8.2, acorn@^8.9.0: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== +acorn@^8.5.0, acorn@^8.8.0: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== aggregate-error@^3.0.0: version "3.1.0" @@ -1987,7 +1690,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.12.4: +ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2002,6 +1705,13 @@ anser@^1.4.9: resolved "https://registry.yarnpkg.com/anser/-/anser-1.4.10.tgz#befa3eddf282684bd03b63dcda3927aef8c2e35b" integrity sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww== +ansi-escapes@^4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + ansi-fragments@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/ansi-fragments/-/ansi-fragments-0.2.1.tgz#24409c56c4cc37817c3d7caa99d8969e2de5a05e" @@ -2021,6 +1731,11 @@ ansi-regex@^5.0.0, ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -2040,6 +1755,11 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansi-styles@^6.0.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + anymatch@^3.0.3: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -2065,6 +1785,21 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + array-buffer-byte-length@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" @@ -2073,15 +1808,15 @@ array-buffer-byte-length@^1.0.0: call-bind "^1.0.2" is-array-buffer "^3.0.1" -array-includes@^3.1.6: - version "3.1.7" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda" - integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ== +array-includes@^3.1.5, array-includes@^3.1.6: + version "3.1.6" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" + integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" + get-intrinsic "^1.1.3" is-string "^1.0.7" array-union@^2.1.0: @@ -2089,59 +1824,46 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array.prototype.flat@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18" - integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== array.prototype.flatmap@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527" - integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ== + version "1.3.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" + integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" es-shim-unscopables "^1.0.0" array.prototype.tosorted@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz#620eff7442503d66c799d95503f82b475745cefd" - integrity sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg== + version "1.1.1" + resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532" + integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" es-shim-unscopables "^1.0.0" - get-intrinsic "^1.2.1" - -arraybuffer.prototype.slice@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12" - integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw== - dependencies: - array-buffer-byte-length "^1.0.0" - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - is-array-buffer "^3.0.2" - is-shared-array-buffer "^1.0.2" + get-intrinsic "^1.1.3" asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== -ast-types@0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.15.2.tgz#39ae4809393c4b16df751ee563411423e85fb49d" - integrity sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg== +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + +ast-types@0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.14.2.tgz#600b882df8583e3cd4f2df5fa20fa83759d4bdfd" + integrity sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA== dependencies: tslib "^2.0.1" @@ -2150,17 +1872,25 @@ astral-regex@^1.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + async-limiter@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -asynciterator.prototype@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz#8c5df0514936cdd133604dfcc9d3fb93f09b2b62" - integrity sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg== - dependencies: - has-symbols "^1.0.3" +async@^3.2.2: + version "3.2.4" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== available-typed-arrays@^1.0.5: version "1.0.5" @@ -2172,51 +1902,90 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-plugin-polyfill-corejs2@^0.4.8: - version "0.4.8" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz#dbcc3c8ca758a290d47c3c6a490d59429b0d2269" - integrity sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg== - dependencies: - "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.5.0" - semver "^6.3.1" - -babel-plugin-polyfill-corejs3@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz#9eea32349d94556c2ad3ab9b82ebb27d4bf04a81" - integrity sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg== +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/helper-define-polyfill-provider" "^0.5.0" - core-js-compat "^3.34.0" + "@babel/compat-data" "^7.17.7" + "@babel/helper-define-polyfill-provider" "^0.3.3" + semver "^6.1.1" -babel-plugin-polyfill-regenerator@^0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz#8b0c8fc6434239e5d7b8a9d1f832bb2b0310f06a" - integrity sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg== +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.5.0" + "@babel/helper-define-polyfill-provider" "^0.3.3" + core-js-compat "^3.25.1" -babel-plugin-transform-flow-enums@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz#d1d0cc9bdc799c850ca110d0ddc9f21b9ec3ef25" - integrity sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ== - dependencies: - "@babel/plugin-syntax-flow" "^7.12.1" +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.3" + +babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: + version "7.0.0-beta.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" + integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== + +babel-preset-fbjs@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz#38a14e5a7a3b285a3f3a86552d650dca5cf6111c" + integrity sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoped-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-member-expression-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-property-literals" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.2.3, base64-js@^1.3.1, base64-js@^1.5.1: +base64-js@^1.1.2, base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -big-integer@1.6.x: - version "1.6.52" - resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.52.tgz#60a887f3047614a8e1bffe5d7173490a97dc8c85" - integrity sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg== +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" bl@^4.1.0: version "4.1.0" @@ -2227,20 +1996,6 @@ bl@^4.1.0: inherits "^2.0.4" readable-stream "^3.4.0" -bplist-creator@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/bplist-creator/-/bplist-creator-0.1.0.tgz#018a2d1b587f769e379ef5519103730f8963ba1e" - integrity sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg== - dependencies: - stream-buffers "2.2.x" - -bplist-parser@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.3.1.tgz#e1c90b2ca2a9f9474cc72f6862bbf3fee8341fd1" - integrity sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA== - dependencies: - big-integer "1.6.x" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2256,6 +2011,22 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + braces@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -2263,15 +2034,15 @@ braces@^3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.20.4, browserslist@^4.22.2: - version "4.22.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" - integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== +browserslist@^4.20.4, 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.30001580" - electron-to-chromium "^1.4.648" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" bser@2.1.1: version "2.1.1" @@ -2298,14 +2069,28 @@ bytes@3.0.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== -call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" - integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +call-bind@^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.2" - get-intrinsic "^1.2.1" - set-function-length "^1.1.1" + function-bind "^1.1.1" + get-intrinsic "^1.0.2" caller-callsite@^2.0.0: version "2.0.0" @@ -2336,17 +2121,22 @@ camelcase@^5.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0: +camelcase@^6.0.0: version "6.3.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001580: - version "1.0.30001580" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz#e3c76bc6fe020d9007647044278954ff8cd17d1e" - integrity sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA== +caniuse-lite@^1.0.30001449: + version "1.0.30001466" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001466.tgz#c1e6197c540392e09709ecaa9e3e403428c53375" + integrity sha512-ewtFBSfWjEmxUgNBSZItFSmVtvk9zkwkl1OfRZlKA8slltRN+/C/tuGVrF9styXkN36Yu3+SeJ1qkXxDEyNZ5w== + +chalk@5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" + integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA== -chalk@^2.4.2: +chalk@^2.0.0: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2363,37 +2153,25 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -chrome-launcher@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/chrome-launcher/-/chrome-launcher-0.15.2.tgz#4e6404e32200095fdce7f6a1e1004f9bd36fa5da" - integrity sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ== - dependencies: - "@types/node" "*" - escape-string-regexp "^4.0.0" - is-wsl "^2.2.0" - lighthouse-logger "^1.0.0" - -chromium-edge-launcher@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chromium-edge-launcher/-/chromium-edge-launcher-1.0.0.tgz#0443083074715a13c669530b35df7bfea33b1509" - integrity sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA== - dependencies: - "@types/node" "*" - escape-string-regexp "^4.0.0" - is-wsl "^2.2.0" - lighthouse-logger "^1.0.0" - mkdirp "^1.0.4" - rimraf "^3.0.2" - ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.2.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" - integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== + version "3.8.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" + integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" clean-stack@^2.0.0: version "2.2.0" @@ -2408,9 +2186,25 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.9.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" - integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg== + version "2.7.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" + integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== + +cli-truncate@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" + integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== + dependencies: + slice-ansi "^3.0.0" + string-width "^4.2.0" + +cli-truncate@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" + integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== + dependencies: + slice-ansi "^5.0.0" + string-width "^5.0.0" cliui@^6.0.0: version "6.0.0" @@ -2444,6 +2238,14 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -2473,11 +2275,21 @@ colorette@^1.0.7: resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== +colorette@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== + command-exists@^1.2.8: version "1.2.9" resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== +commander@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1" + integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA== + commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -2488,11 +2300,21 @@ commander@^9.4.1: resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== +commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -2528,17 +2350,22 @@ connect@^3.6.5: parseurl "~1.3.3" utils-merge "1.0.1" -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +convert-source-map@^1.7.0: + 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.31.0, core-js-compat@^3.34.0: - version "3.35.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.1.tgz#215247d7edb9e830efa4218ff719beb2803555e2" - integrity sha512-sftHa5qUJY3rs9Zht1WEnmkvXputCyDBczPnr7QDgL8n3qrF3CMXY4VPSYtOLLiOUJcah2WNXREd48iOl6mQIw== +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.22.2" + browserslist "^4.21.5" core-util-is@~1.0.0: version "1.0.3" @@ -2566,6 +2393,17 @@ cosmiconfig@^7.0.1: path-type "^4.0.0" yaml "^1.10.0" +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -2576,23 +2414,23 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: which "^2.0.1" csstype@^3.0.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + version "3.1.1" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" + integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== dayjs@^1.8.15: - version "1.11.10" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" - integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== + 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.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -2604,6 +2442,11 @@ decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decode-uri-component@^0.2.0: + 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" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" @@ -2614,10 +2457,10 @@ deep-is@^0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== -deepmerge@^4.3.0: - 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== +deepmerge@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-3.3.0.tgz#d3c47fd6f3a93d517b14426b0628a17b0125f5f7" + integrity sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA== defaults@^1.0.3: version "1.0.4" @@ -2626,23 +2469,35 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -define-data-property@^1.0.1, define-data-property@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3" - integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ== +define-properties@^1.1.3, define-properties@^1.1.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" + integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== dependencies: - get-intrinsic "^1.2.1" - gopd "^1.0.1" has-property-descriptors "^1.0.0" + object-keys "^1.1.1" -define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" - integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: - define-data-property "^1.0.1" - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" del@^6.1.1: version "6.1.1" @@ -2668,14 +2523,14 @@ depd@2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -deprecated-react-native-prop-types@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/deprecated-react-native-prop-types/-/deprecated-react-native-prop-types-5.0.0.tgz#02a12f090da7bd9e8c3ac53c31cf786a1315d302" - integrity sha512-cIK8KYiiGVOFsKdPMmm1L3tA/Gl+JopXL6F5+C7x39MyPsQYnP57Im/D6bNUzcborD7fcMwiwZqcBdBXXZucYQ== +deprecated-react-native-prop-types@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/deprecated-react-native-prop-types/-/deprecated-react-native-prop-types-3.0.1.tgz#a275f84cd8519cd1665e8df3c99e9067d57a23ec" + integrity sha512-J0jCJcsk4hMlIb7xwOZKLfMpuJn6l8UtrPEzzQV5ewz5gvKNYakhBuq9h2rWX7YwHHJZFhU5W8ye7dB9oN8VcQ== dependencies: - "@react-native/normalize-colors" "^0.73.0" - invariant "^2.2.4" - prop-types "^15.8.1" + "@react-native/normalize-color" "*" + invariant "*" + prop-types "*" destroy@1.2.0: version "1.2.0" @@ -2703,21 +2558,31 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ee-first@1.1.1: version "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.648: - version "1.4.648" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz#c7b46c9010752c37bb4322739d6d2dd82354fbe4" - integrity sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg== +electron-to-chromium@^1.4.284: + version "1.4.329" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.329.tgz#ea54b67c981c814f16917b585acf3a667d4c997f" + integrity sha512-dcwPzNUG4+reo5z+wHnrl2eZMu4kz+nLQEeepxLEDTLDC7Mi7AVTM4NXWct1TZyu3G4oQgygaAfbByaBtPqw2Q== emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -2730,10 +2595,10 @@ end-of-stream@^1.1.0: dependencies: once "^1.4.0" -envinfo@^7.10.0: - version "7.11.0" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.11.0.tgz#c3793f44284a55ff8c82faf1ffd91bc6478ea01f" - integrity sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg== +envinfo@^7.7.2: + version "7.8.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== error-ex@^1.3.1: version "1.3.2" @@ -2749,7 +2614,7 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.3.4" -errorhandler@^1.5.1: +errorhandler@^1.5.0: version "1.5.1" resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.5.1.tgz#b9ba5d17cf90744cd1e851357a6e75bf806a9a91" integrity sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A== @@ -2757,26 +2622,25 @@ errorhandler@^1.5.1: accepts "~1.3.7" escape-html "~1.0.3" -es-abstract@^1.22.1: - version "1.22.3" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.3.tgz#48e79f5573198de6dee3589195727f4f74bc4f32" - integrity sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA== +es-abstract@^1.19.0, es-abstract@^1.20.4: + version "1.21.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff" + integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg== dependencies: array-buffer-byte-length "^1.0.0" - arraybuffer.prototype.slice "^1.0.2" available-typed-arrays "^1.0.5" - call-bind "^1.0.5" + call-bind "^1.0.2" es-set-tostringtag "^2.0.1" es-to-primitive "^1.2.1" - function.prototype.name "^1.1.6" - get-intrinsic "^1.2.2" + function.prototype.name "^1.1.5" + get-intrinsic "^1.2.0" get-symbol-description "^1.0.0" globalthis "^1.0.3" gopd "^1.0.1" + has "^1.0.3" has-property-descriptors "^1.0.0" has-proto "^1.0.1" has-symbols "^1.0.3" - hasown "^2.0.0" internal-slot "^1.0.5" is-array-buffer "^3.0.2" is-callable "^1.2.7" @@ -2784,59 +2648,35 @@ es-abstract@^1.22.1: is-regex "^1.1.4" is-shared-array-buffer "^1.0.2" is-string "^1.0.7" - is-typed-array "^1.1.12" + is-typed-array "^1.1.10" is-weakref "^1.0.2" - object-inspect "^1.13.1" + object-inspect "^1.12.3" object-keys "^1.1.1" object.assign "^4.1.4" - regexp.prototype.flags "^1.5.1" - safe-array-concat "^1.0.1" + regexp.prototype.flags "^1.4.3" safe-regex-test "^1.0.0" - string.prototype.trim "^1.2.8" - string.prototype.trimend "^1.0.7" - string.prototype.trimstart "^1.0.7" - typed-array-buffer "^1.0.0" - typed-array-byte-length "^1.0.0" - typed-array-byte-offset "^1.0.0" + string.prototype.trim "^1.2.7" + string.prototype.trimend "^1.0.6" + string.prototype.trimstart "^1.0.6" typed-array-length "^1.0.4" unbox-primitive "^1.0.2" - which-typed-array "^1.1.13" - -es-iterator-helpers@^1.0.12: - version "1.0.15" - resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz#bd81d275ac766431d19305923707c3efd9f1ae40" - integrity sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g== - dependencies: - asynciterator.prototype "^1.0.0" - call-bind "^1.0.2" - define-properties "^1.2.1" - es-abstract "^1.22.1" - es-set-tostringtag "^2.0.1" - function-bind "^1.1.1" - get-intrinsic "^1.2.1" - globalthis "^1.0.3" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" - has-symbols "^1.0.3" - internal-slot "^1.0.5" - iterator.prototype "^1.1.2" - safe-array-concat "^1.0.1" + which-typed-array "^1.1.9" es-set-tostringtag@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9" - integrity sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q== + version "2.0.1" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" + integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== dependencies: - get-intrinsic "^1.2.2" + get-intrinsic "^1.1.3" + has "^1.0.3" has-tostringtag "^1.0.0" - hasown "^2.0.0" es-shim-unscopables@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" - integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== dependencies: - hasown "^2.0.0" + has "^1.0.3" es-to-primitive@^1.2.1: version "1.2.1" @@ -2877,16 +2717,15 @@ eslint-plugin-react-hooks@^4.6.0: resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== -eslint-plugin-react@^7.33.2: - version "7.33.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz#69ee09443ffc583927eafe86ffebb470ee737608" - integrity sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw== +eslint-plugin-react@^7.32.2: + version "7.32.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz#e71f21c7c265ebce01bcbc9d0955170c55571f10" + integrity sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg== dependencies: array-includes "^3.1.6" array.prototype.flatmap "^1.3.1" array.prototype.tosorted "^1.1.1" doctrine "^2.1.0" - es-iterator-helpers "^1.0.12" estraverse "^5.3.0" jsx-ast-utils "^2.4.1 || ^3.0.0" minimatch "^3.1.2" @@ -2896,44 +2735,51 @@ eslint-plugin-react@^7.33.2: object.values "^1.1.6" prop-types "^15.8.1" resolve "^2.0.0-next.4" - semver "^6.3.1" + semver "^6.3.0" string.prototype.matchall "^4.0.8" -eslint-scope@^7.2.2: - version "7.2.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" - integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-scope@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" + integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" - integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== +eslint-visitor-keys@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" + integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint@^8.56.0: - version "8.56.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.56.0.tgz#4957ce8da409dc0809f99ab07a1b94832ab74b15" - integrity sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ== +eslint@^8.36.0: + version "8.36.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.36.0.tgz#1bd72202200a5492f91803b113fb8a83b11285cf" + integrity sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw== dependencies: "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.6.1" - "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.56.0" - "@humanwhocodes/config-array" "^0.11.13" + "@eslint-community/regexpp" "^4.4.0" + "@eslint/eslintrc" "^2.0.1" + "@eslint/js" "8.36.0" + "@humanwhocodes/config-array" "^0.11.8" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" - "@ungap/structured-clone" "^1.2.0" - ajv "^6.12.4" + ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" debug "^4.3.2" doctrine "^3.0.0" escape-string-regexp "^4.0.0" - eslint-scope "^7.2.2" - eslint-visitor-keys "^3.4.3" - espree "^9.6.1" + eslint-scope "^7.1.1" + eslint-visitor-keys "^3.3.0" + espree "^9.5.0" esquery "^1.4.2" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -2941,29 +2787,32 @@ eslint@^8.56.0: find-up "^5.0.0" glob-parent "^6.0.2" globals "^13.19.0" - graphemer "^1.4.0" + grapheme-splitter "^1.0.4" ignore "^5.2.0" + import-fresh "^3.0.0" imurmurhash "^0.1.4" is-glob "^4.0.0" is-path-inside "^3.0.3" + js-sdsl "^4.1.4" js-yaml "^4.1.0" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.4.1" lodash.merge "^4.6.2" minimatch "^3.1.2" natural-compare "^1.4.0" - optionator "^0.9.3" + optionator "^0.9.1" strip-ansi "^6.0.1" + strip-json-comments "^3.1.0" text-table "^0.2.0" -espree@^9.6.0, espree@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" - integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== +espree@^9.5.0: + version "9.5.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.5.0.tgz#3646d4e3f58907464edba852fa047e6a27bdf113" + integrity sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw== dependencies: - acorn "^8.9.0" + acorn "^8.8.0" acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" + eslint-visitor-keys "^3.3.0" esprima@^4.0.0, esprima@~4.0.0: version "4.0.1" @@ -2984,6 +2833,11 @@ esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" @@ -3004,6 +2858,19 @@ event-target-shim@^5.0.0, event-target-shim@^5.0.1: resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execa@^4.0.3: version "4.1.0" resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" @@ -3019,20 +2886,62 @@ execa@^4.0.3: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^5.0.0, execa@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== +execa@^7.0.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-7.1.1.tgz#3eb3c83d239488e7b409d48e8813b76bb55c9c43" + integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q== dependencies: cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" + get-stream "^6.0.1" + human-signals "^4.3.0" + is-stream "^3.0.0" merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" @@ -3040,9 +2949,9 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.2.9: - version "3.3.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" - integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + version "3.2.12" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" + integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -3060,17 +2969,17 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fast-xml-parser@^4.0.12, fast-xml-parser@^4.2.4: - version "4.3.3" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.3.3.tgz#aeaf5778392329f17168c40c51bcbfec8ff965be" - integrity sha512-coV/D1MhrShMvU6D0I+VAK3umz6hUaxxhL0yp/9RjfiYUfAv14rDhGQL+PLForhMdr0wq3PiV07WtkkNjJjNHg== +fast-xml-parser@^4.0.12: + version "4.1.3" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.1.3.tgz#0254ad0d4d27f07e6b48254b068c0c137488dd97" + integrity sha512-LsNDahCiCcJPe8NO7HijcnukHB24tKbfDDA5IILx9dmW3Frb52lhbeX6MPNUSvyGNfav2VTYpJ/OqkRoVLrh2Q== dependencies: strnum "^1.0.5" fastq@^1.6.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" - integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" @@ -3088,6 +2997,16 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -3132,7 +3051,7 @@ find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" -find-up@^5.0.0, find-up@~5.0.0: +find-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== @@ -3141,33 +3060,27 @@ find-up@^5.0.0, find-up@~5.0.0: path-exists "^4.0.0" flat-cache@^3.0.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" - integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: - flatted "^3.2.9" - keyv "^4.5.3" + flatted "^3.1.0" rimraf "^3.0.2" -flatted@^3.2.9: - version "3.2.9" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf" - integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== - -flow-enums-runtime@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz#5bb0cd1b0a3e471330f4d109039b7eba5cb3e787" - integrity sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw== +flatted@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== flow-parser@0.*: - version "0.227.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.227.0.tgz#e50b65be9dc6810438c975e816a68005fbcd5107" - integrity sha512-nOygtGKcX/siZK/lFzpfdHEfOkfGcTW7rNroR1Zsz6T/JxSahPALXVt5qVHq/fgvMJuv096BTKbgxN3PzVBaDA== + version "0.201.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.201.0.tgz#d2005d4dae6fddf60d30f9ae0fb49a13c9c51cfe" + integrity sha512-G4oeDNpNGyIrweF9EnoHatncAihMT0tQgV6NMdyM5I7fhrz9Pr13PJ2KLQ673O4wj9KooTdBpeeYHdDNAQoyyw== -flow-parser@^0.206.0: - version "0.206.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.206.0.tgz#f4f794f8026535278393308e01ea72f31000bfef" - integrity sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w== +flow-parser@^0.185.0: + version "0.185.2" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.185.2.tgz#cb7ee57f77377d6c5d69a469e980f6332a15e492" + integrity sha512-2hJ5ACYeJCzNtiVULov6pljKOLygy0zddoqSI1fFetM+XRPpRshFdGEijtqlamA1XwyZ+7rhryI6FQFzvtLWUQ== for-each@^0.3.3: version "0.3.3" @@ -3176,6 +3089,18 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -3205,26 +3130,26 @@ fs.realpath@^1.0.0: integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== -function-bind@^1.1.1, function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.5, function.prototype.name@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" - integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== +function.prototype.name@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" + integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - functions-have-names "^1.2.3" + define-properties "^1.1.3" + es-abstract "^1.19.0" + functions-have-names "^1.2.2" -functions-have-names@^1.2.3: +functions-have-names@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== @@ -3239,15 +3164,21 @@ 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, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b" - integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA== +get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" + integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== dependencies: - function-bind "^1.1.2" - has-proto "^1.0.1" + function-bind "^1.1.1" + has "^1.0.3" has-symbols "^1.0.3" - hasown "^2.0.0" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" get-stream@^5.0.0: version "5.2.0" @@ -3256,7 +3187,7 @@ get-stream@^5.0.0: dependencies: pump "^3.0.0" -get-stream@^6.0.0: +get-stream@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== @@ -3269,10 +3200,10 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" -getenv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/getenv/-/getenv-1.0.0.tgz#874f2e7544fbca53c7a4738f37de8605c3fcfc31" - integrity sha512-7yetJWqbS9sbn0vIfliPsFgoXMKn/YMF+Wuiog97x+urnSRRRZ7xB+uVkwGKzRgq9CDFfMQnE9ruL5DHv9c6Xg== +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== glob-parent@^5.1.2: version "5.1.2" @@ -3288,19 +3219,7 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob@7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.1.1, glob@^7.1.3: +glob@^7.1.3: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -3329,9 +3248,9 @@ globals@^11.1.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: - version "13.24.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== + version "13.20.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" + integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== dependencies: type-fest "^0.20.2" @@ -3362,14 +3281,14 @@ gopd@^1.0.1: get-intrinsic "^1.1.3" graceful-fs@^4.1.11, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: - version "4.2.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== + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== -graphemer@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" - integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== +grapheme-splitter@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" + integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" @@ -3386,12 +3305,12 @@ 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, has-property-descriptors@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" - integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg== +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.2.2" + get-intrinsic "^1.1.1" has-proto@^1.0.1: version "1.0.1" @@ -3410,36 +3329,55 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -hasown@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" - integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: - function-bind "^1.1.2" + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" -hermes-estree@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.15.0.tgz#e32f6210ab18c7b705bdcb375f7700f2db15d6ba" - integrity sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ== +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== -hermes-estree@0.18.2: - version "0.18.2" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.18.2.tgz#fd450fa1659cf074ceaa2ddeeb21674f3b2342f3" - integrity sha512-KoLsoWXJ5o81nit1wSyEZnWUGy9cBna9iYMZBR7skKh7okYAYKqQ9/OczwpMHn/cH0hKDyblulGsJ7FknlfVxQ== +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" -hermes-parser@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.15.0.tgz#f611a297c2a2dbbfbce8af8543242254f604c382" - integrity sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q== +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - hermes-estree "0.15.0" + function-bind "^1.1.1" + +hermes-estree@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.8.0.tgz#530be27243ca49f008381c1f3e8b18fb26bf9ec0" + integrity sha512-W6JDAOLZ5pMPMjEiQGLCXSSV7pIBEgRR5zGkxgmzGSXHOxqV5dC/M1Zevqpbm9TZDE5tu358qZf8Vkzmsc+u7Q== -hermes-parser@0.18.2: - version "0.18.2" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.18.2.tgz#50f15e2fcd559a48c68cd7af259d4292298bd14d" - integrity sha512-1eQfvib+VPpgBZ2zYKQhpuOjw1tH+Emuib6QmjkJWJMhyjM8xnXMvA+76o9LhF0zOAJDZgPfQhg43cyXEyl5Ew== +hermes-parser@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.8.0.tgz#116dceaba32e45b16d6aefb5c4c830eaeba2d257" + integrity sha512-yZKalg1fTYG5eOiToLUaw69rQfZq/fi+/NtEXRU7N87K/XobNRhRWorh80oSge2lWUiZfTgUvRJH+XgZWrhoqA== dependencies: - hermes-estree "0.18.2" + hermes-estree "0.8.0" hermes-profile-transformer@^0.0.6: version "0.0.6" @@ -3464,27 +3402,25 @@ human-signals@^1.1.1: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +human-signals@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.0.tgz#2095c3cd5afae40049403d4b811235b03879db50" + integrity sha512-zyzVyMjpGBX2+6cDVZeFPCdtOtdsxOeseRhB9tkQ6xXmGUNrcnBzdEKPy3VPNYz+4gy1oukVOXcrJCunSyc6QQ== ieee754@^1.1.13: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore@^5.2.0, ignore@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" - integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== +ignore@^5.2.0: + version "5.2.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -image-size@^1.0.2: - version "1.1.1" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.1.1.tgz#ddd67d4dc340e52ac29ce5f546a09f4e29e840ac" - integrity sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ== - dependencies: - queue "6.0.2" +image-size@^0.6.0: + version "0.6.3" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" + integrity sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA== import-fresh@^2.0.0: version "2.0.0" @@ -3494,7 +3430,7 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" -import-fresh@^3.2.1: +import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -3525,16 +3461,16 @@ inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -internal-slot@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.6.tgz#37e756098c4911c5e912b8edbf71ed3aa116f930" - integrity sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg== +internal-slot@^1.0.3, internal-slot@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" + integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== dependencies: - get-intrinsic "^1.2.2" - hasown "^2.0.0" + get-intrinsic "^1.2.0" + has "^1.0.3" side-channel "^1.0.4" -invariant@^2.2.4: +invariant@*, invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== @@ -3554,6 +3490,20 @@ is-absolute@^1.0.0: is-relative "^1.0.0" is-windows "^1.0.1" +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" @@ -3568,13 +3518,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-async-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646" - integrity sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA== - dependencies: - has-tostringtag "^1.0.0" - is-bigint@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" @@ -3590,47 +3533,84 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.13.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== dependencies: - hasown "^2.0.0" + kind-of "^6.0.0" -is-date-object@^1.0.1, is-date-object@^1.0.5: +is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== dependencies: has-tostringtag "^1.0.0" +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + is-directory@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" integrity sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw== -is-docker@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -is-finalizationregistry@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz#c8749b65f17c133313e661b1289b95ad3dbd62e6" - integrity sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw== - dependencies: - call-bind "^1.0.2" - is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" @@ -3641,12 +3621,10 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-generator-function@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" - integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== - dependencies: - has-tostringtag "^1.0.0" +is-fullwidth-code-point@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" + integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== is-git-dirty@^2.0.1: version "2.0.2" @@ -3676,11 +3654,6 @@ is-interactive@^1.0.0: resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== -is-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" - integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg== - is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -3693,6 +3666,13 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -3708,7 +3688,7 @@ is-path-inside@^3.0.2, is-path-inside@^3.0.3: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== -is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -3730,11 +3710,6 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-set@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" - integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== - is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -3742,11 +3717,21 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" @@ -3761,12 +3746,16 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" -is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: - version "1.1.12" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" - integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== +is-typed-array@^1.1.10, is-typed-array@^1.1.9: + version "1.1.10" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" + integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== dependencies: - which-typed-array "^1.1.11" + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" is-unc-path@^1.0.0: version "1.0.0" @@ -3780,11 +3769,6 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -is-weakmap@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" - integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA== - is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -3792,15 +3776,7 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" -is-weakset@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d" - integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - -is-windows@^1.0.1: +is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -3810,19 +3786,7 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== -is-wsl@^2.1.1, is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - -isarray@~1.0.0: +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== @@ -3832,108 +3796,138 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^3.0.1: +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== -iterator.prototype@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0" - integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w== - dependencies: - define-properties "^1.2.1" - get-intrinsic "^1.2.1" - has-symbols "^1.0.3" - reflect.getprototypeof "^1.0.4" - set-function-name "^2.0.1" - -jest-environment-node@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" - integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== +jest-environment-node@^29.2.1: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967" + integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw== dependencies: - "@jest/environment" "^29.7.0" - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^29.7.0" - jest-util "^29.7.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" -jest-get-type@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" - integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-message-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" - integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== +jest-message-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e" + integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^29.7.0" + pretty-format "^29.5.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" - integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== +jest-mock@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed" + integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw== + dependencies: + "@jest/types" "^29.5.0" + "@types/node" "*" + jest-util "^29.5.0" + +jest-regex-util@^27.0.6: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== + +jest-serializer@^27.0.6: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.9" + +jest-util@^27.2.0: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-util "^29.7.0" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" -jest-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" - integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== +jest-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f" + integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ== dependencies: - "@jest/types" "^29.6.3" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" - integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== +jest-validate@^26.5.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== dependencies: - "@jest/types" "^29.6.3" - camelcase "^6.2.0" + "@jest/types" "^26.6.2" + camelcase "^6.0.0" chalk "^4.0.0" - jest-get-type "^29.6.3" + jest-get-type "^26.3.0" leven "^3.1.0" - pretty-format "^29.7.0" + pretty-format "^26.6.2" -jest-worker@^29.6.3: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" - integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== +jest-worker@^27.2.0: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" - jest-util "^29.7.0" merge-stream "^2.0.0" supports-color "^8.0.0" +jetifier@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/jetifier/-/jetifier-2.0.0.tgz#699391367ca1fe7bc4da5f8bf691eb117758e4cb" + integrity sha512-J4Au9KuT74te+PCCCHKgAjyLlEa+2VyIAEPNCdE5aNkAJ6FAJcAqcdzEkSnzNksIa9NkGmC4tPiClk2e7tCJuQ== + joi@^17.2.1: - version "17.12.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.12.0.tgz#a3fb5715f198beb0471cd551dd26792089c308d5" - integrity sha512-HSLsmSmXz+PV9PYoi3p7cgIbj06WnEBNT28n+bbBNcPZXZFqCzzvGqpTBPujx/Z0nh1+KNQPDrNgdmQ8dq0qYw== + version "17.8.4" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.8.4.tgz#f2d91ab8acd3cca4079ba70669c65891739234aa" + integrity sha512-jjdRHb5WtL+KgSHvOULQEPPv4kcl+ixd1ybOFQq3rWLgEEqc03QMmilodL0GVJE14U/SQDXkUhQUSZANGDH/AA== dependencies: - "@hapi/hoek" "^9.3.0" - "@hapi/topo" "^5.1.0" - "@sideway/address" "^4.1.4" + "@hapi/hoek" "^9.0.0" + "@hapi/topo" "^5.0.0" + "@sideway/address" "^4.1.3" "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" +js-sdsl@^4.1.4: + version "4.3.0" + resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.3.0.tgz#aeefe32a451f7af88425b11fdb5f58c90ae1d711" + integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -3959,15 +3953,10 @@ jsc-android@^250231.0.0: resolved "https://registry.yarnpkg.com/jsc-android/-/jsc-android-250231.0.0.tgz#91720f8df382a108872fa4b3f558f33ba5e95262" integrity sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw== -jsc-safe-url@^0.2.2: - version "0.2.4" - resolved "https://registry.yarnpkg.com/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz#141c14fbb43791e88d5dc64e85a374575a83477a" - integrity sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q== - -jscodeshift@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.14.0.tgz#7542e6715d6d2e8bde0b4e883f0ccea358b46881" - integrity sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA== +jscodeshift@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.13.1.tgz#69bfe51e54c831296380585c6d9e733512aecdef" + integrity sha512-lGyiEbGOvmMRKgWk4vf+lUrCWO/8YR8sUR3FKF1Cq5fovjZDlIcw3Hu5ppLHAnEXshVffvaM0eyuY/AbOeYpnQ== dependencies: "@babel/core" "^7.13.16" "@babel/parser" "^7.13.16" @@ -3982,10 +3971,10 @@ jscodeshift@^0.14.0: chalk "^4.1.2" flow-parser "0.*" graceful-fs "^4.2.4" - micromatch "^4.0.4" + micromatch "^3.1.10" neo-async "^2.5.0" node-dir "^0.1.17" - recast "^0.21.0" + recast "^0.20.4" temp "^0.8.4" write-file-atomic "^2.3.0" @@ -3999,11 +3988,6 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== -json-buffer@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" - integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== - json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -4024,7 +4008,7 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: +json5@^2.2.1, 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== @@ -4046,23 +4030,33 @@ jsonfile@^6.0.1: graceful-fs "^4.1.6" "jsx-ast-utils@^2.4.1 || ^3.0.0": - version "3.3.5" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a" - integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ== + version "3.3.3" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea" + integrity sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw== dependencies: - array-includes "^3.1.6" - array.prototype.flat "^1.3.1" - object.assign "^4.1.4" - object.values "^1.1.6" + array-includes "^3.1.5" + object.assign "^4.1.3" -keyv@^4.5.3: - version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" - integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: - json-buffer "3.0.1" + is-buffer "^1.1.5" -kind-of@^6.0.2: +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -4090,19 +4084,49 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -lighthouse-logger@^1.0.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz#aef90f9e97cd81db367c7634292ee22079280aaa" - integrity sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g== - dependencies: - debug "^2.6.9" - marky "^1.2.2" +lilconfig@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== lines-and-columns@^1.1.6: version "1.2.4" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +lint-staged@^13.2.0: + version "13.2.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.2.0.tgz#b7abaf79c91cd36d824f17b23a4ce5209206126a" + integrity sha512-GbyK5iWinax5Dfw5obm2g2ccUiZXNGtAS4mCbJ0Lv4rq6iEtfBSjOYdcbOtAIFtM114t0vdpViDDetjVTSd8Vw== + dependencies: + chalk "5.2.0" + cli-truncate "^3.1.0" + commander "^10.0.0" + debug "^4.3.4" + execa "^7.0.0" + lilconfig "2.1.0" + listr2 "^5.0.7" + micromatch "^4.0.5" + normalize-path "^3.0.0" + object-inspect "^1.12.3" + pidtree "^0.6.0" + string-argv "^0.3.1" + yaml "^2.2.1" + +listr2@^5.0.7: + version "5.0.8" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-5.0.8.tgz#a9379ffeb4bd83a68931a65fb223a11510d6ba23" + integrity sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA== + dependencies: + cli-truncate "^2.1.0" + colorette "^2.0.19" + log-update "^4.0.0" + p-map "^4.0.0" + rfdc "^1.3.0" + rxjs "^7.8.0" + through "^2.3.8" + wrap-ansi "^7.0.0" + locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -4148,6 +4172,16 @@ log-symbols@^4.1.0: chalk "^4.1.0" is-unicode-supported "^0.1.0" +log-update@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" + integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== + dependencies: + ansi-escapes "^4.3.0" + cli-cursor "^3.1.0" + slice-ansi "^4.0.0" + wrap-ansi "^6.2.0" + logkitty@^0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/logkitty/-/logkitty-0.7.1.tgz#8e8d62f4085a826e8d38987722570234e33c6aa7" @@ -4193,10 +4227,17 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -marky@^1.2.2: - version "1.2.5" - resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.5.tgz#55796b688cbd72390d2d399eaaf1832c9413e3c0" - integrity sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q== +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" memoize-one@^5.0.0: version "5.2.1" @@ -4213,116 +4254,201 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -metro-babel-transformer@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.80.5.tgz#a31bdafe22c63d2548c78a41fd902bf2a98af681" - integrity sha512-sxH6hcWCorhTbk4kaShCWsadzu99WBL4Nvq4m/sDTbp32//iGuxtAnUK+ZV+6IEygr2u9Z0/4XoZ8Sbcl71MpA== +metro-babel-transformer@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.73.8.tgz#521374cb9234ba126f3f8d63588db5901308b4ed" + integrity sha512-GO6H/W2RjZ0/gm1pIvdO9EP34s3XN6kzoeyxqmfqKfYhJmYZf1SzXbyiIHyMbJNwJVrsKuHqu32+GopTlKscWw== dependencies: "@babel/core" "^7.20.0" - hermes-parser "0.18.2" + hermes-parser "0.8.0" + metro-source-map "0.73.8" nullthrows "^1.1.1" -metro-cache-key@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-cache-key/-/metro-cache-key-0.80.5.tgz#3fd0ce5a360e0455dc8b68a659c60abde3edac1d" - integrity sha512-fr3QLZUarsB3tRbVcmr34kCBsTHk0Sh9JXGvBY/w3b2lbre+Lq5gtgLyFElHPecGF7o4z1eK9r3ubxtScHWcbA== +metro-cache-key@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-cache-key/-/metro-cache-key-0.73.8.tgz#afc9f63454edbd9d207544445a66e8a4e119462d" + integrity sha512-VzFGu4kJGIkLjyDgVoM2ZxIHlMdCZWMqVIux9N+EeyMVMvGXTiXW8eGROgxzDhVjyR58IjfMsYpRCKz5dR+2ew== -metro-cache@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.80.5.tgz#adc2e48d87312d68f305f830b22359cb4362ce4b" - integrity sha512-2u+dQ4PZwmC7eZo9uMBNhQQMig9f+w4QWBZwXCdVy/RYOHM0eObgGdMEOwODo73uxie82T9lWzxr3aZOZ+Nqtw== +metro-cache@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.73.8.tgz#85e2d7f7c7c74d1f942b7ecd168f7aceb987d883" + integrity sha512-/uFbTIw813Rvb8kSAIHvax9gWl41dtgjY2SpJLNIBLdQ6oFZ3CVo3ahZIiEZOrCeHl9xfGn5tmvNb8CEFa/Q5w== dependencies: - metro-core "0.80.5" + metro-core "0.73.8" rimraf "^3.0.2" -metro-config@0.80.5, metro-config@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.80.5.tgz#859e2ce307372f583bc8ebfe69bd233dd9328a8b" - integrity sha512-elqo/lwvF+VjZ1OPyvmW/9hSiGlmcqu+rQvDKw5F5WMX48ZC+ySTD1WcaD7e97pkgAlJHVYqZ98FCjRAYOAFRQ== +metro-config@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.73.8.tgz#8f6c22c94528919635c6688ed8d2ad8a10c70b27" + integrity sha512-sAYq+llL6ZAfro64U99ske8HcKKswxX4wIZbll9niBKG7TkWm7tfMY1jO687XEmE4683rHncZeBRav9pLngIzg== dependencies: - connect "^3.6.5" cosmiconfig "^5.0.5" - jest-validate "^29.6.3" - metro "0.80.5" - metro-cache "0.80.5" - metro-core "0.80.5" - metro-runtime "0.80.5" + jest-validate "^26.5.2" + metro "0.73.8" + metro-cache "0.73.8" + metro-core "0.73.8" + metro-runtime "0.73.8" -metro-core@0.80.5, metro-core@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.80.5.tgz#3ead635dcecfa6d0b380f8a80d3e5406f70846a9" - integrity sha512-vkLuaBhnZxTVpaZO8ZJVEHzjaqSXpOdpAiztSZ+NDaYM6jEFgle3/XIbLW91jTSf2+T8Pj5yB1G7KuOX+BcVwg== +metro-core@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.73.8.tgz#a31ba7d7bfe3f4c2ac2c7a2493aa4229ecad701e" + integrity sha512-Aew4dthbZf8bRRjlYGL3cnai3+LKYTf6mc7YS2xLQRWtgGZ1b/H8nQtBvXZpfRYFcS84UeEQ10vwIf5eR3qPdQ== dependencies: lodash.throttle "^4.1.1" - metro-resolver "0.80.5" + metro-resolver "0.73.8" -metro-file-map@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-file-map/-/metro-file-map-0.80.5.tgz#1e2f0026c1a380a8802c977279018093c21b191e" - integrity sha512-bKCvJ05drjq6QhQxnDUt3I8x7bTcHo3IIKVobEr14BK++nmxFGn/BmFLRzVBlghM6an3gqwpNEYxS5qNc+VKcg== +metro-file-map@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-file-map/-/metro-file-map-0.73.8.tgz#88d666e7764e1b0adf5fd634d91e97e3135d2db7" + integrity sha512-CM552hUO9om02jJdLszOCIDADKNaaeVz8CjYXItndvgr5jmFlQYAR+UMvaDzeT8oYdAV1DXAljma2CS2UBymPg== dependencies: + abort-controller "^3.0.0" anymatch "^3.0.3" debug "^2.2.0" fb-watchman "^2.0.0" graceful-fs "^4.2.4" invariant "^2.2.4" - jest-worker "^29.6.3" + jest-regex-util "^27.0.6" + jest-serializer "^27.0.6" + jest-util "^27.2.0" + jest-worker "^27.2.0" micromatch "^4.0.4" - node-abort-controller "^3.1.1" nullthrows "^1.1.1" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -metro-minify-terser@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-minify-terser/-/metro-minify-terser-0.80.5.tgz#6163fc920faad46153456fcd191ccc1ce0450946" - integrity sha512-S7oZLLcab6YXUT6jYFX/ZDMN7Fq6xBGGAG8liMFU1UljX6cTcEC2u+UIafYgCLrdVexp/+ClxrIetVPZ5LtL/g== +metro-hermes-compiler@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-hermes-compiler/-/metro-hermes-compiler-0.73.8.tgz#c522e2c97afc8bdc249755d88146a75720bc2498" + integrity sha512-2d7t+TEoQLk+jyXgBykmAtPPJK2B46DB3qUYIMKDFDDaKzCljrojyVuGgQq6SM1f95fe6HDAQ3K9ihTjeB90yw== + +metro-inspector-proxy@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-inspector-proxy/-/metro-inspector-proxy-0.73.8.tgz#67d5aadfc33fe97f61c716eb168db4bd5d0e3c96" + integrity sha512-F0QxwDTox0TDeXVRN7ZmI7BknBjPDVKQ1ZeKznFBiMa0SXiD1kzoksfpDbZ6hTEKrhVM9Ep0YQmC7avwZouOnA== + dependencies: + connect "^3.6.5" + debug "^2.2.0" + ws "^7.5.1" + yargs "^17.5.1" + +metro-minify-terser@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-minify-terser/-/metro-minify-terser-0.73.8.tgz#a0fe857d6aaf99cba3a2aef59ee06ac409682c6b" + integrity sha512-pnagyXAoMPhihWrHRIWqCxrP6EJ8Hfugv5RXBb6HbOANmwajn2uQuzeu18+dXaN1yPoDCMCgpg/UA4ibFN5jtQ== dependencies: terser "^5.15.0" -metro-resolver@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.80.5.tgz#3915be3b2bcf4f3e9e2f24bdde8d8c9ac26bb134" - integrity sha512-haJ/Hveio3zv/Fr4eXVdKzjUeHHDogYok7OpRqPSXGhTXisNXB+sLN7CpcUrCddFRUDLnVaqQOYwhYsFndgUwA== +metro-minify-uglify@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.73.8.tgz#b2e2430014c340479db4fc393a2ea4c5bad75ecd" + integrity sha512-9wZqKfraVfmtMXdOzRyan+6r1woQXqqa4KeXfVh7+Mxl+5+J0Lmw6EvTrWawsaOEpvpn32q9MfoHC1d8plDJwA== + dependencies: + uglify-es "^3.1.9" + +metro-react-native-babel-preset@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.8.tgz#04908f264f5d99c944ae20b5b11f659431328431" + integrity sha512-spNrcQJTbQntEIqJnCA6yL4S+dzV9fXCk7U+Rm7yJasZ4o4Frn7jP23isu7FlZIp1Azx1+6SbP7SgQM+IP5JgQ== + dependencies: + "@babel/core" "^7.20.0" + "@babel/plugin-proposal-async-generator-functions" "^7.0.0" + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" + "@babel/plugin-proposal-optional-chaining" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.0.0" + "@babel/plugin-syntax-export-default-from" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.18.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-async-to-generator" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-self" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-runtime" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + "@babel/plugin-transform-typescript" "^7.5.0" + "@babel/plugin-transform-unicode-regex" "^7.0.0" + "@babel/template" "^7.0.0" + react-refresh "^0.4.0" + +metro-react-native-babel-transformer@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.73.8.tgz#cbcd4b243216878431dc4311ce46f02a928e3991" + integrity sha512-oH/LCCJPauteAE28c0KJAiSrkV+1VJbU0PwA9UwaWnle+qevs/clpKQ8LrIr33YbBj4CiI1kFoVRuNRt5h4NFg== + dependencies: + "@babel/core" "^7.20.0" + babel-preset-fbjs "^3.4.0" + hermes-parser "0.8.0" + metro-babel-transformer "0.73.8" + metro-react-native-babel-preset "0.73.8" + metro-source-map "0.73.8" + nullthrows "^1.1.1" + +metro-resolver@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.73.8.tgz#65cc158575d130363296f66a33257c7971228640" + integrity sha512-GiBWont7/OgAftkkj2TiEp+Gf1PYZUk8xV4MbtnQjIKyy3MlGY3GbpMQ1BHih9GUQqlF0n9jsUlC2K5P0almXQ== + dependencies: + absolute-path "^0.0.0" -metro-runtime@0.80.5, metro-runtime@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.80.5.tgz#48ac4c732be195e0ebdefb5ac5d32c7da76305ad" - integrity sha512-L0syTWJUdWzfUmKgkScr6fSBVTh6QDr8eKEkRtn40OBd8LPagrJGySBboWSgbyn9eIb4ayW3Y347HxgXBSAjmg== +metro-runtime@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.73.8.tgz#dadae7c154fbbde24390cf7f7e7d934a2768cd18" + integrity sha512-M+Bg9M4EN5AEpJ8NkiUsawD75ifYvYfHi05w6QzHXaqOrsTeaRbbeLuOGCYxU2f/tPg17wQV97/rqUQzs9qEtA== dependencies: "@babel/runtime" "^7.0.0" + react-refresh "^0.4.0" -metro-source-map@0.80.5, metro-source-map@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.80.5.tgz#21acdc1d5417cf3009209555d84cbeb61de5d6d5" - integrity sha512-DwSF4l03mKPNqCtyQ6K23I43qzU1BViAXnuH81eYWdHglP+sDlPpY+/7rUahXEo6qXEHXfAJgVoo1sirbXbmsQ== +metro-source-map@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.73.8.tgz#5134174e3d43de26ad331b95f637944c6547d441" + integrity sha512-wozFXuBYMAy7b8BCYwC+qoXsvayVJBHWtSTlSLva99t+CoUSG9JO9kg1umzbOz28YYPxKmvb/wbnLMkHdas2cA== dependencies: "@babel/traverse" "^7.20.0" "@babel/types" "^7.20.0" invariant "^2.2.4" - metro-symbolicate "0.80.5" + metro-symbolicate "0.73.8" nullthrows "^1.1.1" - ob1 "0.80.5" + ob1 "0.73.8" source-map "^0.5.6" vlq "^1.0.0" -metro-symbolicate@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.80.5.tgz#7c253a8e05e2a8380753373ab30705d6e81094a5" - integrity sha512-IsM4mTYvmo9JvIqwEkCZ5+YeDVPST78Q17ZgljfLdHLSpIivOHp9oVoiwQ/YGbLx0xRHRIS/tKiXueWBnj3UWA== +metro-symbolicate@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.73.8.tgz#96920f607bce484283d822ee5fe18d932f69c03d" + integrity sha512-xkBAcceYYp0GGdCCuMzkCF1ejHsd0lYlbKBkjSRgM0Nlj80VapPaSwumYoAvSaDxcbkvS7/sCjURGp5DsSFgRQ== dependencies: invariant "^2.2.4" - metro-source-map "0.80.5" + metro-source-map "0.73.8" nullthrows "^1.1.1" source-map "^0.5.6" through2 "^2.0.1" vlq "^1.0.0" -metro-transform-plugins@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-transform-plugins/-/metro-transform-plugins-0.80.5.tgz#ef90d8d6522b042b832a571381f1a5a9c2c72adf" - integrity sha512-7IdlTqK/k5+qE3RvIU5QdCJUPk4tHWEqgVuYZu8exeW+s6qOJ66hGIJjXY/P7ccucqF+D4nsbAAW5unkoUdS6g== +metro-transform-plugins@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-transform-plugins/-/metro-transform-plugins-0.73.8.tgz#07be7fd94a448ea1b245ab02ce7d277d757f9a32" + integrity sha512-IxjlnB5eA49M0WfvPEzvRikK3Rr6bECUUfcZt/rWpSphq/mttgyLYcHQ+VTZZl0zHolC3cTLwgoDod4IIJBn1A== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.0" @@ -4330,28 +4456,29 @@ metro-transform-plugins@0.80.5: "@babel/traverse" "^7.20.0" nullthrows "^1.1.1" -metro-transform-worker@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro-transform-worker/-/metro-transform-worker-0.80.5.tgz#45b78093f5925cbbf1ecf2695114469dd49f5169" - integrity sha512-Q1oM7hfP+RBgAtzRFBDjPhArELUJF8iRCZ8OidqCpYzQJVGuJZ7InSnIf3hn1JyqiUQwv2f1LXBO78i2rAjzyA== +metro-transform-worker@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro-transform-worker/-/metro-transform-worker-0.73.8.tgz#701a006c2b4d93f1bb24802f3f2834c963153db9" + integrity sha512-B8kR6lmcvyG4UFSF2QDfr/eEnWJvg0ZadooF8Dg6m/3JSm9OAqfSoC0YrWqAuvtWImNDnbeKWN7/+ns44Hv6tg== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.0" "@babel/parser" "^7.20.0" "@babel/types" "^7.20.0" - metro "0.80.5" - metro-babel-transformer "0.80.5" - metro-cache "0.80.5" - metro-cache-key "0.80.5" - metro-minify-terser "0.80.5" - metro-source-map "0.80.5" - metro-transform-plugins "0.80.5" + babel-preset-fbjs "^3.4.0" + metro "0.73.8" + metro-babel-transformer "0.73.8" + metro-cache "0.73.8" + metro-cache-key "0.73.8" + metro-hermes-compiler "0.73.8" + metro-source-map "0.73.8" + metro-transform-plugins "0.73.8" nullthrows "^1.1.1" -metro@0.80.5, metro@^0.80.3: - version "0.80.5" - resolved "https://registry.yarnpkg.com/metro/-/metro-0.80.5.tgz#94cd36df2eab434f050314a6d31529e8dc1b26df" - integrity sha512-OE/CGbOgbi8BlTN1QqJgKOBaC27dS0JBQw473JcivrpgVnqIsluROA7AavEaTVUrB9wPUZvoNVDROn5uiM2jfw== +metro@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.73.8.tgz#25f014e4064eb34a4833c316e0a9094528061a8c" + integrity sha512-2EMJME9w5x7Uzn+DnQ4hzWr33u/aASaOBGdpf4lxbrlk6/vl4UBfX1sru6KU535qc/0Z1BMt4Vq9qsP3ZGFmWg== dependencies: "@babel/code-frame" "^7.0.0" "@babel/core" "^7.20.0" @@ -4360,7 +4487,9 @@ metro@0.80.5, metro@^0.80.3: "@babel/template" "^7.0.0" "@babel/traverse" "^7.20.0" "@babel/types" "^7.20.0" + absolute-path "^0.0.0" accepts "^1.3.7" + async "^3.2.2" chalk "^4.0.0" ci-info "^2.0.0" connect "^3.6.5" @@ -4368,24 +4497,28 @@ metro@0.80.5, metro@^0.80.3: denodeify "^1.2.1" error-stack-parser "^2.0.6" graceful-fs "^4.2.4" - hermes-parser "0.18.2" - image-size "^1.0.2" + hermes-parser "0.8.0" + image-size "^0.6.0" invariant "^2.2.4" - jest-worker "^29.6.3" - jsc-safe-url "^0.2.2" + jest-worker "^27.2.0" lodash.throttle "^4.1.1" - metro-babel-transformer "0.80.5" - metro-cache "0.80.5" - metro-cache-key "0.80.5" - metro-config "0.80.5" - metro-core "0.80.5" - metro-file-map "0.80.5" - metro-resolver "0.80.5" - metro-runtime "0.80.5" - metro-source-map "0.80.5" - metro-symbolicate "0.80.5" - metro-transform-plugins "0.80.5" - metro-transform-worker "0.80.5" + metro-babel-transformer "0.73.8" + metro-cache "0.73.8" + metro-cache-key "0.73.8" + metro-config "0.73.8" + metro-core "0.73.8" + metro-file-map "0.73.8" + metro-hermes-compiler "0.73.8" + metro-inspector-proxy "0.73.8" + metro-minify-terser "0.73.8" + metro-minify-uglify "0.73.8" + metro-react-native-babel-preset "0.73.8" + metro-resolver "0.73.8" + metro-runtime "0.73.8" + metro-source-map "0.73.8" + metro-symbolicate "0.73.8" + metro-transform-plugins "0.73.8" + metro-transform-worker "0.73.8" mime-types "^2.1.27" node-fetch "^2.2.0" nullthrows "^1.1.1" @@ -4393,11 +4526,31 @@ metro@0.80.5, metro@^0.80.3: serialize-error "^2.1.0" source-map "^0.5.6" strip-ansi "^6.0.0" + temp "0.8.3" throat "^5.0.0" ws "^7.5.1" - yargs "^17.6.2" + yargs "^17.5.1" + +micromatch@^3.1.10: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" -micromatch@^4.0.4: +micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== @@ -4432,14 +4585,12 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimatch@9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== -minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.2, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -4458,6 +4609,14 @@ minimist@^1.2.6: 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" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + mkdirp@^0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -4465,11 +4624,6 @@ mkdirp@^0.5.1: dependencies: minimist "^1.2.6" -mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -4485,6 +4639,28 @@ ms@2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -4500,16 +4676,16 @@ neo-async@^2.5.0: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + nocache@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/nocache/-/nocache-3.0.4.tgz#5b37a56ec6e09fc7d401dceaed2eab40c8bfdf79" integrity sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw== -node-abort-controller@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" - integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== - node-dir@^0.1.17: version "0.1.17" resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" @@ -4518,9 +4694,9 @@ node-dir@^0.1.17: minimatch "^3.0.2" node-fetch@^2.2.0, node-fetch@^2.6.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" - integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + 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" @@ -4529,10 +4705,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.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +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" @@ -4544,82 +4720,119 @@ normalize-path@^3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" +npm-run-path@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" + integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== + dependencies: + path-key "^4.0.0" + nullthrows@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== -ob1@0.80.5: - version "0.80.5" - resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.80.5.tgz#101f5257f7e6b75599dcd55c20bfcf2a4016c37c" - integrity sha512-zYDMnnNrFi/1Tqh0vo3PE4p97Tpl9/4MP2k2ECvkbLOZzQuAYZJLTUYVLZb7hJhbhjT+JJxAwBGS8iu5hCSd1w== +ob1@0.73.8: + version "0.73.8" + resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.73.8.tgz#c569f1a15ce2d04da6fd70293ad44b5a93b11978" + integrity sha512-1F7j+jzD+edS6ohQP7Vg5f3yiIk5i3x1uLrNIHOmLHWzWK1t3zrDpjnoXghccdVlsU+UjbyURnDynm4p0GgXeA== object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-inspect@^1.13.1, object-inspect@^1.9.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" - integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-inspect@^1.12.3, object-inspect@^1.9.0: + version "1.12.3" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== 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.assign@^4.1.4: - version "4.1.5" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" - integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: - call-bind "^1.0.5" - define-properties "^1.2.1" + isobject "^3.0.0" + +object.assign@^4.1.3, object.assign@^4.1.4: + 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.entries@^1.1.6: - version "1.1.7" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.7.tgz#2b47760e2a2e3a752f39dd874655c61a7f03c131" - integrity sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA== + version "1.1.6" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" + integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" object.fromentries@^2.0.6: - version "2.0.7" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616" - integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA== + version "2.0.6" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" + integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" object.hasown@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.3.tgz#6a5f2897bb4d3668b8e79364f98ccf971bda55ae" - integrity sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA== + version "1.1.2" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" + integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw== dependencies: - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" object.values@^1.1.6: - version "1.1.7" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a" - integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng== + version "1.1.6" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" + integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" on-finished@2.4.1: version "2.4.1" @@ -4647,13 +4860,20 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" -onetime@^5.1.0, onetime@^5.1.2: +onetime@^5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + open@^6.2.0: version "6.4.0" resolved "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" @@ -4661,25 +4881,17 @@ open@^6.2.0: dependencies: is-wsl "^1.1.0" -open@^7.0.3: - version "7.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - -optionator@^0.9.3: - version "0.9.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" - integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: - "@aashutoshrathi/word-wrap" "^1.2.3" deep-is "^0.1.3" fast-levenshtein "^2.0.6" levn "^0.4.1" prelude-ls "^1.2.1" type-check "^0.4.0" + word-wrap "^1.2.3" ora@^5.4.1: version "5.4.1" @@ -4696,6 +4908,16 @@ ora@^5.4.1: strip-ansi "^6.0.0" wcwidth "^1.0.1" +os-tmpdir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -4703,7 +4925,7 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2, p-limit@^3.1.0: +p-limit@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -4773,6 +4995,11 @@ parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -4788,11 +5015,21 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" @@ -4813,15 +5050,20 @@ picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +pidtree@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" + integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== + pify@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" - integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== +pirates@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== pkg-dir@^3.0.0: version "3.0.0" @@ -4830,29 +5072,32 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -plist@^3.0.5: - version "3.1.0" - resolved "https://registry.yarnpkg.com/plist/-/plist-3.1.0.tgz#797a516a93e62f5bde55e0b9cc9c967f860893c9" - integrity sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ== +pkg-dir@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz#a02d6aebe6ba133a928f74aec20bafdfe6b8e760" + integrity sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA== dependencies: - "@xmldom/xmldom" "^0.8.8" - base64-js "^1.5.1" - xmlbuilder "^15.1.1" + find-up "^5.0.0" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier-plugin-organize-imports@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-3.2.4.tgz#77967f69d335e9c8e6e5d224074609309c62845e" - integrity sha512-6m8WBhIp0dfwu0SkgfOxJqh+HpdyfqSSLfKKRZSFbDuEQXDDndb8fTpRWkUrX/uBenkex3MgnVk0J3b3Y5byog== +prettier-plugin-organize-imports@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-3.2.2.tgz#91993365e017daa5d0d28d8183179834224d8dd1" + integrity sha512-e97lE6odGSiHonHJMTYC0q0iLXQyw0u5z/PJpvP/3vRy6/Zi9kLBwFAbEGjDzIowpjQv8b+J04PDamoUSQbzGA== -prettier@^3.1.1: - version "3.2.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.4.tgz#4723cadeac2ce7c9227de758e5ff9b14e075f283" - integrity sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ== +prettier@^2.8.4: + version "2.8.4" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.4.tgz#34dd2595629bfbb79d344ac4a91ff948694463c3" + integrity sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw== pretty-format@^26.5.2, pretty-format@^26.6.2: version "26.6.2" @@ -4864,12 +5109,12 @@ pretty-format@^26.5.2, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" - integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== +pretty-format@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a" + integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw== dependencies: - "@jest/schemas" "^29.6.3" + "@jest/schemas" "^29.4.3" ansi-styles "^5.0.0" react-is "^18.0.0" @@ -4885,7 +5130,7 @@ promise@^8.3.0: dependencies: asap "~2.0.6" -prompts@^2.4.2: +prompts@^2.4.0, prompts@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== @@ -4893,7 +5138,7 @@ prompts@^2.4.2: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.8.1: +prop-types@*, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -4911,31 +5156,24 @@ pump@^3.0.0: once "^1.3.1" punycode@^2.1.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" - integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -queue@6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.2.tgz#b91525283e2315c7553d2efa18d83e76432fed65" - integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA== - dependencies: - inherits "~2.0.3" - range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -react-devtools-core@^4.27.7: - version "4.28.5" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.28.5.tgz#c8442b91f068cdf0c899c543907f7f27d79c2508" - integrity sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA== +react-devtools-core@^4.26.1: + version "4.27.2" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.27.2.tgz#d20fc57e258c656eedabafc2c851d38b33583148" + integrity sha512-8SzmIkpO87alD7Xr6gWIEa1jHkMjawOZ+6egjazlnjB4UUcbnzGDf/vBJ4BzGuWWEM+pzrxuzsPpcMqlQkYK2g== dependencies: shell-quote "^1.6.1" ws "^7" @@ -4955,10 +5193,10 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-native-builder-bob@^0.23.2: - version "0.23.2" - resolved "https://registry.yarnpkg.com/react-native-builder-bob/-/react-native-builder-bob-0.23.2.tgz#9f3f6509a9cba8102468169963ca7e1f0aa941a5" - integrity sha512-ehv2XKS9cvPR5JR7FIpSx3qY7tULkljT2Kb82FBAxXsFLjqlRU1WfqHRLh6lytL2XqAxLQODpPfHUH53SsXnag== +react-native-builder-bob@^0.20.4: + version "0.20.4" + resolved "https://registry.yarnpkg.com/react-native-builder-bob/-/react-native-builder-bob-0.20.4.tgz#02df01b8dc02f1bb2d566f820e33c5d42bfb9c99" + integrity sha512-3ZmYP8H7Fg2D8/JAPvxT78I4VWzf5DNMUf69cxWPw7Pukt+hHp1PSQ303af63uv1QXxWMJtrQ11+nuUfVqQf0Q== dependencies: "@babel/core" "^7.18.5" "@babel/plugin-proposal-class-properties" "^7.17.12" @@ -4979,55 +5217,68 @@ react-native-builder-bob@^0.23.2: prompts "^2.4.2" which "^2.0.2" yargs "^17.5.1" + optionalDependencies: + jetifier "^2.0.0" -react-native@0.73.4: - version "0.73.4" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.73.4.tgz#81e07d4e7b6308c4649d5fa24038c0e87b17f2e1" - integrity sha512-VtS+Yr6OOTIuJGDECIYWzNU8QpJjASQYvMtfa/Hvm/2/h5GdB6W9H9TOmh13x07Lj4AOhNMx3XSsz6TdrO4jIg== - dependencies: - "@jest/create-cache-key-function" "^29.6.3" - "@react-native-community/cli" "12.3.2" - "@react-native-community/cli-platform-android" "12.3.2" - "@react-native-community/cli-platform-ios" "12.3.2" - "@react-native/assets-registry" "0.73.1" - "@react-native/codegen" "0.73.3" - "@react-native/community-cli-plugin" "0.73.16" - "@react-native/gradle-plugin" "0.73.4" - "@react-native/js-polyfills" "0.73.1" - "@react-native/normalize-colors" "0.73.2" - "@react-native/virtualized-lists" "0.73.4" +react-native-codegen@^0.71.5: + version "0.71.5" + resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.71.5.tgz#454a42a891cd4ca5fc436440d301044dc1349c14" + integrity sha512-rfsuc0zkuUuMjFnrT55I1mDZ+pBRp2zAiRwxck3m6qeGJBGK5OV5JH66eDQ4aa+3m0of316CqrJDRzVlYufzIg== + dependencies: + "@babel/parser" "^7.14.0" + flow-parser "^0.185.0" + jscodeshift "^0.13.1" + nullthrows "^1.1.1" + +react-native-gradle-plugin@^0.71.16: + version "0.71.16" + resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.16.tgz#822bb0c680e03b5df5aa65f2e5ffc2bc2930854a" + integrity sha512-H2BjG2zk7B7Wii9sXvd9qhCVRQYDAHSWdMw9tscmZBqSP62DkIWEQSk4/B2GhQ4aK9ydVXgtqR6tBeg3yy8TSA== + +react-native@^0.71.4: + version "0.71.4" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.4.tgz#f03f600efe68f745d19454ab17f9c1a9ef304790" + integrity sha512-3hSYqvWrOdKhpV3HpEKp1/CkWx8Sr/N/miCrmUIAsVTSJUR7JW0VvIsrV9urDhUj/s6v2WF4n7qIEEJsmTCrPw== + dependencies: + "@jest/create-cache-key-function" "^29.2.1" + "@react-native-community/cli" "10.2.0" + "@react-native-community/cli-platform-android" "10.2.0" + "@react-native-community/cli-platform-ios" "10.2.0" + "@react-native/assets" "1.0.0" + "@react-native/normalize-color" "2.1.0" + "@react-native/polyfills" "2.0.0" abort-controller "^3.0.0" anser "^1.4.9" - ansi-regex "^5.0.0" - base64-js "^1.5.1" - chalk "^4.0.0" - deprecated-react-native-prop-types "^5.0.0" + base64-js "^1.1.2" + deprecated-react-native-prop-types "^3.0.1" event-target-shim "^5.0.1" - flow-enums-runtime "^0.0.6" invariant "^2.2.4" - jest-environment-node "^29.6.3" + jest-environment-node "^29.2.1" jsc-android "^250231.0.0" memoize-one "^5.0.0" - metro-runtime "^0.80.3" - metro-source-map "^0.80.3" + metro-react-native-babel-transformer "0.73.8" + metro-runtime "0.73.8" + metro-source-map "0.73.8" mkdirp "^0.5.1" nullthrows "^1.1.1" pretty-format "^26.5.2" promise "^8.3.0" - react-devtools-core "^4.27.7" - react-refresh "^0.14.0" + react-devtools-core "^4.26.1" + react-native-codegen "^0.71.5" + react-native-gradle-plugin "^0.71.16" + react-refresh "^0.4.0" react-shallow-renderer "^16.15.0" regenerator-runtime "^0.13.2" - scheduler "0.24.0-canary-efb381bbf-20230505" - stacktrace-parser "^0.1.10" + scheduler "^0.23.0" + stacktrace-parser "^0.1.3" + use-sync-external-store "^1.0.0" whatwg-fetch "^3.0.0" ws "^6.2.2" - yargs "^17.6.2" -react-refresh@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e" - integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== +react-refresh@^0.4.0: + version "0.4.3" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.4.3.tgz#966f1750c191672e76e16c2efa569150cc73ab53" + integrity sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA== react-shallow-renderer@^16.15.0: version "16.15.0" @@ -5037,7 +5288,7 @@ react-shallow-renderer@^16.15.0: object-assign "^4.1.1" react-is "^16.12.0 || ^17.0.0 || ^18.0.0" -react@18.2.0: +react@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== @@ -5071,32 +5322,20 @@ readline@^1.3.0: resolved "https://registry.yarnpkg.com/readline/-/readline-1.3.0.tgz#c580d77ef2cfc8752b132498060dc9793a7ac01c" integrity sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg== -recast@^0.21.0: - version "0.21.5" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.21.5.tgz#e8cd22bb51bcd6130e54f87955d33a2b2e57b495" - integrity sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg== +recast@^0.20.4: + version "0.20.5" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" + integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== dependencies: - ast-types "0.15.2" + ast-types "0.14.2" esprima "~4.0.0" source-map "~0.6.1" tslib "^2.0.1" -reflect.getprototypeof@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz#aaccbf41aca3821b87bb71d9dcbc7ad0ba50a3f3" - integrity sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - globalthis "^1.0.3" - which-builtin-type "^1.1.3" - regenerate-unicode-properties@^10.1.0: - version "10.1.1" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" - integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== + 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" @@ -5105,31 +5344,34 @@ 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.2: +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.14.0: - version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - -regenerator-transform@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" - integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== +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" -regexp.prototype.flags@^1.5.0, regexp.prototype.flags@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e" - integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg== +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexp.prototype.flags@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" + integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - set-function-name "^2.0.0" + define-properties "^1.1.3" + functions-have-names "^1.2.2" regexpu-core@^5.3.1: version "5.3.2" @@ -5150,6 +5392,16 @@ regjsparser@^0.9.1: dependencies: jsesc "~0.5.0" +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -5170,26 +5422,26 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve@^1.14.2: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: - is-core-module "^2.13.0" + is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" resolve@^2.0.0-next.4: - version "2.0.0-next.5" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.5.tgz#6b0ec3107e671e52b68cd068ef327173b90dc03c" - integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA== + version "2.0.0-next.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660" + integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ== dependencies: - is-core-module "^2.13.0" + is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" @@ -5201,11 +5453,21 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== +rfdc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== + rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -5213,6 +5475,11 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@~2.2.6: + version "2.2.8" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" + integrity sha512-R5KMKHnPAQaZMqLOsyuyUmcIjSeDm+73eoqQpaXA7AZ22BL+6C+1mcUscgOsNd8WVlJuvlgAPsegcx7pjlV0Dg== + rimraf@~2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -5227,15 +5494,12 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-array-concat@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692" - integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg== +rxjs@^7.8.0: + version "7.8.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" + integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== dependencies: - call-bind "^1.0.5" - get-intrinsic "^1.2.2" - has-symbols "^1.0.3" - isarray "^2.0.5" + tslib "^2.1.0" safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" @@ -5248,40 +5512,42 @@ safe-buffer@~5.2.0: integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-regex-test@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.2.tgz#3ba32bdb3ea35f940ee87e5087c60ee786c3f6c5" - integrity sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ== + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" + integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== dependencies: - call-bind "^1.0.5" - get-intrinsic "^1.2.2" + call-bind "^1.0.2" + get-intrinsic "^1.1.3" is-regex "^1.1.4" -sax@>=0.6.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0" - integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA== +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" -scheduler@0.24.0-canary-efb381bbf-20230505: - version "0.24.0-canary-efb381bbf-20230505" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.24.0-canary-efb381bbf-20230505.tgz#5dddc60e29f91cd7f8b983d7ce4a99c2202d178f" - integrity sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA== +scheduler@^0.23.0: + version "0.23.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== dependencies: loose-envify "^1.1.0" -semver@^5.6.0: - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== +semver@^5.5.0, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.5.2, semver@^7.5.3, semver@^7.5.4: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== +semver@^7.3.7: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" @@ -5324,25 +5590,15 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== -set-function-length@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.0.tgz#2f81dc6c16c7059bda5ab7c82c11f03a515ed8e1" - integrity sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w== - dependencies: - define-data-property "^1.1.1" - function-bind "^1.1.2" - get-intrinsic "^1.2.2" - gopd "^1.0.1" - has-property-descriptors "^1.0.1" - -set-function-name@^2.0.0, set-function-name@^2.0.1: +set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" - integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== dependencies: - define-data-property "^1.0.1" - functions-have-names "^1.2.3" - has-property-descriptors "^1.0.0" + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" setprototypeof@1.2.0: version "1.2.0" @@ -5356,6 +5612,13 @@ shallow-clone@^3.0.0: dependencies: kind-of "^6.0.2" +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -5363,15 +5626,20 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shell-quote@^1.6.1, shell-quote@^1.7.3: - version "1.8.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" - integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== + 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== side-channel@^1.0.4: version "1.0.4" @@ -5382,20 +5650,11 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -simple-plist@^1.1.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/simple-plist/-/simple-plist-1.3.1.tgz#16e1d8f62c6c9b691b8383127663d834112fb017" - integrity sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw== - dependencies: - bplist-creator "0.1.0" - bplist-parser "0.3.1" - plist "^3.0.5" - sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" @@ -5415,10 +5674,72 @@ slice-ansi@^2.0.0: astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" -slugify@^1.6.6: - version "1.6.6" - resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.6.tgz#2d4ac0eacb47add6af9e04d3be79319cbcc7924b" - integrity sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw== +slice-ansi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" + integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +slice-ansi@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" + integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== + dependencies: + ansi-styles "^6.0.0" + is-fullwidth-code-point "^4.0.0" + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" source-map-support@^0.5.16, source-map-support@~0.5.20: version "0.5.21" @@ -5428,6 +5749,11 @@ source-map-support@^0.5.16, source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -5443,6 +5769,13 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -5460,13 +5793,21 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== -stacktrace-parser@^0.1.10: +stacktrace-parser@^0.1.3: version "0.1.10" resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz#29fb0cae4e0d0b85155879402857a1639eb6051a" integrity sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg== dependencies: type-fest "^0.7.1" +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -5477,10 +5818,10 @@ statuses@~1.5.0: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== -stream-buffers@2.2.x: - version "2.2.0" - resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" - integrity sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg== +string-argv@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" + integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" @@ -5491,47 +5832,55 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string-width@^5.0.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + string.prototype.matchall@^4.0.8: - version "4.0.10" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz#a1553eb532221d4180c51581d6072cd65d1ee100" - integrity sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ== + version "4.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3" + integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" + get-intrinsic "^1.1.3" has-symbols "^1.0.3" - internal-slot "^1.0.5" - regexp.prototype.flags "^1.5.0" - set-function-name "^2.0.0" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.4.3" side-channel "^1.0.4" -string.prototype.trim@^1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" - integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== +string.prototype.trim@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533" + integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" -string.prototype.trimend@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" - integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== +string.prototype.trimend@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" + integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" -string.prototype.trimstart@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" - integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== +string.prototype.trimstart@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" + integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== dependencies: call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + define-properties "^1.1.4" + es-abstract "^1.20.4" string_decoder@^1.1.1: version "1.3.0" @@ -5561,12 +5910,29 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-ansi@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" + integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== + dependencies: + ansi-regex "^6.0.1" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== -strip-json-comments@^3.1.1: +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -5607,10 +5973,13 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -temp-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" - integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== +temp@0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" + integrity sha512-jtnWJs6B1cZlHs9wPG7BrowKxZw/rf6+UpGAkr8AaYmiTyTO7zQlLoST8zx/8TcUPnZmeBoB+H8ARuHZaSijVw== + dependencies: + os-tmpdir "^1.0.0" + rimraf "~2.2.6" temp@^0.8.4: version "0.8.4" @@ -5620,12 +5989,12 @@ temp@^0.8.4: rimraf "~2.6.2" terser@^5.15.0: - version "5.27.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.27.0.tgz#70108689d9ab25fef61c4e93e808e9fd092bf20c" - integrity sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A== + version "5.16.6" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.6.tgz#f6c7a14a378ee0630fbe3ac8d1f41b4681109533" + integrity sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg== dependencies: - "@jridgewell/source-map" "^0.3.3" - acorn "^8.8.2" + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" commander "^2.20.0" source-map-support "~0.5.20" @@ -5647,6 +6016,11 @@ through2@^2.0.1: readable-stream "~2.3.6" xtend "~4.0.1" +through@^2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== + tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -5657,6 +6031,21 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -5664,6 +6053,16 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -5674,15 +6073,22 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -ts-api-utils@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331" - integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg== +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== +tslib@^2.0.1, tslib@^2.1.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" @@ -5701,41 +6107,16 @@ type-fest@^0.20.2: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + type-fest@^0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== -typed-array-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" - integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - is-typed-array "^1.1.10" - -typed-array-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0" - integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA== - dependencies: - call-bind "^1.0.2" - for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" - -typed-array-byte-offset@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b" - integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" - typed-array-length@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" @@ -5745,10 +6126,18 @@ typed-array-length@^1.0.4: for-each "^0.3.3" is-typed-array "^1.1.9" -typescript@^5.3.3: - version "5.3.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37" - integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw== +typescript@^4.9.5: + 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" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" + integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== + dependencies: + commander "~2.13.0" + source-map "~0.6.1" unbox-primitive@^1.0.2: version "1.0.2" @@ -5765,11 +6154,6 @@ unc-path-regex@^0.1.2: resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== -undici-types@~5.26.4: - version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" - integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== - unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" @@ -5793,25 +6177,43 @@ unicode-property-aliases-ecmascript@^2.0.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" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== universalify@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" - integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +update-browserslist-db@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: escalade "^3.1.1" picocolors "^1.0.0" @@ -5823,6 +6225,21 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + +use-sync-external-store@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" + integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -5833,11 +6250,6 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== -uuid@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" - integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== - vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -5868,9 +6280,9 @@ webidl-conversions@^3.0.0: integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-fetch@^3.0.0: - version "3.6.20" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz#580ce6d791facec91d37c72890995a0b48d31c70" - integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== + version "3.6.2" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" + integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== whatwg-url@^5.0.0: version "5.0.0" @@ -5891,49 +6303,29 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-builtin-type@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.1.3.tgz#b1b8443707cc58b6e9bf98d32110ff0c2cbd029b" - integrity sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw== - dependencies: - function.prototype.name "^1.1.5" - has-tostringtag "^1.0.0" - is-async-function "^2.0.0" - is-date-object "^1.0.5" - is-finalizationregistry "^1.0.2" - is-generator-function "^1.0.10" - is-regex "^1.1.4" - is-weakref "^1.0.2" - isarray "^2.0.5" - which-boxed-primitive "^1.0.2" - which-collection "^1.0.1" - which-typed-array "^1.1.9" - -which-collection@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906" - integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A== - dependencies: - is-map "^2.0.1" - is-set "^2.0.1" - is-weakmap "^2.0.1" - is-weakset "^2.0.1" - which-module@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" - integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== -which-typed-array@^1.1.11, which-typed-array@^1.1.13, which-typed-array@^1.1.9: - version "1.1.13" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36" - integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow== +which-typed-array@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" + integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== dependencies: available-typed-arrays "^1.0.5" - call-bind "^1.0.4" + call-bind "^1.0.2" for-each "^0.3.3" gopd "^1.0.1" has-tostringtag "^1.0.0" + is-typed-array "^1.1.10" + +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" which@^2.0.1, which@^2.0.2: version "2.0.2" @@ -5942,6 +6334,11 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -5986,37 +6383,6 @@ ws@^7, ws@^7.5.1: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -xcode@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/xcode/-/xcode-3.0.1.tgz#3efb62aac641ab2c702458f9a0302696146aa53c" - integrity sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA== - dependencies: - simple-plist "^1.1.0" - uuid "^7.0.3" - -xml2js@0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.6.0.tgz#07afc447a97d2bd6507a1f76eeadddb09f7a8282" - integrity sha512-eLTh0kA8uHceqesPqSE+VvO1CDDJWMwlQfB6LuN6T8w6MaDJ8Txm8P7s5cHD0miF0V+GGTZrDQfxPZQVsur33w== - dependencies: - sax ">=0.6.0" - xmlbuilder "~11.0.0" - -xmlbuilder@^14.0.0: - version "14.0.0" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-14.0.0.tgz#876b5aec4f05ffd5feb97b0a871c855d16fbeb8c" - integrity sha512-ts+B2rSe4fIckR6iquDjsKbQFK2NlUk6iG5nf14mDEyldgoc2nEKZ3jZWMPTxGQwVgToSjt6VGIho1H8/fNFTg== - -xmlbuilder@^15.1.1: - version "15.1.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5" - integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg== - -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== - xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -6048,9 +6414,9 @@ yaml@^1.10.0: integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yaml@^2.2.1: - version "2.3.4" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2" - integrity sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA== + version "2.2.1" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.1.tgz#3014bf0482dcd15147aa8e56109ce8632cd60ce4" + integrity sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw== yargs-parser@^18.1.2: version "18.1.3" @@ -6082,10 +6448,10 @@ yargs@^15.1.0: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^17.5.1, yargs@^17.6.2: - version "17.7.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" - integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== +yargs@^17.5.1: + version "17.7.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" + integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== dependencies: cliui "^8.0.1" escalade "^3.1.1"