diff --git a/.eslintrc.json b/.eslintrc.json index b79c18c..30f5a54 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -80,6 +80,7 @@ "react/style-prop-object": "off", "@typescript-eslint/no-empty-function": "off", "no-use-before-define": "off", + "@typescript-eslint/no-var-requires": 0, "@typescript-eslint/no-use-before-define": [ "error" ], diff --git a/README.md b/README.md index be70c78..852dbb3 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ ![size](https://img.shields.io/github/repo-size/victorbalssa/abacus?style=for-the-badge) ![licence](https://img.shields.io/github/license/victorbalssa/abacus?style=for-the-badge) ![stars](https://img.shields.io/github/stars/victorbalssa/abacus?style=for-the-badge) -[![sdk](https://img.shields.io/badge/SDK-50.0.7-purple?style=for-the-badge&label=EXPO%20SDK)](https://www.npmjs.com/package/expo) +[![sdk](https://img.shields.io/badge/EXPO-SDK-purple?style=for-the-badge&label=EXPO%20SDK)](https://www.npmjs.com/package/expo) [![pr](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=for-the-badge)](http://makeapullrequest.com) [![sponsor](https://img.shields.io/github/sponsors/victorbalssa?style=for-the-badge&color=ff69b4)](https://github.com/sponsors/victorbalssa) @@ -64,7 +64,7 @@ No external API calls nor Analytics API, not even sentry / crashlytics. ### 📡 Technologies -- __Expo SDK 50__ Framework and a Platform for universal React applications. [docs.expo.io](https://docs.expo.io/) +- __Expo SDK__ Framework and a Platform for universal React applications. [docs.expo.io](https://docs.expo.io/) - __Routing and navigation__ React Navigation V6. [https://reactnavigation.org/docs](https://reactnavigation.org/docs/getting-started) - __Tests__ on simulator/emulator before each EAS build with [@wix/Detox](https://github.com/wix/Detox) diff --git a/app.config.js b/app.config.js new file mode 100644 index 0000000..22ce8ac --- /dev/null +++ b/app.config.js @@ -0,0 +1,87 @@ +const IS_DEV = process.env.APP_VARIANT === 'development'; + +export default { + name: IS_DEV ? 'Abacus.dev' : 'Abacus', + description: 'Abacus: Firefly III mobile application.', + slug: 'abacus', + privacy: 'public', + platforms: [ + 'ios', + 'android', + ], + version: '0.13.2', + orientation: 'portrait', + updates: { + enabled: true, + checkAutomatically: 'ON_ERROR_RECOVERY', + url: 'https://u.expo.dev/292ed6dc-804c-4444-95f5-fa5d76d9913b', + }, + ios: { + icon: './src/images/icon-abacus.png', + splash: { + image: './src/images/splash.png', + resizeMode: 'contain', + backgroundColor: '#ffffff', + dark: { + backgroundColor: '#121215', + }, + }, + supportsTablet: true, + infoPlist: { + NSFaceIDUsageDescription: 'Abacus use Authentication with TouchId or FaceID', + NSLocalNetworkUsageDescription: 'Abacus use Local Network to access Firefly III on your local network', + NSAppTransportSecurity: { + NSAllowsArbitraryLoads: true, + }, + }, + config: { + usesNonExemptEncryption: false, + }, + bundleIdentifier: IS_DEV ? 'abacus.fireflyiii.ios.app.dev' : 'abacus.ios.app', + buildNumber: '0.13.2', + }, + android: { + icon: './src/images/icon-abacus.png', + adaptiveIcon: { + foregroundImage: './src/images/icon-abacus-foreground.png', + backgroundImage: './src/images/icon-abacus-background.png', + }, + splash: { + image: './src/images/splash.png', + resizeMode: 'contain', + backgroundColor: '#ffffff', + dark: { + backgroundColor: '#121215', + }, + }, + playStoreUrl: 'https://play.google.com/store/apps/details?id=abacus.fireflyiii.android.app', + package: IS_DEV ? 'abacus.fireflyiii.android.app.dev' : 'abacus.fireflyiii.android.app', + versionCode: 21, + }, + scheme: 'abacusfiiiapp', + githubUrl: 'https://github.com/victorbalssa/abacus', + runtimeVersion: { + policy: 'sdkVersion', + }, + extra: { + eas: { + projectId: '292ed6dc-804c-4444-95f5-fa5d76d9913b', + }, + }, + plugins: [ + 'expo-localization', + './plugins/withAndroidStyles', + './plugins/withAndroidManifest', + [ + 'expo-font', + { + fonts: [ + './src/fonts/Montserrat-Bold.ttf', + './src/fonts/Montserrat-Regular.ttf', + './src/fonts/Montserrat-Light.ttf', + ], + }, + ], + ], + userInterfaceStyle: 'automatic', +}; diff --git a/app.json b/app.json deleted file mode 100644 index a7d141c..0000000 --- a/app.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "expo": { - "name": "Abacus", - "description": "Abacus: Firefly III mobile application.", - "slug": "abacus", - "privacy": "public", - "platforms": [ - "ios", - "android" - ], - "version": "0.12.4", - "orientation": "portrait", - "updates": { - "enabled": true, - "checkAutomatically": "ON_ERROR_RECOVERY", - "url": "https://u.expo.dev/292ed6dc-804c-4444-95f5-fa5d76d9913b" - }, - "ios": { - "icon": "./src/images/icon-abacus.png", - "splash": { - "image": "./src/images/splash.png", - "resizeMode": "contain", - "backgroundColor": "#ffffff", - "dark": { - "backgroundColor": "#121215" - } - }, - "supportsTablet": true, - "infoPlist": { - "NSFaceIDUsageDescription": "Abacus use Authentication with TouchId or FaceID", - "NSLocalNetworkUsageDescription": "Abacus use Local Network to connect to your local instance of Firefly III" - }, - "config": { - "usesNonExemptEncryption": false - }, - "bundleIdentifier": "abacus.ios.app", - "buildNumber": "0.12.4" - }, - "android": { - "icon": "./src/images/icon-abacus.png", - "adaptiveIcon": { - "foregroundImage": "./src/images/icon-abacus-foreground.png", - "backgroundImage": "./src/images/icon-abacus-background.png" - }, - "splash": { - "image": "./src/images/splash.png", - "resizeMode": "contain", - "backgroundColor": "#ffffff", - "dark": { - "backgroundColor": "#121215" - } - }, - "playStoreUrl": "https://play.google.com/store/apps/details?id=abacus.fireflyiii.android.app", - "package": "abacus.fireflyiii.android.app", - "versionCode": 18 - }, - "web": { - "bundler": "metro" - }, - "scheme": "abacusfiiiapp", - "githubUrl": "https://github.com/victorbalssa/abacus", - "runtimeVersion": { - "policy": "sdkVersion" - }, - "extra": { - "eas": { - "projectId": "292ed6dc-804c-4444-95f5-fa5d76d9913b" - } - }, - "plugins": [ - "expo-localization", - "./plugins/withAndroidManifest", - "expo-build-properties" - ], - "userInterfaceStyle": "automatic" - } -} diff --git a/package-lock.json b/package-lock.json index e2c44f4..b2d8e90 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,36 +1,37 @@ { "name": "abacus", - "version": "0.12.4", + "version": "0.13.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "abacus", - "version": "0.12.4", + "version": "0.13.2", "dependencies": { "@expo/config-plugins": "~7.8.0", "@expo/metro-runtime": "~3.1.3", "@expo/vector-icons": "^14.0.0", "@react-native-async-storage/async-storage": "1.21.0", "@react-native-community/datetimepicker": "7.6.1", - "@react-navigation/bottom-tabs": "^6.2.0", - "@react-navigation/native": "^6.0.8", - "@react-navigation/native-stack": "^6.9.13", + "@react-navigation/bottom-tabs": "6.5.14", + "@react-navigation/native": "6.1.12", + "@react-navigation/native-stack": "6.9.20", "@rematch/core": "^2.2.0", "@rematch/loading": "^2.1.2", "@rematch/persist": "^2.1.2", - "axios": "^1.6.0", + "@shopify/react-native-skia": "0.1.221", + "axios": "1.6.7", "babel-polyfill": "^6.26.0", + "base-64": "^1.0.0", "bootstrap": "^4.4.1", - "expo": "~50.0.7", + "expo": "~50.0.11", "expo-application": "~5.8.3", "expo-asset": "~9.0.2", "expo-auth-session": "~5.4.0", "expo-blur": "~12.9.2", - "expo-build-properties": "~0.11.1", "expo-clipboard": "~5.0.1", "expo-crypto": "~12.8.1", - "expo-dev-client": "~3.3.8", + "expo-dev-client": "~3.3.9", "expo-device": "~5.9.3", "expo-font": "~11.10.2", "expo-haptics": "~12.8.1", @@ -40,41 +41,32 @@ "expo-localization": "~14.8.3", "expo-random": "~13.6.0", "expo-secure-store": "~12.8.1", - "expo-splash-screen": "~0.26.4", "expo-status-bar": "~1.11.1", "expo-store-review": "~6.8.3", "expo-system-ui": "~2.9.3", "expo-updates": "~0.24.11", - "expo-web-browser": "~12.8.2", "globally": "^0.0.0", "i18n-js": "^4.1.1", "lodash": "^4.17.21", "moment": "^2.29.4", - "native-base": "^3.4.25", - "normalize-css-color": "^1.0.2", - "prop-types": "^15.7.2", "react": "18.2.0", "react-dom": "18.2.0", "react-helmet": "^5.2.1", "react-native": "0.73.4", - "react-native-animated-splash-screen": "^2.0.5", "react-native-gesture-handler": "~2.14.0", - "react-native-gradle-plugin": "^0.71.19", - "react-native-modal": "^11.5.6", "react-native-pager-view": "6.2.3", "react-native-reanimated": "~3.6.2", "react-native-safe-area-context": "4.8.2", "react-native-screens": "~3.29.0", "react-native-svg": "14.1.0", "react-native-swipe-list-view": "^3.2.9", - "react-native-web": "~0.19.7", - "react-redux": "^9.0.4", - "redux": "5.0.0", - "redux-persist": "^6.0.0", + "react-redux": "9.1.0", + "redux": "5.0.1", + "redux-persist": "6.0.0", "semver": "^7.5.4", "sharp-cli": "^4.2.0", "slash": "^5.1.0", - "victory-native": "^36.6.11" + "victory-native": "^36.9.1" }, "devDependencies": { "@babel/core": "^7.23.2", @@ -85,7 +77,7 @@ "@typescript-eslint/eslint-plugin": "^5.30.0", "@typescript-eslint/parser": "^5.62.0", "babel-preset-expo": "^10.0.0", - "detox": "20.13.5", + "detox": "20.18.1", "dotenv": "^16.3.1", "eslint": "^7.32.0", "eslint-config-airbnb": "^19.0.4", @@ -93,11 +85,11 @@ "eslint-plugin-jest": "^27.2.3", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.1", - "jest-expo": "~50.0.2", - "node-sass": "^9.0.0", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1", - "typescript": "^5.3.0" + "jest-expo": "~50.0.3", + "node-sass": "9.0.0", + "ts-jest": "29.1.2", + "ts-node": "10.9.1", + "typescript": "5.3.3" } }, "node_modules/@ampproject/remapping": { @@ -2374,16 +2366,16 @@ } }, "node_modules/@expo/cli": { - "version": "0.17.5", - "resolved": "https://registry.npmjs.org/@expo/cli/-/cli-0.17.5.tgz", - "integrity": "sha512-9cMquL/5bBfV73CbZcWipk3KZSo8mBqdgvkoWCtEtnnlm/879ayxzMWjVIgT5yV4w+X7+N6KkBSUIIj4t9Xqew==", + "version": "0.17.7", + "resolved": "https://registry.npmjs.org/@expo/cli/-/cli-0.17.7.tgz", + "integrity": "sha512-sOssVCFCVXSdZr2/KdqPeT2Qwxmty3rZeO9g5RbzZexHz93VUyONuqGwO1VlYKibn7FLYEGUovqU9Xi8zVB6JQ==", "dependencies": { "@babel/runtime": "^7.20.0", "@expo/code-signing-certificates": "0.0.5", "@expo/config": "~8.5.0", "@expo/config-plugins": "~7.8.0", "@expo/devcert": "^1.0.0", - "@expo/env": "~0.2.0", + "@expo/env": "~0.2.2", "@expo/image-utils": "^0.4.0", "@expo/json-file": "^8.2.37", "@expo/metro-config": "~0.17.0", @@ -2811,9 +2803,9 @@ } }, "node_modules/@expo/env": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@expo/env/-/env-0.2.1.tgz", - "integrity": "sha512-deZmRS7Dvp18VM8s559dq/ZjPlV1D9vtLoLXwHmCK/JYOvtNptdKsfxcWjI7ewmo6ln2PqgNI9HRI74q6Wk2eA==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@expo/env/-/env-0.2.2.tgz", + "integrity": "sha512-m9nGuaSpzdvMzevQ1H60FWgf4PG5s4J0dfKUzdAGnDu7sMUerY/yUeDaA4+OBo3vBwGVQ+UHcQS9vPSMBNaPcg==", "dependencies": { "chalk": "^4.0.0", "debug": "^4.3.4", @@ -3156,16 +3148,16 @@ } }, "node_modules/@expo/metro-config": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.17.4.tgz", - "integrity": "sha512-PxqDMuVjXQeboa6Aj8kNj4iTxIpwpfoYlF803qOjf1LE1ePlREnWNwqy65ESCBnCmekYIO5hhm1Nksa+xCvuyg==", + "version": "0.17.6", + "resolved": "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.17.6.tgz", + "integrity": "sha512-WaC1C+sLX/Wa7irwUigLhng3ckmXIEQefZczB8DfYmleV6uhfWWo2kz/HijFBpV7FKs2cW6u8J/aBQpFkxlcqg==", "dependencies": { "@babel/core": "^7.20.0", "@babel/generator": "^7.20.5", "@babel/parser": "^7.20.0", "@babel/types": "^7.20.0", "@expo/config": "~8.5.0", - "@expo/env": "~0.2.0", + "@expo/env": "~0.2.2", "@expo/json-file": "~8.3.0", "@expo/spawn-async": "^1.7.2", "babel-preset-fbjs": "^3.4.0", @@ -3692,49 +3684,11 @@ "node": ">=8" } }, - "node_modules/@formatjs/ecma402-abstract": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.16.0.tgz", - "integrity": "sha512-qIH2cmG/oHGrVdApbqDf6/YR+B2A4NdkBjKLeq369OMVkqMFsC5oPSP1xpiyL1cAn+PbNEZHxwOVMYD/C76c6g==", - "dependencies": { - "@formatjs/intl-localematcher": "0.3.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@formatjs/fast-memoize": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.1.0.tgz", - "integrity": "sha512-w7IzF6Okx2tQXRVlT/cXI4dfS0bvKHhWE5Kn7ajqDVYH4nksUFOMU21Yd4zDENxZ8mFb7IBu7bOopnB2VxZQeA==", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@formatjs/icu-messageformat-parser": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.5.0.tgz", - "integrity": "sha512-8AwKRkVIZzVlvZwio1TcLVvUbJw0up1joa8//JIxKVeflqKiZwfzCGAelZt/4hHCEQf9NECose//nODnmBEkNQ==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.16.0", - "@formatjs/icu-skeleton-parser": "1.5.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@formatjs/icu-skeleton-parser": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.5.0.tgz", - "integrity": "sha512-R/wOg/hxh3JWNB4LHYfNtIe8PC39mkzplh6gtrqCY33EqYeUFEGOYTWJrkXNcoRXlZWQtfrH6REch5r57tAyMQ==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.16.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@formatjs/intl-localematcher": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.3.0.tgz", - "integrity": "sha512-NFoxXX3dtZ6B53NlCErq181NxN/noMZOWKHfcEPQRNfV0a19THxyjxu2RTSNS3532wGm6fOdid5qsBQWg0Rhtw==", - "dependencies": { - "tslib": "^2.4.0" - } + "node_modules/@flatten-js/interval-tree": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@flatten-js/interval-tree/-/interval-tree-1.1.2.tgz", + "integrity": "sha512-OwLoV9E/XM6b7bes2rSFnGNjyRy7vcoIHFTnmBR2WAaZTf0Fe4EX4GdA65vU1KgFAasti7iRSg2dZfYd1Zt00Q==", + "dev": true }, "node_modules/@gar/promisify": { "version": "1.1.3", @@ -3782,39 +3736,6 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, - "node_modules/@internationalized/date": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.2.0.tgz", - "integrity": "sha512-VDMHN1m33L4eqPs5BaihzgQJXyaORbMoHOtrapFxx179J8ucY5CRIHYsq5RRLKPHZWgjNfa5v6amWWDkkMFywA==", - "dependencies": { - "@swc/helpers": "^0.4.14" - } - }, - "node_modules/@internationalized/message": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@internationalized/message/-/message-3.1.0.tgz", - "integrity": "sha512-Oo5m70FcBdADf7G8NkUffVSfuCdeAYVfsvNjZDi9ELpjvkc4YNJVTHt/NyTI9K7FgAVoELxiP9YmN0sJ+HNHYQ==", - "dependencies": { - "@swc/helpers": "^0.4.14", - "intl-messageformat": "^10.1.0" - } - }, - "node_modules/@internationalized/number": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.2.0.tgz", - "integrity": "sha512-GUXkhXSX1Ee2RURnzl+47uvbOxnlMnvP9Er+QePTjDjOPWuunmLKlEkYkEcLiiJp7y4l9QxGDLOlVr8m69LS5w==", - "dependencies": { - "@swc/helpers": "^0.4.14" - } - }, - "node_modules/@internationalized/string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@internationalized/string/-/string-3.1.0.tgz", - "integrity": "sha512-TJQKiyUb+wyAfKF59UNeZ/kELMnkxyecnyPCnBI1ma4NaXReJW+7Cc2mObXAqraIBJUVv7rgI46RLKrLgi35ng==", - "dependencies": { - "@swc/helpers": "^0.4.14" - } - }, "node_modules/@isaacs/ttlcache": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz", @@ -4759,570 +4680,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@react-aria/checkbox": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/@react-aria/checkbox/-/checkbox-3.9.1.tgz", - "integrity": "sha512-1TmaqrQ419K6p9KU9v5cGHjStH4p9vOGZsfYYO8RXsQsXmZ7vcK7rjytMeCTdExovU74xK9oXNh64c15Yh9EEA==", - "dependencies": { - "@react-aria/label": "^3.5.2", - "@react-aria/toggle": "^3.6.1", - "@react-aria/utils": "^3.17.0", - "@react-stately/checkbox": "^3.4.2", - "@react-stately/toggle": "^3.5.2", - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/combobox": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-aria/combobox/-/combobox-3.6.1.tgz", - "integrity": "sha512-FdIFAV9appfN5DfoZoJ1D+ZJS3Xp5Kro1oPUPnz9XgthwYV98JinQ5aMBKI4+df0mLmU5z1T3DWbqUuDheUCwg==", - "dependencies": { - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/listbox": "^3.9.1", - "@react-aria/live-announcer": "^3.3.0", - "@react-aria/menu": "^3.9.1", - "@react-aria/overlays": "^3.14.1", - "@react-aria/selection": "^3.15.0", - "@react-aria/textfield": "^3.9.2", - "@react-aria/utils": "^3.17.0", - "@react-stately/collections": "^3.8.0", - "@react-stately/combobox": "^3.5.1", - "@react-stately/layout": "^3.12.1", - "@react-types/button": "^3.7.3", - "@react-types/combobox": "^3.6.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/focus": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.12.1.tgz", - "integrity": "sha512-i1bRz27mRFnrDpYpRvm/6Zm+FbGo0WygNQiLVgTce7WY+39oLERIGRrE8Ovy6rY9Hr4MGBAXz2Q+o9oTOgeBgA==", - "dependencies": { - "@react-aria/interactions": "^3.15.1", - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14", - "clsx": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/i18n": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/@react-aria/i18n/-/i18n-3.7.2.tgz", - "integrity": "sha512-GsVioW8RGOmwebTruEBAmGYJunY0WS7Ljfn5n7Mec3eoMKdQjH2M70fHwCOWqJo8Ufq7A7p0ypBVCv4d4sbSdw==", - "dependencies": { - "@internationalized/date": "^3.2.0", - "@internationalized/message": "^3.1.0", - "@internationalized/number": "^3.2.0", - "@internationalized/string": "^3.1.0", - "@react-aria/ssr": "^3.6.0", - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/interactions": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.15.1.tgz", - "integrity": "sha512-khtpxSvos885rxMep6DRe8RGZjtD16ZuLxhFBtL1dXqSv5XZxaXKOmI8Yx1F8AkVIPdB72MmjG8dz3PpM3PPYg==", - "dependencies": { - "@react-aria/ssr": "^3.6.0", - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/label": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-aria/label/-/label-3.5.2.tgz", - "integrity": "sha512-YtLJl3l11TKzGhSMuUqp1DdQ6s3hbT1buiC+jPPKv81PcjjoUDpj+hAVnc1cigtvrEFSMpi2Z+KYREmYYj4GDQ==", - "dependencies": { - "@react-aria/utils": "^3.17.0", - "@react-types/label": "^3.7.4", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/listbox": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/@react-aria/listbox/-/listbox-3.9.1.tgz", - "integrity": "sha512-tRcqNHGx9Vtspth9zdOLEfbGGaLrTN/rDXg0xN2FT++qxwALuYV7R4qFUX7eTPCT+NDOqeQNOCsHyQF4gQN+JQ==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/interactions": "^3.15.1", - "@react-aria/label": "^3.5.2", - "@react-aria/selection": "^3.15.0", - "@react-aria/utils": "^3.17.0", - "@react-stately/collections": "^3.8.0", - "@react-stately/list": "^3.8.1", - "@react-types/listbox": "^3.4.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/live-announcer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-aria/live-announcer/-/live-announcer-3.3.0.tgz", - "integrity": "sha512-6diTS6mIf70KdxfGqiDxHV+9Qv8a9A88EqBllzXGF6HWPdcwde/GIEmfpTwj8g1ImNGZYUwDkv4Hd9lFj0MXEg==", - "dependencies": { - "@swc/helpers": "^0.4.14" - } - }, - "node_modules/@react-aria/menu": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/@react-aria/menu/-/menu-3.9.1.tgz", - "integrity": "sha512-LRSo7KyVxoFxrjj55VtxMKJ6/c3LhfZThytWFvA9r02Ukf1B0xn/Or8rgyVyHcyekvcmT4IDrjFl1tDG2wsq4g==", - "dependencies": { - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/overlays": "^3.14.1", - "@react-aria/selection": "^3.15.0", - "@react-aria/utils": "^3.17.0", - "@react-stately/collections": "^3.8.0", - "@react-stately/menu": "^3.5.2", - "@react-stately/tree": "^3.6.1", - "@react-types/button": "^3.7.3", - "@react-types/menu": "^3.9.1", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/overlays": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/@react-aria/overlays/-/overlays-3.14.1.tgz", - "integrity": "sha512-xJCw0oSDtwBCCqf0EMMeeLYOEFSCdd1cWFS0O3980SObFQPHwP5KOX5SAs7lVvIlZUvEdpo6sOytcQTjv5U9QA==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/ssr": "^3.6.0", - "@react-aria/utils": "^3.17.0", - "@react-aria/visually-hidden": "^3.8.1", - "@react-stately/overlays": "^3.5.2", - "@react-types/button": "^3.7.3", - "@react-types/overlays": "^3.7.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/radio": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-aria/radio/-/radio-3.6.1.tgz", - "integrity": "sha512-paO2sCxvH8I0Iomzgmvw1TCvzd+0AcUylPSr34dhPmJIsRew7UVtmON9YU8tM/KELDv346n2v8KqzlgHJlLLvg==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/label": "^3.5.2", - "@react-aria/utils": "^3.17.0", - "@react-stately/radio": "^3.8.1", - "@react-types/radio": "^3.4.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/selection": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@react-aria/selection/-/selection-3.15.0.tgz", - "integrity": "sha512-v3AXsau6BobbM5Fu7X+HhX5K/Ey3drVBaoevGDiYX8kGS9jlFNDXENKYPtnMpcTCvSX0yuxTITukOEBokzkb6Q==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/utils": "^3.17.0", - "@react-stately/collections": "^3.8.0", - "@react-stately/selection": "^3.13.1", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/slider": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@react-aria/slider/-/slider-3.4.1.tgz", - "integrity": "sha512-gJTfwZGGGv0dPUO3rC8HCyOXnAgMagJZnV3gIILfzNWZHZLYbLze+IbTSNtNKGIvt4pAKTV0njLDLlxFZlAadw==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/i18n": "^3.7.2", - "@react-aria/interactions": "^3.15.1", - "@react-aria/label": "^3.5.2", - "@react-aria/utils": "^3.17.0", - "@react-stately/radio": "^3.8.1", - "@react-stately/slider": "^3.3.2", - "@react-types/radio": "^3.4.2", - "@react-types/shared": "^3.18.1", - "@react-types/slider": "^3.5.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/ssr": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.6.0.tgz", - "integrity": "sha512-OFiYQdv+Yk7AO7IsQu/fAEPijbeTwrrEYvdNoJ3sblBBedD5j5fBTNWrUPNVlwC4XWWnWTCMaRIVsJujsFiWXg==", - "dependencies": { - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/textfield": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/@react-aria/textfield/-/textfield-3.9.2.tgz", - "integrity": "sha512-wT68tErfMcBvJHyb+5skfs1OHZ8lESzIbrwCTuipM85BeleYIu25qGbKfOX9wMbC+4X775gg/JfmUQESJ6nD1A==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/label": "^3.5.2", - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@react-types/textfield": "^3.7.2", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/toggle": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-aria/toggle/-/toggle-3.6.1.tgz", - "integrity": "sha512-4ml3HMjaZPUtRVb6MuuxuV8P/ydzrpldfP0R1hv3f56lo5gBVMh7ME72z49Z8Jf9hnxPkDBvnNi0AnfITtvfVw==", - "dependencies": { - "@react-aria/focus": "^3.12.1", - "@react-aria/interactions": "^3.15.1", - "@react-aria/utils": "^3.17.0", - "@react-stately/toggle": "^3.5.2", - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1", - "@react-types/switch": "^3.3.2", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/utils": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.17.0.tgz", - "integrity": "sha512-NEul0cQ6tQPdNSHYzNYD+EfFabeYNvDwEiHB82kK/Tsfhfm84SM+baben/at2N51K7iRrJPr5hC5fi4+P88lNg==", - "dependencies": { - "@react-aria/ssr": "^3.6.0", - "@react-stately/utils": "^3.6.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14", - "clsx": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-aria/visually-hidden": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@react-aria/visually-hidden/-/visually-hidden-3.8.1.tgz", - "integrity": "sha512-aojoZXw5iaFDOgqmGuCyaTG9PFqfav5ABXX/W/0Q2YNj6Tb3i6++m2+8RMHlz2b6Dj+rXLiTxa00t7BSgJbUvA==", - "dependencies": { - "@react-aria/interactions": "^3.15.1", - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14", - "clsx": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-native-aria/button": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@react-native-aria/button/-/button-0.2.4.tgz", - "integrity": "sha512-wlu6SXI20U+N4fbPX8oh9pkL9hx8W41+cra3fa3s2xfQ6czT4KAkyvSsr1ALUBH4dRkoxxSPOcGJMGnq2K3djw==", - "dependencies": { - "@react-aria/utils": "^3.6.0", - "@react-native-aria/interactions": "^0.2.3", - "@react-stately/toggle": "^3.2.1", - "@react-types/checkbox": "^3.2.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/checkbox": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@react-native-aria/checkbox/-/checkbox-0.2.3.tgz", - "integrity": "sha512-YtWtXGg5tvOaV6v1CmbusXoOZvGRAVYygms9qNeUF7/B8/iDNGSKjlxHE5LVOLRtJO/B9ndZnr6RkL326ceyng==", - "dependencies": { - "@react-aria/checkbox": "^3.2.1", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/toggle": "^0.2.3", - "@react-native-aria/utils": "^0.2.6", - "@react-stately/toggle": "^3.2.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/combobox": { - "version": "0.2.4-alpha.1", - "resolved": "https://registry.npmjs.org/@react-native-aria/combobox/-/combobox-0.2.4-alpha.1.tgz", - "integrity": "sha512-MOxKMKVus9MsOL3l+mNRDYHeVr5kj5fYnretLofWh/dHBO2W5H7H70ZfOPDEr9s+vgaBBjHCtbbfOiimKRk6Kg==", - "dependencies": { - "@react-aria/combobox": "^3.0.0-alpha.1", - "@react-aria/live-announcer": "^3.0.0-alpha.0", - "@react-aria/overlays": "^3.6.1", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/utils": "^0.2.6", - "@react-types/button": "^3.3.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/focus": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@react-native-aria/focus/-/focus-0.2.7.tgz", - "integrity": "sha512-7Ol8AoTzEN7qC4t4AzclPzjQZ0oRkNBePmVBm2lAQwOnmkKwa+TdiVGtU7MgvsQxUV3aTTMY2Nu1Z5YwCwhUkA==", - "dependencies": { - "@react-aria/focus": "^3.2.3" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/interactions": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@react-native-aria/interactions/-/interactions-0.2.8.tgz", - "integrity": "sha512-+LsLghBnp1fEVdLdIZGfE2izbZS0GPwc7eyiLHndnAXwXdLmyDRw71UCEjsUuNh7SO7BBR5QjHlk0cTHmyynQg==", - "dependencies": { - "@react-aria/interactions": "^3.3.2", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/utils": "^0.2.6" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/listbox": { - "version": "0.2.4-alpha.3", - "resolved": "https://registry.npmjs.org/@react-native-aria/listbox/-/listbox-0.2.4-alpha.3.tgz", - "integrity": "sha512-e/y+Wdoyy/PbpFj4DVYDYMsKI+uUqnZ/0yLByqHQvzs8Ys8o69CQkyEYzHhxvFT5lCLegkLbuQN2cJd8bYNQsA==", - "dependencies": { - "@react-aria/interactions": "^3.3.2", - "@react-aria/label": "^3.1.1", - "@react-aria/listbox": "^3.2.4", - "@react-aria/selection": "^3.3.2", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/interactions": "^0.2.2", - "@react-native-aria/utils": "^0.2.6", - "@react-types/listbox": "^3.1.1", - "@react-types/shared": "^3.4.0" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/overlays": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@react-native-aria/overlays/-/overlays-0.3.6.tgz", - "integrity": "sha512-+mgmScrVezZrOzeEfmxykIy+lHrmbiLou+mv04BtFzM0rfFhOYoQlmxHC7vdLKgsVKw+i6bd5EM9X0rUynLNTA==", - "dependencies": { - "@react-aria/interactions": "^3.3.2", - "@react-aria/overlays": "^3.7.0", - "@react-native-aria/utils": "^0.2.8", - "@react-stately/overlays": "^3.1.1", - "@react-types/overlays": "^3.4.0", - "dom-helpers": "^5.0.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/radio": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@react-native-aria/radio/-/radio-0.2.5.tgz", - "integrity": "sha512-kTfCjRMZH+Z2C70VxjomPO8eXBcHPa5zcuOUotyhR10WsrKZJlwwnA75t2xDq8zsxKnABJRfThv7rSlAjkFSeg==", - "dependencies": { - "@react-aria/radio": "^3.1.2", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/interactions": "^0.2.3", - "@react-native-aria/utils": "^0.2.6", - "@react-stately/radio": "^3.2.1", - "@react-types/radio": "^3.1.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/slider": { - "version": "0.2.5-alpha.2", - "resolved": "https://registry.npmjs.org/@react-native-aria/slider/-/slider-0.2.5-alpha.2.tgz", - "integrity": "sha512-eYCAGEgcmgs2x5yC1q3edq/VpZWd8P9x1ZoB6uhiyIpDViTDFTz82IWTK0jrbHC70WxWfoY+876VjiKzbjyNxw==", - "dependencies": { - "@react-aria/focus": "^3.2.3", - "@react-aria/interactions": "^3.3.2", - "@react-aria/label": "^3.1.1", - "@react-aria/slider": "^3.0.1", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/utils": "^0.2.6", - "@react-stately/slider": "^3.0.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/tabs": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@react-native-aria/tabs/-/tabs-0.2.8.tgz", - "integrity": "sha512-coAiaj9NFFh8vYr/kiugqLwip8IhB6m2dL/GXPcmbK0WH531pIPXKSwgePjniETJtEP84L4PYCTZ705pRlVN8A==", - "dependencies": { - "@react-aria/selection": "^3.3.1", - "@react-aria/tabs": "3.0.0-alpha.2", - "@react-native-aria/interactions": "^0.2.7", - "@react-native-aria/utils": "^0.2.7", - "@react-stately/tabs": "3.0.0-alpha.1", - "@react-types/tabs": "3.0.0-alpha.2" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/tabs/node_modules/@react-aria/tabs": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@react-aria/tabs/-/tabs-3.0.0-alpha.2.tgz", - "integrity": "sha512-yHpz1HujxBcMq8e4jrHkkowzrJwuVyssCB+DuA91kt6LC0eIMZsDZY9tEhhOq+TyOhI3nbyXaDKJG6y1qB0A5A==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-aria/i18n": "^3.2.0", - "@react-aria/interactions": "^3.3.2", - "@react-aria/selection": "^3.3.1", - "@react-aria/utils": "^3.4.1", - "@react-stately/list": "^3.2.2", - "@react-stately/tabs": "3.0.0-alpha.0", - "@react-types/shared": "^3.2.1", - "@react-types/tabs": "3.0.0-alpha.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-native-aria/tabs/node_modules/@react-aria/tabs/node_modules/@react-stately/tabs": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.0.0-alpha.0.tgz", - "integrity": "sha512-QJZ9N7DT89RkP18btvQhJvxWuv/JkSwtm14ftfk+5LBbzyxyLsD2KP6jDrNhXgmkRMmIyEaMt2w2VmI6fQ6UAA==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/list": "^3.2.2", - "@react-stately/utils": "^3.0.0-alpha.1", - "@react-types/tabs": "3.0.0-alpha.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-native-aria/tabs/node_modules/@react-stately/tabs": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.0.0-alpha.1.tgz", - "integrity": "sha512-aEG5lVLqmfx7A/dS5gkPXmD2ERAo69RtC0aHPo/Dw1XjzalYyo6QbQ5WtiuQxsCVx/naWGEJCcMEAD5/vt+cUQ==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/list": "^3.2.2", - "@react-stately/utils": "^3.2.0", - "@react-types/tabs": "3.0.0-alpha.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-native-aria/tabs/node_modules/@react-types/tabs": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@react-types/tabs/-/tabs-3.0.0-alpha.2.tgz", - "integrity": "sha512-HQNS2plzuNhKPo88OGEW2Ja9aLeiWqgNqEemSxh0KAjkA8IsvDGaoQEpr9ZQIyBZ3PQIljvOpEJ/IwHU5LztrQ==", - "dependencies": { - "@react-types/shared": "^3.2.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-native-aria/toggle": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@react-native-aria/toggle/-/toggle-0.2.3.tgz", - "integrity": "sha512-3aOlchMxpR0b2h3Z7V0aYZaQMVJD6uKOWKWJm82VsLrni4iDnDX/mLv30ujuuK3+LclUhVlJd2kRuCl+xnf3XQ==", - "dependencies": { - "@react-aria/focus": "^3.2.3", - "@react-aria/utils": "^3.6.0", - "@react-native-aria/interactions": "^0.2.3", - "@react-native-aria/utils": "^0.2.6", - "@react-stately/toggle": "^3.2.1", - "@react-types/checkbox": "^3.2.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/@react-native-aria/utils": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@react-native-aria/utils/-/utils-0.2.8.tgz", - "integrity": "sha512-x375tG1itv3irLFRnURLsdK2djuvhFJHizSDUtLCo8skQwfjslED5t4sUkQ49di4G850gaVJz0fCcCx/pHX7CA==", - "dependencies": { - "@react-aria/ssr": "^3.0.1", - "@react-aria/utils": "^3.3.0" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, "node_modules/@react-native-async-storage/async-storage": { "version": "1.21.0", "resolved": "https://registry.npmjs.org/@react-native-async-storage/async-storage/-/async-storage-1.21.0.tgz", @@ -6751,11 +6108,11 @@ } }, "node_modules/@react-navigation/bottom-tabs": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-6.5.7.tgz", - "integrity": "sha512-9oZYyRu2z7+1pr2dX5V54rHFPmlj4ztwQxFe85zwpnGcPtGIsXj7VCIdlHnjRHJBBFCszvJGQpYY6/G2+DfD+A==", + "version": "6.5.14", + "resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-6.5.14.tgz", + "integrity": "sha512-3gDVwuaPQIxkJm3PI5vATDr9Un3Z0tplfkzM/TWL2igE0Kd/hymWz0jZppBJbuKi+Q25i/74b+3VOVKuiE43AQ==", "dependencies": { - "@react-navigation/elements": "^1.3.17", + "@react-navigation/elements": "^1.3.24", "color": "^4.2.3", "warn-once": "^0.1.0" }, @@ -6768,25 +6125,25 @@ } }, "node_modules/@react-navigation/core": { - "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-6.4.8.tgz", - "integrity": "sha512-klZ9Mcf/P2j+5cHMoGyIeurEzyBM2Uq9+NoSFrF6sdV5iCWHLFhrCXuhbBiQ5wVLCKf4lavlkd/DDs47PXs9RQ==", + "version": "6.4.11", + "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-6.4.11.tgz", + "integrity": "sha512-kOCyOc1L0lAl53DbyNl3OkUJwSFKSaVCsV8leJawUXMXJ1FTT3nbS3xMOqbZuchxIbl8T62sZ7YnlWG/21rcMw==", "dependencies": { - "@react-navigation/routers": "^6.1.8", + "@react-navigation/routers": "^6.1.9", "escape-string-regexp": "^4.0.0", "nanoid": "^3.1.23", "query-string": "^7.1.3", "react-is": "^16.13.0", - "use-latest-callback": "^0.1.5" + "use-latest-callback": "^0.1.7" }, "peerDependencies": { "react": "*" } }, "node_modules/@react-navigation/elements": { - "version": "1.3.18", - "resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-1.3.18.tgz", - "integrity": "sha512-/0hwnJkrr415yP0Hf4PjUKgGyfshrvNUKFXN85Mrt1gY49hy9IwxZgrrxlh0THXkPeq8q4VWw44eHDfAcQf20Q==", + "version": "1.3.24", + "resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-1.3.24.tgz", + "integrity": "sha512-zgZV50qjlv3/N+MzNV0DIRmtg30IZcR0+LaTQRP/OxLtveQkgUG6wIEKl6SXO2ykC9yF9V82msdCzKl9uPSQCA==", "peerDependencies": { "@react-navigation/native": "^6.0.0", "react": "*", @@ -6795,11 +6152,11 @@ } }, "node_modules/@react-navigation/native": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-6.1.6.tgz", - "integrity": "sha512-14PmSy4JR8HHEk04QkxQ0ZLuqtiQfb4BV9kkMXD2/jI4TZ+yc43OnO6fQ2o9wm+Bq8pY3DxyerC2AjNUz+oH7Q==", + "version": "6.1.12", + "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-6.1.12.tgz", + "integrity": "sha512-t6y7sDCr0HlMf+5TuVjLjyi0ySs0eNGfreDKcWOMEi5wooNFM4LhcUCdEVylpwCPfjQMW/lNVomNromqZFM6HQ==", "dependencies": { - "@react-navigation/core": "^6.4.8", + "@react-navigation/core": "^6.4.11", "escape-string-regexp": "^4.0.0", "fast-deep-equal": "^3.1.3", "nanoid": "^3.1.23" @@ -6810,11 +6167,11 @@ } }, "node_modules/@react-navigation/native-stack": { - "version": "6.9.13", - "resolved": "https://registry.npmjs.org/@react-navigation/native-stack/-/native-stack-6.9.13.tgz", - "integrity": "sha512-ejlepMrvFneewL+XlXHHhn+6y3lwvavM4/R7XwBV0XJxCymujexK+7Vkg7UcvJ1lx4CRhOcyBSNfGmdNIHREyQ==", + "version": "6.9.20", + "resolved": "https://registry.npmjs.org/@react-navigation/native-stack/-/native-stack-6.9.20.tgz", + "integrity": "sha512-/QXOVJGLPNGv0RXisyI5ld9oaKAdVzwcF88Q1pOA1Icp8Yce036bcixJXBsVuUhqYCJ5cBtojWt5mW6za3cRBw==", "dependencies": { - "@react-navigation/elements": "^1.3.18", + "@react-navigation/elements": "^1.3.24", "warn-once": "^0.1.0" }, "peerDependencies": { @@ -6826,430 +6183,13 @@ } }, "node_modules/@react-navigation/routers": { - "version": "6.1.8", - "resolved": "https://registry.npmjs.org/@react-navigation/routers/-/routers-6.1.8.tgz", - "integrity": "sha512-CEge+ZLhb1HBrSvv4RwOol7EKLW1QoqVIQlE9TN5MpxS/+VoQvP+cLbuz0Op53/iJfYhtXRFd1ZAd3RTRqto9w==", + "version": "6.1.9", + "resolved": "https://registry.npmjs.org/@react-navigation/routers/-/routers-6.1.9.tgz", + "integrity": "sha512-lTM8gSFHSfkJvQkxacGM6VJtBt61ip2XO54aNfswD+KMw6eeZ4oehl7m0me3CR9hnDE4+60iAZR8sAhvCiI3NA==", "dependencies": { "nanoid": "^3.1.23" } }, - "node_modules/@react-stately/checkbox": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.4.2.tgz", - "integrity": "sha512-UG94lilDJEIFeRKnKw31nI1Vb1UOSroLAFHv4rB2tCvzLl3/9ULfHyii1hqFVS41juzFc7ONInNBT4yu5RAm5Q==", - "dependencies": { - "@react-stately/toggle": "^3.5.2", - "@react-stately/utils": "^3.6.0", - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/collections": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@react-stately/collections/-/collections-3.8.0.tgz", - "integrity": "sha512-NIRE8Gha0XZTnbvh9JRZM7oI/6uLf6ozjB7myja29IX7hDvsZxITe0RFXBapcujlpXLU2uufssJPKpiwJm3vZQ==", - "dependencies": { - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/combobox": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.5.1.tgz", - "integrity": "sha512-E7eEggbVaueLEeSAOXzB2wUsjxgA3vpfTsghWdxYU6hWPB2ek6cSWfjAp7NPtf0b56n07kZRqa1lFx6kPJSCYw==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/list": "^3.8.1", - "@react-stately/menu": "^3.5.2", - "@react-stately/select": "^3.5.1", - "@react-stately/utils": "^3.6.0", - "@react-types/combobox": "^3.6.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/grid": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-stately/grid/-/grid-3.6.1.tgz", - "integrity": "sha512-54B3OztU99ixMhcZsDdfeMemEcqibK9KgaOZVuPmewee35nXAOGTqNjjeN64Vz6ui8q3j86eIyjGChAxqU0KpA==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/selection": "^3.13.1", - "@react-types/grid": "^3.1.8", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/layout": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/@react-stately/layout/-/layout-3.12.1.tgz", - "integrity": "sha512-WVAo9bb8+QWOkGC0HUkYOGjkXvUuZyOOtftc0blRnuGD30SAx1bLkGEFoa2Qm6K7Rhm7s9jNSSXdd6Tgm4Aqew==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/table": "^3.9.1", - "@react-stately/virtualizer": "^3.5.2", - "@react-types/grid": "^3.1.8", - "@react-types/shared": "^3.18.1", - "@react-types/table": "^3.6.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/list": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@react-stately/list/-/list-3.8.1.tgz", - "integrity": "sha512-QO2hKRnXaz2L1v/KYPmDKeD+PfEScp4KiJMFzU/T9vvjxIratSTg314B25Xj4LJq+JhyxlguylxBF9r/R6qUjQ==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/selection": "^3.13.1", - "@react-stately/utils": "^3.6.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/menu": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-stately/menu/-/menu-3.5.2.tgz", - "integrity": "sha512-BgGK3NleNGcByadG990ccdwr4oQiAN6meGf0gbIwrisikNdnL1XxgzCj+RMEooBtV+qakR+3KtVAnc97E5WiOQ==", - "dependencies": { - "@react-stately/overlays": "^3.5.2", - "@react-stately/utils": "^3.6.0", - "@react-types/menu": "^3.9.1", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/overlays": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-stately/overlays/-/overlays-3.5.2.tgz", - "integrity": "sha512-NEwkF/ukXzI/Ku+6j6MhhqdMc5xMgDnuR6RwFPsoPq6UoHw9/ojifxg/sDj5e1gPoegNZ2nM8G6VmnPUGabg/g==", - "dependencies": { - "@react-stately/utils": "^3.6.0", - "@react-types/overlays": "^3.7.2", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/radio": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.8.1.tgz", - "integrity": "sha512-yhz6/2y/hkDW7dzjhNsxrVZ8T7n2/Y9LyVRKDCL7ZYOkpoVQGe0ELbU04ATJPHNx6Icg/jAfN0Z/uMov/q4VBQ==", - "dependencies": { - "@react-stately/utils": "^3.6.0", - "@react-types/radio": "^3.4.2", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/select": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@react-stately/select/-/select-3.5.1.tgz", - "integrity": "sha512-a6/Y3yRwinYR08Pq7Vj2HjOLtRgn5Ctmorx+UR7hBekvV/7scu9RqNI3i/yxyF+8y7KeymuwuMe1iohn4uAP+g==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/list": "^3.8.1", - "@react-stately/menu": "^3.5.2", - "@react-stately/selection": "^3.13.1", - "@react-stately/utils": "^3.6.0", - "@react-types/select": "^3.8.1", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/selection": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/@react-stately/selection/-/selection-3.13.1.tgz", - "integrity": "sha512-0B+gT6hyei/pzUSmrNliphoztOPZJ7v/xVT9b4HViRTwuOUQlmwi5BQai84EbVtgQaQghc07sJ/Y/Ec8WXCRHA==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/utils": "^3.6.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/slider": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.3.2.tgz", - "integrity": "sha512-UHyBdFR/3Wl1UZmwxWwJ1rb/OCYhY62zZaN7GZrVsnjQ0ng7mFqkb6O0/SXWjsfXnmRAMqCg4ARk82d1PRUfsg==", - "dependencies": { - "@react-aria/i18n": "^3.7.2", - "@react-aria/utils": "^3.17.0", - "@react-stately/utils": "^3.6.0", - "@react-types/shared": "^3.18.1", - "@react-types/slider": "^3.5.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/table": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/@react-stately/table/-/table-3.9.1.tgz", - "integrity": "sha512-/YWpV88RH4ElCiwNm/Ys+A5nyWhy+BwEsGTVatbjwZFmHwHxv1FeMrTiYZ9vXR7V7SMCvA8Pd9OJ9NmRkd2klg==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/grid": "^3.6.1", - "@react-stately/selection": "^3.13.1", - "@react-types/grid": "^3.1.8", - "@react-types/shared": "^3.18.1", - "@react-types/table": "^3.6.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/toggle": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-stately/toggle/-/toggle-3.5.2.tgz", - "integrity": "sha512-2fDecu06job9NKdSIryU4AE+BoTGZqfinUsAvYTaaQN95Apq8IShEDFkY+gSnU09wRX26Ux+JJi5pYwg+HX1tw==", - "dependencies": { - "@react-stately/utils": "^3.6.0", - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/tree": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-stately/tree/-/tree-3.6.1.tgz", - "integrity": "sha512-KfaUoc0/PeT9W25e/7jG1VGeTO54KDKULveuUqLFJEJeP8M8vCgT5Og4YdJkPfu//dlL8OZu1y6ZpdyA9+LBsg==", - "dependencies": { - "@react-stately/collections": "^3.8.0", - "@react-stately/selection": "^3.13.1", - "@react-stately/utils": "^3.6.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/utils": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.6.0.tgz", - "integrity": "sha512-rptF7iUWDrquaYvBAS4QQhOBQyLBncDeHF03WnHXAxnuPJXNcr9cXJtjJPGCs036ZB8Q2hc9BGG5wNyMkF5v+Q==", - "dependencies": { - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-stately/virtualizer": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-stately/virtualizer/-/virtualizer-3.5.2.tgz", - "integrity": "sha512-OmG9lPcbfnyuPhbSDVcDXDfPU0rc2E/V8VLGGd/yMOxSy4S90nWDSEoR8qAN6g9rY6xoLjPJ671nyxOu41EtyA==", - "dependencies": { - "@react-aria/utils": "^3.17.0", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/button": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.7.3.tgz", - "integrity": "sha512-Fz1t/kYinHDunmct3tADD2h3UDBPZUfRE+zCzYiymz0g+v/zYHTAqnkWToTF9ptf8HIB5L2Z2VFYpeUHFfpWzg==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/checkbox": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", - "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/combobox": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.6.2.tgz", - "integrity": "sha512-qitu/W3Z3/ihyqocy+8n4HZKRXF5JTMHl1ug3rKps5yCNnVdkWwjPFPM6w180c9QjquThNY3o947LZ1v59qJ4A==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/grid": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/@react-types/grid/-/grid-3.1.8.tgz", - "integrity": "sha512-NKk4pDbW2QXJOYnDSAYhta81CGwXOc/9tVw2WFs+1wacvxeKmh1Q+n36uAFcIdQOvVRqeGTJaYiqLFmF3fC3tA==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/label": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@react-types/label/-/label-3.7.4.tgz", - "integrity": "sha512-SfTqPRI39GE3GFD5ZGYEeX9jXQrNqDeaaI36PJhnbgGVFz96oVVkhy9t9c2bMHcbhLLENYIHMzxrvVqXS07e7A==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/listbox": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@react-types/listbox/-/listbox-3.4.2.tgz", - "integrity": "sha512-qg980T+tl15pqgfuK8V6z+vsvsIrJEEPxcupQXP3T1O0LxWxJDakZHF0lV9qwfyB9XlnVSMZfkjDiZp9Wgf8QQ==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/menu": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/@react-types/menu/-/menu-3.9.1.tgz", - "integrity": "sha512-VOhp/gDrFqbVV5kiqFoJCba9mxyQH2eCdR26nK3Fn92K8AAGqKt1C0naKCgdAmGp2+qTveR94Iw0iyDfMt60og==", - "dependencies": { - "@react-types/overlays": "^3.7.2", - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/overlays": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/@react-types/overlays/-/overlays-3.7.2.tgz", - "integrity": "sha512-I/mm/xjJVJX2VC4UwNwzhsgVKh8eTHjE2NT6Ek70t/AMR/AT8i3m+eLYb4LEoRFFuZ0ctoJDLKkSCAP7nTkT0A==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/radio": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.4.2.tgz", - "integrity": "sha512-SE6sjZjZbyuJMJNNdlhoutVr+QFRt1Vz7DZj4UaOswW5SD/Xb+xFdW8i6ETKdRN17am/5SC89ltWe0R3q0pVkA==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/select": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@react-types/select/-/select-3.8.1.tgz", - "integrity": "sha512-ByVKKwgpE3d08jI+Ibuom/qphlBiDKpVMwXgFgVZRAN2YvVrsix8arSo7kmXtzekz91qqDBqtt7DBCfT0E1WKw==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/shared": { - "version": "3.18.1", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", - "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/slider": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@react-types/slider/-/slider-3.5.1.tgz", - "integrity": "sha512-8+AMNexx7q7DqfAtQKC5tgnZdG/tIwG2tcEbFCfAQA09Djrt/xiMNz+mc7SsV1PWoWwVuSDFH9QqKPodOrJHDg==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/switch": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.3.2.tgz", - "integrity": "sha512-L0XF4J43Q7HCAJXqseAk6RMteK6k1jQ0zrG05r6lSCkxaS9fGUlgLTCiFUsf07x0ADH1Xyc7PwpfJjyEr5A4tA==", - "dependencies": { - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/table": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@react-types/table/-/table-3.6.1.tgz", - "integrity": "sha512-DeiiBZPZUO2kH40P10Bn9Y4SvDobUlH7Flgx2afL3tJirKMkS1SNDU/B+X9B5Duyd1D0okf1+PLVmi0NBqM4vg==", - "dependencies": { - "@react-types/grid": "^3.1.8", - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/textfield": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.7.2.tgz", - "integrity": "sha512-TsZTf1+4Ve9QHm6mbXr26uLOA4QtZPgyjYgYclL2nHoOl67algeQIFxIVfdlNIKFFMOw5BtC6Mer0I3KUWtbOQ==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, "node_modules/@rematch/core": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@rematch/core/-/core-2.2.0.tgz", @@ -7290,6 +6230,31 @@ "join-component": "^1.1.0" } }, + "node_modules/@shopify/react-native-skia": { + "version": "0.1.221", + "resolved": "https://registry.npmjs.org/@shopify/react-native-skia/-/react-native-skia-0.1.221.tgz", + "integrity": "sha512-hbwl6NJzVRBKVP39JrjVUg6r3sGNlDt17WUluPoF3h1Pv3A4qzwc9VrWNqvWr3H/0XZPuZPCop7EEz2ereYDfA==", + "dependencies": { + "canvaskit-wasm": "0.39.1", + "react-reconciler": "^0.27.0" + }, + "bin": { + "setup-skia-web": "scripts/setup-canvaskit.js" + }, + "peerDependencies": { + "react": ">=18.0", + "react-native": ">=0.64", + "react-native-reanimated": ">=2.0.0" + }, + "peerDependenciesMeta": { + "react-native": { + "optional": true + }, + "react-native-reanimated": { + "optional": true + } + } + }, "node_modules/@sideway/address": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", @@ -7329,14 +6294,6 @@ "@sinonjs/commons": "^3.0.0" } }, - "node_modules/@swc/helpers": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.14.tgz", - "integrity": "sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==", - "dependencies": { - "tslib": "^2.4.0" - } - }, "node_modules/@tootallnate/once": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", @@ -7412,58 +6369,58 @@ } }, "node_modules/@types/d3-array": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.5.tgz", - "integrity": "sha512-Qk7fpJ6qFp+26VeQ47WY0mkwXaiq8+76RJcncDEfMc2ocRzXLO67bLFRNI4OX1aGBoPzsM5Y2T+/m1pldOgD+A==" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz", + "integrity": "sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==" }, "node_modules/@types/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==" }, "node_modules/@types/d3-ease": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", - "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==" }, "node_modules/@types/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", "dependencies": { "@types/d3-color": "*" } }, "node_modules/@types/d3-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", - "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ==" }, "node_modules/@types/d3-scale": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", - "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", + "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", "dependencies": { "@types/d3-time": "*" } }, "node_modules/@types/d3-shape": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", - "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz", + "integrity": "sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA==", "dependencies": { "@types/d3-path": "*" } }, "node_modules/@types/d3-time": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", - "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", + "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==" }, "node_modules/@types/d3-timer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", - "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==" }, "node_modules/@types/graceful-fs": { "version": "4.1.6", @@ -7569,31 +6526,25 @@ "node_modules/@types/prop-types": { "version": "15.7.5", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "devOptional": true }, "node_modules/@types/react": { "version": "18.2.48", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", + "devOptional": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", "csstype": "^3.0.2" } }, - "node_modules/@types/react-native": { - "version": "0.70.14", - "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.70.14.tgz", - "integrity": "sha512-Kwc+BYBrnDqvacNxKp1UtcZJnJJnTih2NYmi/ieAKlHdxEPN6sYMwmIwgHdoLHggvml6bf3DYRaH2jt+gzaLjw==", - "peer": true, - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/scheduler": { "version": "0.16.3", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", - "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==" + "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==", + "devOptional": true }, "node_modules/@types/semver": { "version": "7.5.0", @@ -7916,6 +6867,11 @@ "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0" } }, + "node_modules/@webgpu/types": { + "version": "0.1.21", + "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.21.tgz", + "integrity": "sha512-pUrWq3V5PiSGFLeLxoGqReTZmiiXwY3jRkIG5sLLKjyqNxrwm/04b4nw7LSmGWJcKk59XOM/YRTUwOzo4MMlow==" + }, "node_modules/@xmldom/xmldom": { "version": "0.7.11", "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.11.tgz", @@ -8052,6 +7008,7 @@ "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -8420,11 +7377,11 @@ } }, "node_modules/axios": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz", - "integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==", + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", + "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.4", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -8778,6 +7735,11 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" + }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -9042,6 +8004,33 @@ "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" }, + "node_modules/bunyamin": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/bunyamin/-/bunyamin-1.5.2.tgz", + "integrity": "sha512-Xp2nfqk33zt3nX90OSTkLVOc5N+1zdR3MWvfLHoIrm3cGRkdxPTPYB9CCgrDV8oum5rbghJjAbmXFXOrRXvMtg==", + "dev": true, + "dependencies": { + "@flatten-js/interval-tree": "^1.1.2", + "multi-sort-stream": "^1.0.4", + "stream-json": "^1.7.5", + "trace-event-lib": "^1.3.1" + }, + "engines": { + "node": ">=14.18.2" + }, + "peerDependencies": { + "@types/bunyan": "^1.8.8", + "bunyan": "^1.8.15 || ^2.0.0" + }, + "peerDependenciesMeta": { + "@types/bunyan": { + "optional": true + }, + "bunyan": { + "optional": true + } + } + }, "node_modules/bunyan": { "version": "1.8.15", "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.15.tgz", @@ -9324,6 +8313,14 @@ } ] }, + "node_modules/canvaskit-wasm": { + "version": "0.39.1", + "resolved": "https://registry.npmjs.org/canvaskit-wasm/-/canvaskit-wasm-0.39.1.tgz", + "integrity": "sha512-Gy3lCmhUdKq+8bvDrs9t8+qf7RvcjuQn+we7vTVVyqgOVO1UVfHpsnBxkTZw+R4ApEJ3D5fKySl9TU11hmjl/A==", + "dependencies": { + "@webgpu/types": "0.1.21" + } + }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -9521,14 +8518,6 @@ "node": ">=6" } }, - "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" - } - }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -9876,14 +8865,6 @@ "node": ">=8" } }, - "node_modules/css-in-js-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", - "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", - "dependencies": { - "hyphenate-style-name": "^1.0.3" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -9949,7 +8930,8 @@ "node_modules/csstype": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "devOptional": true }, "node_modules/d3-array": { "version": "3.2.4", @@ -10482,9 +9464,9 @@ } }, "node_modules/detox": { - "version": "20.13.5", - "resolved": "https://registry.npmjs.org/detox/-/detox-20.13.5.tgz", - "integrity": "sha512-V0t1QuRI5rsiXEPBakjjjGGo8Y5kLi4KXhLrcvnpO8id6m7UtObj91wj+4cCnMRX2eSohXu9wR+HbD6IKcO9sA==", + "version": "20.18.1", + "resolved": "https://registry.npmjs.org/detox/-/detox-20.18.1.tgz", + "integrity": "sha512-GMwtoNr5E//ReIGUNtvqye+sHUj4qf9xar/I91HZeP2DAwCTogZ/rysyWH/Y/F3lvVcRxZYh7/qXaxsHNFsduQ==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -10500,6 +9482,7 @@ "funpermaproxy": "^1.1.0", "glob": "^8.0.3", "ini": "^1.3.4", + "jest-environment-emit": "^1.0.5", "json-cycle": "^1.3.0", "lodash": "^4.17.11", "multi-sort-stream": "^1.0.3", @@ -10527,7 +9510,7 @@ "detox": "local-cli/cli.js" }, "engines": { - "node": ">=14.5.0" + "node": ">=18" }, "peerDependencies": { "jest": "29.x.x || 28.x.x || ^27.2.5" @@ -10686,16 +9669,7 @@ "esutils": "^2.0.2" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" + "node": ">=6.0.0" } }, "node_modules/dom-serializer": { @@ -11956,6 +10930,15 @@ "node": ">= 8" } }, + "node_modules/exeunt": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/exeunt/-/exeunt-1.1.0.tgz", + "integrity": "sha512-dd++Yn/0Fp+gtJ04YHov7MeAii+LFivJc6KqnJNfplzLVUkUDrfKoQDTLlCgzcW15vY5hKlHasWeIsQJ8agHsw==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -11991,23 +10974,23 @@ } }, "node_modules/expo": { - "version": "50.0.7", - "resolved": "https://registry.npmjs.org/expo/-/expo-50.0.7.tgz", - "integrity": "sha512-lTqIrKOUTKHLdTuAaJzZihi1v7F8Ix1dOXVWMpToDy9zPC/s+fet0fbyXdFUxYsCUyuEDIB9tvejrTYZk8Hm0Q==", + "version": "50.0.11", + "resolved": "https://registry.npmjs.org/expo/-/expo-50.0.11.tgz", + "integrity": "sha512-XEq8By1l8FQo2SEzhXfQEoKBd0nZ9j6HKsDzj1dUrRVYd02SMH/xUCERxuRaWUL2u1bWdfaFlg/Dmc/2JlVkKQ==", "dependencies": { "@babel/runtime": "^7.20.0", - "@expo/cli": "0.17.5", + "@expo/cli": "0.17.7", "@expo/config": "8.5.4", "@expo/config-plugins": "7.8.4", - "@expo/metro-config": "0.17.4", + "@expo/metro-config": "0.17.6", "@expo/vector-icons": "^14.0.0", "babel-preset-expo": "~10.0.1", "expo-asset": "~9.0.2", - "expo-file-system": "~16.0.6", + "expo-file-system": "~16.0.8", "expo-font": "~11.10.3", "expo-keep-awake": "~12.8.2", "expo-modules-autolinking": "1.10.3", - "expo-modules-core": "1.11.9", + "expo-modules-core": "1.11.10", "fbemitter": "^3.0.0", "whatwg-url-without-unicode": "8.0.0-3" }, @@ -12057,18 +11040,6 @@ "expo": "*" } }, - "node_modules/expo-build-properties": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/expo-build-properties/-/expo-build-properties-0.11.1.tgz", - "integrity": "sha512-m4j4aEjFaDuBE6KWYMxDhWgLzzSmpE7uHKAwtvXyNmRK+6JKF0gjiXi0sXgI5ngNppDQpsyPFMvqG7uQpRuCuw==", - "dependencies": { - "ajv": "^8.11.0", - "semver": "^7.5.3" - }, - "peerDependencies": { - "expo": "*" - } - }, "node_modules/expo-clipboard": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/expo-clipboard/-/expo-clipboard-5.0.1.tgz", @@ -12100,12 +11071,12 @@ } }, "node_modules/expo-dev-client": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/expo-dev-client/-/expo-dev-client-3.3.8.tgz", - "integrity": "sha512-6JpcxncWiWwq1w6SPrePpTa20z3D1qmAMMHd8f05lSCUPVBn4jTwpzrKEpGaA3EubLE5SEdxPVmvmyWw/oFFMQ==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/expo-dev-client/-/expo-dev-client-3.3.9.tgz", + "integrity": "sha512-qODvuyXe8FgVJhBbwDEk/snZa5wSTNHx+poNXwA/PS4gGvOxCuG+qpeQF6K4Yf6r2+sV0OtigxPJiAyhu9I4ug==", "dependencies": { - "expo-dev-launcher": "3.6.6", - "expo-dev-menu": "4.5.5", + "expo-dev-launcher": "3.6.7", + "expo-dev-menu": "4.5.6", "expo-dev-menu-interface": "1.7.2", "expo-manifests": "~0.13.0", "expo-updates-interface": "~0.15.1" @@ -12115,12 +11086,12 @@ } }, "node_modules/expo-dev-launcher": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/expo-dev-launcher/-/expo-dev-launcher-3.6.6.tgz", - "integrity": "sha512-jVI1YZS1YJTrniIL53BOxSZUMyJCeDLuS9SlRx1vC3tnTTN3srg5pU/zCK/DifwbF7i6NtA1iLPSBVu2K4040A==", + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/expo-dev-launcher/-/expo-dev-launcher-3.6.7.tgz", + "integrity": "sha512-xn0cq2LMXv5t3n4jiAPFd9rwP22GM3zsQqAOJuWXH4b7fRzO8bayxOAt1n4RrDgkVsRzgRnxHm7kkO+Eta3Kzg==", "dependencies": { "ajv": "8.11.0", - "expo-dev-menu": "4.5.5", + "expo-dev-menu": "4.5.6", "expo-manifests": "~0.13.0", "resolve-from": "^5.0.0", "semver": "^7.5.3" @@ -12145,9 +11116,9 @@ } }, "node_modules/expo-dev-menu": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/expo-dev-menu/-/expo-dev-menu-4.5.5.tgz", - "integrity": "sha512-PcbI/SqAvueOIEtR1O0s+WvVD7yizQSqXisDSkBrTym3u8XZSN+K730kz2Z64ukY9YIPG4qWR4sd+9rcjsbMWw==", + "version": "4.5.6", + "resolved": "https://registry.npmjs.org/expo-dev-menu/-/expo-dev-menu-4.5.6.tgz", + "integrity": "sha512-V8gOFrv8JBTy50n9mTWVPKVHMcjvrpI/w5ooZGFzjoerBlPXSauIfRmHsqmgmOr3r5oWptnC2PS3LxuSo4QZ5g==", "dependencies": { "expo-dev-menu-interface": "1.7.2", "semver": "^7.5.3" @@ -12199,9 +11170,9 @@ "integrity": "sha512-SY7rVFxb4ut/OMTgR7A39Jg+8+hXwQNRpZd+RBpB+B5XV2STj/pWXHnGFhBayEF4umI4SxrOvisY90rlPWVO9Q==" }, "node_modules/expo-file-system": { - "version": "16.0.6", - "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-16.0.6.tgz", - "integrity": "sha512-ATCHL7nEg2WwKeamW/SDTR9jBEqM5wncFq594ftKS5QFmhKIrX48d9jyPFGnNq+6h8AGPg4QKh2KCA4OY49L4g==", + "version": "16.0.8", + "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-16.0.8.tgz", + "integrity": "sha512-yDbVT0TUKd7ewQjaY5THum2VRFx2n/biskGhkUmLh3ai21xjIVtaeIzHXyv9ir537eVgt4ReqDNWi7jcXjdUcA==", "peerDependencies": { "expo": "*" } @@ -12384,9 +11355,9 @@ } }, "node_modules/expo-modules-core": { - "version": "1.11.9", - "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-1.11.9.tgz", - "integrity": "sha512-GTUb81vcPaF+5MtlBI1u9IjrZbGdF1ZUwz3u8Gc+rOLBblkZ7pYsj2mU/tu+k0khTckI9vcH4ZBksXWvE1ncjQ==", + "version": "1.11.10", + "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-1.11.10.tgz", + "integrity": "sha512-L1DSxV3AUnEvR8+G1JHbMPjpwqALv0AF71oREhDJ/ehI2TDX6LkE+up5BUK1/++UjmVu1lviefbUfLut2F5wNQ==", "dependencies": { "invariant": "^2.2.4" } @@ -12410,17 +11381,6 @@ "expo": "*" } }, - "node_modules/expo-splash-screen": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/expo-splash-screen/-/expo-splash-screen-0.26.4.tgz", - "integrity": "sha512-2DwofTQ0FFQCsvDysm/msENsbyNsJiAJwK3qK/oXeizECAPqD7bK19J4z9kuEbr7ORPX9MLnTQYKl6kmX3keUg==", - "dependencies": { - "@expo/prebuild-config": "6.7.4" - }, - "peerDependencies": { - "expo": "*" - } - }, "node_modules/expo-status-bar": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/expo-status-bar/-/expo-status-bar-1.11.1.tgz", @@ -12596,11 +11556,6 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/fast-loops": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", - "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" - }, "node_modules/fast-xml-parser": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.3.4.tgz", @@ -12922,9 +11877,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "funding": [ { "type": "individual", @@ -13608,11 +12563,6 @@ "ms": "^2.0.0" } }, - "node_modules/hyphenate-style-name": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" - }, "node_modules/i18n-js": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/i18n-js/-/i18n-js-4.2.3.tgz", @@ -13749,15 +12699,6 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, - "node_modules/inline-style-prefixer": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", - "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", - "dependencies": { - "css-in-js-utils": "^3.1.0", - "fast-loops": "^1.1.3" - } - }, "node_modules/internal-ip": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", @@ -13792,17 +12733,6 @@ "node": ">=12" } }, - "node_modules/intl-messageformat": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.4.0.tgz", - "integrity": "sha512-WKmvL2ATvsTJ0CMkO1Hs6f87QlOYZ10opvOJtj0+I3RAQCBxrY8xA3QvVJPJHTS2ru0B7q/kCDyJE1oiiElgyA==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.16.0", - "@formatjs/fast-memoize": "2.1.0", - "@formatjs/icu-messageformat-parser": "2.5.0", - "tslib": "^2.4.0" - } - }, "node_modules/invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", @@ -15038,6 +13968,70 @@ "node": ">=8" } }, + "node_modules/jest-environment-emit": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/jest-environment-emit/-/jest-environment-emit-1.0.7.tgz", + "integrity": "sha512-/0AYqbL3zrfRTtGyzTZwgRxQZiDXEM8ZUfY7Uscla/XGs9vszx4f0XTSZqAk3CQaiwYAoKvFZkB2vSKm1Q08fQ==", + "dev": true, + "dependencies": { + "bunyamin": "^1.5.2", + "bunyan": "^2.0.5", + "bunyan-debug-stream": "^3.1.0", + "funpermaproxy": "^1.1.0", + "lodash.merge": "^4.6.2", + "node-ipc": "9.2.1", + "strip-ansi": "^6.0.0", + "tslib": "^2.5.3" + }, + "engines": { + "node": ">=16.14.0" + }, + "peerDependencies": { + "@jest/environment": ">=27.2.5", + "@jest/types": ">=27.2.5", + "jest": ">=27.2.5", + "jest-environment-jsdom": ">=27.2.5", + "jest-environment-node": ">=27.2.5" + }, + "peerDependenciesMeta": { + "@jest/environment": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "jest": { + "optional": true + }, + "jest-environment-jsdom": { + "optional": true + }, + "jest-environment-node": { + "optional": true + } + } + }, + "node_modules/jest-environment-emit/node_modules/bunyan": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-2.0.5.tgz", + "integrity": "sha512-Jvl74TdxCN6rSP9W1I6+UOUtwslTDqsSFkDqZlFb/ilaSvQ+bZAnXT/GT97IZ5L+Vph0joPZPhxUyn6FLNmFAA==", + "dev": true, + "engines": [ + "node >=0.10.0" + ], + "dependencies": { + "exeunt": "1.1.0" + }, + "bin": { + "bunyan": "bin/bunyan" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.19.3", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, "node_modules/jest-environment-jsdom": { "version": "29.5.0", "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.5.0.tgz", @@ -15082,9 +14076,9 @@ } }, "node_modules/jest-expo": { - "version": "50.0.2", - "resolved": "https://registry.npmjs.org/jest-expo/-/jest-expo-50.0.2.tgz", - "integrity": "sha512-g9Vq4Cpndp6M+bWGNJfyxw+iiZm7o1XpaOEHgtyC1evdy4B9IsEWql1Y2xBH7uD79FwSKhaIz+xCQHZNhnSlAg==", + "version": "50.0.3", + "resolved": "https://registry.npmjs.org/jest-expo/-/jest-expo-50.0.3.tgz", + "integrity": "sha512-n0czPKvs9n+B9I1oL8w3lYMH5bH4GzhLIXXPSx2MQkkVvxsk+28ROXt2GZRTudJhsIB6LCXxIMh9vcR3zotZsA==", "dev": true, "dependencies": { "@expo/config": "~8.5.0", @@ -17043,41 +16037,11 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "node_modules/lodash.has": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/lodash.has/-/lodash.has-4.5.2.tgz", - "integrity": "sha512-rnYUdIo6xRCJnQmbVFEwcxF144erlD+M3YcJUVesflU9paQaE8p+fJDcIQrlMYbxoANFL+AB9hZrzSBBk5PL+g==" - }, - "node_modules/lodash.isempty": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", - "integrity": "sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "node_modules/lodash.isnil": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/lodash.isnil/-/lodash.isnil-4.0.0.tgz", - "integrity": "sha512-up2Mzq3545mwVnMhTDMdfoG1OurpA/s5t88JmQX809eH3C8491iu2sfKhTfhQtKY78oPNhiaHJUpT/dUDAAtng==" - }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -17087,22 +16051,8 @@ "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "node_modules/lodash.mergewith": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", - "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==" - }, - "node_modules/lodash.omit": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", - "integrity": "sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg==" - }, - "node_modules/lodash.omitby": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.omitby/-/lodash.omitby-4.6.0.tgz", - "integrity": "sha512-5OrRcIVR75M288p4nbI2WLAf3ndw2GD9fyNv3Bc15+WCxJDdZ4lYndSxGd7hnG6PVjiJTeJE2dHEGhIuKGicIQ==" + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, "node_modules/lodash.pick": { "version": "4.4.0", @@ -17120,11 +16070,6 @@ "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", "dev": true }, - "node_modules/lodash.uniqueid": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.uniqueid/-/lodash.uniqueid-4.0.1.tgz", - "integrity": "sha512-GQQWaIeGlL6DIIr06kj1j6sSmBxyNMwI8kaX9aKpHR/XsMTiaXDVPNPAkiboOTK9OJpTJF/dXT3xYoFQnj386Q==" - }, "node_modules/log-symbols": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", @@ -18318,192 +17263,6 @@ "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" }, - "node_modules/native-base": { - "version": "3.4.28", - "resolved": "https://registry.npmjs.org/native-base/-/native-base-3.4.28.tgz", - "integrity": "sha512-EDg9UFDNmfYXPInpRbxce+4oWFEIGaM7aG6ey4hVllcvMC3PkgCvkiXEB+7EemgC7Qr8CuFjgMTx7P0vvnwZeQ==", - "dependencies": { - "@react-aria/visually-hidden": "^3.2.1", - "@react-native-aria/button": "^0.2.4", - "@react-native-aria/checkbox": "^0.2.3", - "@react-native-aria/combobox": "^0.2.4-alpha.0", - "@react-native-aria/focus": "^0.2.6", - "@react-native-aria/interactions": "^0.2.2", - "@react-native-aria/listbox": "^0.2.4-alpha.3", - "@react-native-aria/overlays": "^0.3.3", - "@react-native-aria/radio": "^0.2.4", - "@react-native-aria/slider": "^0.2.5-alpha.1", - "@react-native-aria/tabs": "^0.2.7", - "@react-native-aria/utils": "^0.2.8", - "@react-stately/checkbox": "3.0.3", - "@react-stately/collections": "3.3.0", - "@react-stately/combobox": "3.0.0-alpha.1", - "@react-stately/radio": "3.2.1", - "@react-stately/slider": "3.0.1", - "@react-stately/tabs": "3.0.0-alpha.1", - "@react-stately/toggle": "3.2.1", - "inline-style-prefixer": "^6.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.get": "^4.4.2", - "lodash.has": "^4.5.2", - "lodash.isempty": "^4.4.0", - "lodash.isequal": "^4.5.0", - "lodash.isnil": "^4.0.0", - "lodash.merge": "^4.6.2", - "lodash.mergewith": "^4.6.2", - "lodash.omit": "^4.5.0", - "lodash.omitby": "^4.6.0", - "lodash.pick": "^4.4.0", - "lodash.uniqueid": "^4.0.1", - "stable-hash": "^0.0.2", - "tinycolor2": "^1.4.2", - "use-sync-external-store": "^1.2.0" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-native": "*", - "react": "*", - "react-dom": "*", - "react-native": "*", - "react-native-safe-area-context": "*", - "react-native-svg": "*" - } - }, - "node_modules/native-base/node_modules/@react-stately/checkbox": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.0.3.tgz", - "integrity": "sha512-amT889DTLdbjAVjZ9j9TytN73PszynGIspKi1QSUCvXeA2OVyCwShxhV0Pn7yYX8cMinvGXrjhWdhn0nhYeMdg==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/toggle": "^3.2.3", - "@react-stately/utils": "^3.2.2", - "@react-types/checkbox": "^3.2.3" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/checkbox/node_modules/@react-stately/toggle": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@react-stately/toggle/-/toggle-3.5.2.tgz", - "integrity": "sha512-2fDecu06job9NKdSIryU4AE+BoTGZqfinUsAvYTaaQN95Apq8IShEDFkY+gSnU09wRX26Ux+JJi5pYwg+HX1tw==", - "dependencies": { - "@react-stately/utils": "^3.6.0", - "@react-types/checkbox": "^3.4.4", - "@react-types/shared": "^3.18.1", - "@swc/helpers": "^0.4.14" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/native-base/node_modules/@react-stately/collections": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-stately/collections/-/collections-3.3.0.tgz", - "integrity": "sha512-Y8Pfugw/tYbcR9F6GTiTkd9O4FiXErxi5aDLSZ/knS6v0pvr3EHsC3T7jLW+48dSNrwl+HkMe5ECMhWSUA1jRQ==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-types/shared": "^3.2.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/combobox": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.0.0-alpha.1.tgz", - "integrity": "sha512-v0DNGLx0KGvNgBbXoSKzfHGcy65eP0Wx4uY3dqj+u9k3ru2BEvIqB8fo6CWhQqu8VHBX4AlhoxcyrloIKvjD/g==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/list": "^3.2.2", - "@react-stately/menu": "^3.1.0", - "@react-stately/select": "^3.1.0", - "@react-stately/utils": "^3.2.0", - "@react-types/combobox": "3.0.0-alpha.1", - "@react-types/shared": "^3.4.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/combobox/node_modules/@react-types/combobox": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.0.0-alpha.1.tgz", - "integrity": "sha512-td8pZmzZx5L32DuJ5iQk0Y4DNPerHWc2NXjx88jiQGxtorzvfrIQRKh3sy13PH7AMplGSEdAxG0llfCKrIy0Ow==", - "dependencies": { - "@react-types/shared": "^3.4.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/radio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.2.1.tgz", - "integrity": "sha512-WGYMWCDJQOicFLf+bW2CbAnlRWaqsUd028WpsS41GWyIx/w7DVpUeGFwTSvyCXC5SCQZuambsWHgXNz8Ng5WIA==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/utils": "^3.1.1", - "@react-types/radio": "^3.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/slider": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.0.1.tgz", - "integrity": "sha512-gGpfdVbTmdsOvrmZvFx4hJ5b7nczvAWdHR/tFFJKfxH0/V8NudZ5hGnawY84R3x+OvgV+tKUfifEUKA+oJyG5w==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-aria/i18n": "^3.3.0", - "@react-aria/utils": "^3.6.0", - "@react-stately/utils": "^3.2.0", - "@react-types/slider": "^3.0.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/tabs": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.0.0-alpha.1.tgz", - "integrity": "sha512-aEG5lVLqmfx7A/dS5gkPXmD2ERAo69RtC0aHPo/Dw1XjzalYyo6QbQ5WtiuQxsCVx/naWGEJCcMEAD5/vt+cUQ==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/list": "^3.2.2", - "@react-stately/utils": "^3.2.0", - "@react-types/tabs": "3.0.0-alpha.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/tabs/node_modules/@react-types/tabs": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@react-types/tabs/-/tabs-3.0.0-alpha.2.tgz", - "integrity": "sha512-HQNS2plzuNhKPo88OGEW2Ja9aLeiWqgNqEemSxh0KAjkA8IsvDGaoQEpr9ZQIyBZ3PQIljvOpEJ/IwHU5LztrQ==", - "dependencies": { - "@react-types/shared": "^3.2.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/native-base/node_modules/@react-stately/toggle": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@react-stately/toggle/-/toggle-3.2.1.tgz", - "integrity": "sha512-gZVuJ8OYoATUoXzdprsyx6O1w3wCrN+J0KnjhrjjKTrBG68n3pZH0p6dM0XpsaCzlSv0UgNa4fhHS3dYfr/ovw==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "@react-stately/utils": "^3.1.1", - "@react-types/checkbox": "^3.2.1", - "@react-types/shared": "^3.2.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -19184,11 +17943,6 @@ "node": ">=6" } }, - "node_modules/normalize-css-color": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/normalize-css-color/-/normalize-css-color-1.0.2.tgz", - "integrity": "sha512-jPJ/V7Cp1UytdidsPqviKEElFQJs22hUUgK5BOPHTwOonNCk7/2qOxhhqzEajmFrWJowADFfOFh1V+aWkRfy+w==" - }, "node_modules/normalize-package-data": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", @@ -19682,14 +18436,6 @@ "node": ">=10" } }, - "node_modules/parse-png/node_modules/pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/parse5": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", @@ -19933,6 +18679,14 @@ "node": ">=8.0" } }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/popper.js": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", @@ -19971,11 +18725,6 @@ "node": "^10 || ^12 || >=14" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, "node_modules/prebuild-install": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", @@ -20479,22 +19228,6 @@ "react": "18.2.0" } }, - "node_modules/react-native-animatable": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz", - "integrity": "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==", - "dependencies": { - "prop-types": "^15.7.2" - } - }, - "node_modules/react-native-animated-splash-screen": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/react-native-animated-splash-screen/-/react-native-animated-splash-screen-2.0.5.tgz", - "integrity": "sha512-VTZmcYHQq8lxtVtiXQFJKGSSftewI+F3hgLY0ONBA2g3GP/jIgLJHoShup4HBLeA0Q2mjvyNT39JpfTDcLKtHQ==", - "dependencies": { - "prop-types": "^15.7.2" - } - }, "node_modules/react-native-gesture-handler": { "version": "2.14.1", "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.14.1.tgz", @@ -20511,24 +19244,6 @@ "react-native": "*" } }, - "node_modules/react-native-gradle-plugin": { - "version": "0.71.19", - "resolved": "https://registry.npmjs.org/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.19.tgz", - "integrity": "sha512-1dVk9NwhoyKHCSxcrM6vY6cxmojeATsBobDicX0ZKr7DgUF2cBQRTKsimQFvzH8XhOVXyH8p4HyDSZNIFI8OlQ==" - }, - "node_modules/react-native-modal": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/react-native-modal/-/react-native-modal-11.10.0.tgz", - "integrity": "sha512-syRYDJYSh16bR37R5EKU9T/wC+5bEOfF17IUqf5URdhbEDd+hxyMInC++l45E8oI+MtdOaEp9yAws5xDqk8dnA==", - "dependencies": { - "prop-types": "^15.6.2", - "react-native-animatable": "1.3.3" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, "node_modules/react-native-pager-view": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/react-native-pager-view/-/react-native-pager-view-6.2.3.tgz", @@ -20609,30 +19324,6 @@ "react-native": ">=0.23.1" } }, - "node_modules/react-native-web": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/react-native-web/-/react-native-web-0.19.7.tgz", - "integrity": "sha512-AaU4EKCrhdXaKJT3oVm3DH1LJxbA7VEe4TWKBSabGA6+b+CVH2SrCSEKc1pJjqK9iq3gxPcRWnPgrTQ6eHLRmQ==", - "dependencies": { - "@babel/runtime": "^7.18.6", - "@react-native/normalize-color": "^2.1.0", - "fbjs": "^3.0.4", - "inline-style-prefixer": "^6.0.1", - "memoize-one": "^6.0.0", - "nullthrows": "^1.1.1", - "postcss-value-parser": "^4.2.0", - "styleq": "^0.1.3" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/react-native-web/node_modules/memoize-one": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", - "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" - }, "node_modules/react-native/node_modules/@jest/types": { "version": "26.6.2", "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", @@ -20768,10 +19459,33 @@ "async-limiter": "~1.0.0" } }, + "node_modules/react-reconciler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz", + "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.21.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "react": "^18.0.0" + } + }, + "node_modules/react-reconciler/node_modules/scheduler": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", + "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, "node_modules/react-redux": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.0.4.tgz", - "integrity": "sha512-9J1xh8sWO0vYq2sCxK2My/QO7MzUMRi3rpiILP/+tDr8krBHixC6JMM17fMK88+Oh3e4Ae6/sHIhNBgkUivwFA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.1.0.tgz", + "integrity": "sha512-6qoDzIO+gbrza8h3hjMA9aq4nwVFCKFtY2iLxCtVT38Swyy2C/dJCGBXHeHLtx6qlg/8qzc2MrhOeduf5K32wQ==", "dependencies": { "@types/use-sync-external-store": "^0.0.3", "use-sync-external-store": "^1.0.0" @@ -21024,9 +19738,9 @@ } }, "node_modules/redux": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.0.tgz", - "integrity": "sha512-blLIYmYetpZMET6Q6uCY7Jtl/Im5OBldy+vNPauA8vvsdqyt66oep4EUpAMWNHauTC6xa9JuRPhRB72rY82QGA==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", + "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==" }, "node_modules/redux-persist": { "version": "6.0.0", @@ -22043,11 +20757,6 @@ "node": ">= 8" } }, - "node_modules/stable-hash": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.2.tgz", - "integrity": "sha512-tPwQ3c1rLIwbJpq59duoznegEbmgfV630C2n4R4G96LKBFljgK8j+O9AxjqB6cAzu4gE7s4pByrLWtZel8E+Mg==" - }, "node_modules/stack-generator": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", @@ -22369,11 +21078,6 @@ "resolved": "https://registry.npmjs.org/structured-headers/-/structured-headers-0.4.1.tgz", "integrity": "sha512-0MP/Cxx5SzeeZ10p/bZI0S6MpgD+yxAhi1BOQ34jgnMXsCq3j1t6tQnZu+KdlL7dvJTLT3g9xN8tl10TqgFMcg==" }, - "node_modules/styleq": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/styleq/-/styleq-0.1.3.tgz", - "integrity": "sha512-3ZUifmCDCQanjeej1f6kyl/BeP/Vae5EYkQ9iJfUm/QwZvlgnZzyflqAsAWYURdtea8Vkvswu2GrC57h3qffcA==" - }, "node_modules/sucrase": { "version": "3.34.0", "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", @@ -22829,11 +21533,6 @@ "xtend": "~4.0.1" } }, - "node_modules/tinycolor2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", - "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" - }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -22966,9 +21665,9 @@ "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" }, "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "version": "29.1.2", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", + "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", "dev": true, "dependencies": { "bs-logger": "0.x", @@ -22984,7 +21683,7 @@ "ts-jest": "cli.js" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^16.10.0 || ^18.0.0 || >=20.0.0" }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", @@ -23426,9 +22125,9 @@ "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" }, "node_modules/use-latest-callback": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/use-latest-callback/-/use-latest-callback-0.1.6.tgz", - "integrity": "sha512-VO/P91A/PmKH9bcN9a7O3duSuxe6M14ZoYXgA6a8dab8doWNdhiIHzEkX/jFeTTRBsX0Ubk6nG4q2NIjNsj+bg==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/use-latest-callback/-/use-latest-callback-0.1.9.tgz", + "integrity": "sha512-CL/29uS74AwreI/f2oz2hLTW7ZqVeV5+gxFeGudzQrgkCytrHw33G4KbnQOrRlAEzzAFXi7dDLMC9zhWcVpzmw==", "peerDependencies": { "react": ">=16.8" } @@ -23527,106 +22226,101 @@ } }, "node_modules/victory": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory/-/victory-36.6.11.tgz", - "integrity": "sha512-pXtD0gEBw1wohctaeDDWAUwX+qR9OyKyUeI0bi/rmSPNf84TinIf1bWuAuUuEPb2v90ASLVkuz0nVAP//7FOdQ==", - "dependencies": { - "victory-area": "^36.6.11", - "victory-axis": "^36.6.11", - "victory-bar": "^36.6.11", - "victory-box-plot": "^36.6.11", - "victory-brush-container": "^36.6.11", - "victory-brush-line": "^36.6.11", - "victory-candlestick": "^36.6.11", - "victory-canvas": "^36.6.11", - "victory-chart": "^36.6.11", - "victory-core": "^36.6.11", - "victory-create-container": "^36.6.11", - "victory-cursor-container": "^36.6.11", - "victory-errorbar": "^36.6.11", - "victory-group": "^36.6.11", - "victory-histogram": "^36.6.11", - "victory-legend": "^36.6.11", - "victory-line": "^36.6.11", - "victory-pie": "^36.6.11", - "victory-polar-axis": "^36.6.11", - "victory-scatter": "^36.6.11", - "victory-selection-container": "^36.6.11", - "victory-shared-events": "^36.6.11", - "victory-stack": "^36.6.11", - "victory-tooltip": "^36.6.11", - "victory-voronoi": "^36.6.11", - "victory-voronoi-container": "^36.6.11", - "victory-zoom-container": "^36.6.11" + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory/-/victory-36.9.1.tgz", + "integrity": "sha512-unLRMqyXNU6oiLqIPFKc5LdbQpqd0y8icz/J6ma5jnKfcZvsrrPRffkSv0KNPJ/EZMdRsZAcfOF7nSTOYeru3w==", + "dependencies": { + "victory-area": "^36.9.1", + "victory-axis": "^36.9.1", + "victory-bar": "^36.9.1", + "victory-box-plot": "^36.9.1", + "victory-brush-container": "^36.9.1", + "victory-brush-line": "^36.9.1", + "victory-candlestick": "^36.9.1", + "victory-canvas": "^36.9.1", + "victory-chart": "^36.9.1", + "victory-core": "^36.9.1", + "victory-create-container": "^36.9.1", + "victory-cursor-container": "^36.9.1", + "victory-errorbar": "^36.9.1", + "victory-group": "^36.9.1", + "victory-histogram": "^36.9.1", + "victory-legend": "^36.9.1", + "victory-line": "^36.9.1", + "victory-pie": "^36.9.1", + "victory-polar-axis": "^36.9.1", + "victory-scatter": "^36.9.1", + "victory-selection-container": "^36.9.1", + "victory-shared-events": "^36.9.1", + "victory-stack": "^36.9.1", + "victory-tooltip": "^36.9.1", + "victory-voronoi": "^36.9.1", + "victory-voronoi-container": "^36.9.1", + "victory-zoom-container": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-area": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-area/-/victory-area-36.6.11.tgz", - "integrity": "sha512-M/wQ0ryms6WpqGzpv+BMNfCLy0dlOtIxAuYgXJYwwDu55noAMbWlFahIzfllpjTmFOyCpCXF7EDraC3n2xRRFQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-area/-/victory-area-36.9.1.tgz", + "integrity": "sha512-rElzHXJBXZ6sFkYs10aFUoUikFI48XZLbFIfL1tzdA74T426fTRQZNlKvjb2s3XL4fcecqVpvlg1I2dkaAszIQ==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-axis": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-axis/-/victory-axis-36.6.11.tgz", - "integrity": "sha512-f2PUbEsE5wYXKRrgSYdoPRV6QXKNrZjTcd8YlymVGWsouJEFRZFOig8N3yU5lM7OuP98tOdurk4I91Py6NlXrA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-axis/-/victory-axis-36.9.1.tgz", + "integrity": "sha512-s23wAFlE2KFSb6pRlmY4GXL7ZC2poL7jfUJbVWovBDkIUiz5G020ba2+RfMBL4tBTK006OPzQ3GeUPASG7qejA==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-bar": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-bar/-/victory-bar-36.6.11.tgz", - "integrity": "sha512-ANXZIYiDcvC1k3fvGbE8qHOi0POGOsYbzTgP/SBHXh9VQYa/NaYGZT3RO1mxp8wgpwaF+NZYZNC8mMO1pvcB2w==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-bar/-/victory-bar-36.9.1.tgz", + "integrity": "sha512-XCPKgeSBFItux1dBFpTZD90uqMw0wgd4+xD+sRgagVthTdppS3JV4YPNo1MxC/Gdm6XQfBFckcFpNG1qm3Noqw==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-box-plot": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-box-plot/-/victory-box-plot-36.6.11.tgz", - "integrity": "sha512-+J7Hb0Vf6cQe+qZyRhm6sM7V7AMS43jSTXnrFtRP7Bn+HdAb7p2S7h8abtgUhg3uVeTQa9UUqJBmC/maP8V3Nw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-box-plot/-/victory-box-plot-36.9.1.tgz", + "integrity": "sha512-+dSHrA1naP5xEuVeIEoRadE8VL0+QmobJ6qwTxhZyjSwR9CGOelFZEgK4oVzWb7pfSa3dYUlXQRc+UWG02zFVw==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-brush-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-brush-container/-/victory-brush-container-36.6.11.tgz", - "integrity": "sha512-o0pPKzfQhKRlYNYUx3tHjuv9iTXqvgRtmu59L/h6l11DPaRo+jcHDBKEDRuoZxTinR/a1yqfLEJ1i9QgSE8o6w==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-brush-container/-/victory-brush-container-36.9.1.tgz", + "integrity": "sha512-XyLqCQ1LV1QbnWJh1ZlNxzk5Yp8PHqzGH6HLcnnKodZE8FBWTSREgELMQCrcT9NczI2GAA7XNkhGkZcJ4SuBMw==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23638,14 +22332,13 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-brush-line": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-brush-line/-/victory-brush-line-36.6.11.tgz", - "integrity": "sha512-AYZvqq25nc7wOP4w7ysWAkhZnkuG28zah+6M1gJqcdeZov6dkiblda66vpwDOR1sCAGiHtLGR1pkUm+p02ikJw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-brush-line/-/victory-brush-line-36.9.1.tgz", + "integrity": "sha512-evk8KThXX425wUvbAXIKLxcbddIB81b1bVGaQW+fuRGQi9ZOB0pCQxC23Pb7wrBaHzn7iyxbPwWbv9jZhfA5RQ==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23657,44 +22350,41 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-candlestick": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-candlestick/-/victory-candlestick-36.6.11.tgz", - "integrity": "sha512-4R2aYq4opG7ONv//OjJmSPXfVgPdb3xoNiBPfs832Kon0vlfcIltvge34YEn0qkanlcp1Vg/GvxvKa/kxR45JA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-candlestick/-/victory-candlestick-36.9.1.tgz", + "integrity": "sha512-Ki2dM+xAKznP9YTqPr4wbUbs3qHwWUB/LGRSH753cn/VbvvLJGsw9AjTsDDCjPunlxljRUnISmBlABPQgUwxJg==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-canvas": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-canvas/-/victory-canvas-36.6.11.tgz", - "integrity": "sha512-0lzX9JabP6xpkn5VlHPYduYmg2dyMzvXGEbD17ZQNljOhvczkKkbOlps+v94y8MGsiXRLvkpwBMYf4V8m60lFQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-canvas/-/victory-canvas-36.9.1.tgz", + "integrity": "sha512-MfFrNqmQYrj3IdDx3pqdc67YWDouGJVPq5B2Jd9f71pJhxfbXAAsCC0OB7kDgZjVwzPlH2FpaOfRBan8zUJaPg==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-bar": "^36.6.11", - "victory-core": "^36.6.11" + "victory-bar": "^36.9.1", + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-chart": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-36.6.11.tgz", - "integrity": "sha512-t4RIeLT6PJxZaDqNeawtIPxuA48k98kBvYbEV9XEPrS3TPAYsrB6lgXjZKLoItYLh63Ry4nqZAnPti4RD0uTfQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-36.9.1.tgz", + "integrity": "sha512-i87Ok1vAeY9LirQt6T7B8tSr7d1vAuZvVv7f1MTTlRLHEAvifBNiGrhZho5ETzvTOXOAM7UjwqzPZze0Gk66cA==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-axis": "^36.6.11", - "victory-core": "^36.6.11", - "victory-polar-axis": "^36.6.11", - "victory-shared-events": "^36.6.11" + "victory-axis": "^36.9.1", + "victory-core": "^36.9.1", + "victory-polar-axis": "^36.9.1", + "victory-shared-events": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23706,14 +22396,13 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-core": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-36.6.11.tgz", - "integrity": "sha512-aYhFIRu8NQMwW/JbgqoAG7w0lUYbTB1Achx4mmBc6aL8RMkv6LhD/PFwjT3TLpH0AoEs3Rpty2g0UQ+7ulE7dA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-36.9.1.tgz", + "integrity": "sha512-voPTyOyyVipzJPjelxvszVixiI98ApMNb6X9qfaFYK7fHyavF/Hy4sf/Hwq1otatLI7zpr2hC4wF+af6HDELqA==", "dependencies": { "lodash": "^4.17.21", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-vendor": "^36.6.11" + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23725,58 +22414,55 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-create-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-create-container/-/victory-create-container-36.6.11.tgz", - "integrity": "sha512-Ve96DE9XDifmT2Bh/6Ptz7cgIV5DC2GYsr0Rl6I0sF6S02IH3V02NLpkcTthTRJHAvC9MkHwjiBlvFEZsXHOtg==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-create-container/-/victory-create-container-36.9.1.tgz", + "integrity": "sha512-L1c66whZAFnChVQdU2E0aYiTy3Wc1cM58V2vZPo1ORea/W9h3ojOW2bpYkG/XLf67PgnFZ299i23UzuC16Z5uw==", "dependencies": { "lodash": "^4.17.19", - "victory-brush-container": "^36.6.11", - "victory-core": "^36.6.11", - "victory-cursor-container": "^36.6.11", - "victory-selection-container": "^36.6.11", - "victory-voronoi-container": "^36.6.11", - "victory-zoom-container": "^36.6.11" + "victory-brush-container": "^36.9.1", + "victory-core": "^36.9.1", + "victory-cursor-container": "^36.9.1", + "victory-selection-container": "^36.9.1", + "victory-voronoi-container": "^36.9.1", + "victory-zoom-container": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-cursor-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-cursor-container/-/victory-cursor-container-36.6.11.tgz", - "integrity": "sha512-rdQAZb3RGYfijjqIQkuPGLNY5UOhuqyzlxQFaVtkpkDSZKiPMtbfLvR7F0Yfa9cs8OeQU0KAtAiK8R33o7su/Q==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-cursor-container/-/victory-cursor-container-36.9.1.tgz", + "integrity": "sha512-jAxlHbebVjIvmyUBf2AVbfk3rpQNyWPSVoozcBAzjDKhrUn5GIPvytg8QvFsShwdCtSob1eSyBEsGkb16F6xnw==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-errorbar": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-errorbar/-/victory-errorbar-36.6.11.tgz", - "integrity": "sha512-Umu8MZ2XtMNCxr8rRcf421FLywJlvQY86sGNqePaBbar4rqk6sqWAU8HKzttNjCEQ0xh579LmskleiutEBFf4g==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-errorbar/-/victory-errorbar-36.9.1.tgz", + "integrity": "sha512-h19jbkd9LuINKCH8dhXSwSt/UuCiphH75+j3rbSQF9kibzOpUa+WT2IbvHcZEig7obuvj+p2734Ve2Lx4xDE6A==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-group": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-group/-/victory-group-36.6.11.tgz", - "integrity": "sha512-PTRrH31gsGk3KFzeTzAkyvgjtilWYHWkx06oouh70KuAJ7f+9pRMrRMal8v+npH6a8Wp0KKW198AqpkPaZqHyQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-group/-/victory-group-36.9.1.tgz", + "integrity": "sha512-FJwZbrwMJSR/ucj4rYXKYJ+R6oDNsHPG2OvVs4KWkMSSp1Ld/0/V42qFqFNixcLAEcD5ACYtyigZOmS8VEnSnA==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11", - "victory-shared-events": "^36.6.11" + "victory-core": "^36.9.1", + "victory-shared-events": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23788,16 +22474,15 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-histogram": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-histogram/-/victory-histogram-36.6.11.tgz", - "integrity": "sha512-WOMfvshfzAgGn1Zh+/fLVW0kxQrVKYACFCdsKDEYmuG8dGvqmPilI3oljAqiYrafNagwVv+Otc0NNgW8ydLHcA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-histogram/-/victory-histogram-36.9.1.tgz", + "integrity": "sha512-GIsY8S7ouVvvO5xQpUEWOrS8lQfWpZQNINtvvPsYgDidQtBeOfHi4S1yg9Txrs2kHzZ7uy2LpMcOoyGXdG0V6Q==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-bar": "^36.6.11", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-bar": "^36.9.1", + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23809,67 +22494,64 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-legend": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-legend/-/victory-legend-36.6.11.tgz", - "integrity": "sha512-eL310Qh3WcZyjFI18hABVodwHpgZtokHD3r5HKpgZVY8MWkMD9mXErphWbkNHTVi5ya+I3QbRQ7ToRbPUl/Jog==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-legend/-/victory-legend-36.9.1.tgz", + "integrity": "sha512-NVWJzEJgm2+LH94b6aUQ96M58TzAgKP9wXlQC/CuYLMqK45RiLwg7pkSNuXBdtQiJgpD3W6d6klHQmUP2JkNzA==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-line": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-line/-/victory-line-36.6.11.tgz", - "integrity": "sha512-SDQCS6qDSixnYPB1kHEQsue06N6x2cxkIA6uqL45LRFMkKWG4OtwTBORVhtK6lfKzq1OvJs3msoZ+uoRIW1gaA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-line/-/victory-line-36.9.1.tgz", + "integrity": "sha512-WfnDMI5mYN+7rC21yG3IXLIkGL+xNPAFDYikCwtKD9MnHUqk1k/HMGTH0BCVPgXagwIzd8aGpbJGlvcfRr1Kvg==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-native": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-native/-/victory-native-36.6.11.tgz", - "integrity": "sha512-LAUcDHVO7qR9L2rxP0nyBPAI+XQF5/7554zv6PEeBWU0sLszw4loFnbexlc/LCCD0u+VjEiJvsGLk6ihaJKKLQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-native/-/victory-native-36.9.1.tgz", + "integrity": "sha512-4eicD4rTkt8o/T9JLXPif/O6YsJzAKuI8o9ASAcCQcH1Ln9uNJwMfOtnSoJFUCry1A1g7Z5e0++7igyUaNe5qg==", "dependencies": { "lodash": "^4.17.21", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory": "^36.6.11", - "victory-area": "^36.6.11", - "victory-axis": "^36.6.11", - "victory-bar": "^36.6.11", - "victory-box-plot": "^36.6.11", - "victory-brush-container": "^36.6.11", - "victory-brush-line": "^36.6.11", - "victory-candlestick": "^36.6.11", - "victory-chart": "^36.6.11", - "victory-core": "^36.6.11", - "victory-create-container": "^36.6.11", - "victory-cursor-container": "^36.6.11", - "victory-errorbar": "^36.6.11", - "victory-group": "^36.6.11", - "victory-histogram": "^36.6.11", - "victory-legend": "^36.6.11", - "victory-line": "^36.6.11", - "victory-pie": "^36.6.11", - "victory-polar-axis": "^36.6.11", - "victory-scatter": "^36.6.11", - "victory-selection-container": "^36.6.11", - "victory-shared-events": "^36.6.11", - "victory-stack": "^36.6.11", - "victory-tooltip": "^36.6.11", - "victory-voronoi": "^36.6.11", - "victory-voronoi-container": "^36.6.11", - "victory-zoom-container": "^36.6.11" + "victory": "^36.9.1", + "victory-area": "^36.9.1", + "victory-axis": "^36.9.1", + "victory-bar": "^36.9.1", + "victory-box-plot": "^36.9.1", + "victory-brush-container": "^36.9.1", + "victory-brush-line": "^36.9.1", + "victory-candlestick": "^36.9.1", + "victory-chart": "^36.9.1", + "victory-core": "^36.9.1", + "victory-create-container": "^36.9.1", + "victory-cursor-container": "^36.9.1", + "victory-errorbar": "^36.9.1", + "victory-group": "^36.9.1", + "victory-histogram": "^36.9.1", + "victory-legend": "^36.9.1", + "victory-line": "^36.9.1", + "victory-pie": "^36.9.1", + "victory-polar-axis": "^36.9.1", + "victory-scatter": "^36.9.1", + "victory-selection-container": "^36.9.1", + "victory-shared-events": "^36.9.1", + "victory-stack": "^36.9.1", + "victory-tooltip": "^36.9.1", + "victory-voronoi": "^36.9.1", + "victory-voronoi-container": "^36.9.1", + "victory-zoom-container": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23881,68 +22563,63 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-pie": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-36.6.11.tgz", - "integrity": "sha512-vQPAzrubo3BX/1pujSlKKTBGNSj/8fxUJ0vSZPZ6EE1y6SRnPJoLYi2OkDQVT1s3rM9xvW00SflCD3GO/Z3xWA==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-36.9.1.tgz", + "integrity": "sha512-TjfGe1Wd8cWaV7Ldd2AgPstAT0qbxY8EHYj2YyB93qfZCwdLQqxEmDobl+T+BmnRtCodXUWdghkLvVggf4N0bQ==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11", - "victory-vendor": "^36.6.11" + "victory-core": "^36.9.1", + "victory-vendor": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-polar-axis": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-polar-axis/-/victory-polar-axis-36.6.11.tgz", - "integrity": "sha512-wDkyY1rKQTRUVt4+e0QNQgSIJCqXazNhkjWXla8ZWj52GzPP/QSDuzr8SO1oHA3++1jOpdD0R2FTxm+pAea/Yw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-polar-axis/-/victory-polar-axis-36.9.1.tgz", + "integrity": "sha512-C7oPeRzG0Mn+Veu8qI1lVgiBMyZwdrvnplUi6AnFvYf9wURoFjyC+DQ7Eh5IH4TeVQz9rr9ksiliFtXPOHCwvg==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-scatter": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-scatter/-/victory-scatter-36.6.11.tgz", - "integrity": "sha512-x46AfmhiKijXe59kqm7xI0CCjbY8J0VB02HUN3TynMx7xzhW2yOP+QQqgyk+C4im/MS33HKU402Q7cUfF3pgtw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-scatter/-/victory-scatter-36.9.1.tgz", + "integrity": "sha512-n5h/PUW2pHwiBJi0gLt5D5/jM3ZNXnFqZyjFkiKP6nztUtLRQfjcDMwmRWFOF/WZS/e2C7qMYizuXmxuU5ZVOw==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-selection-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-selection-container/-/victory-selection-container-36.6.11.tgz", - "integrity": "sha512-pRQz++0ERZVuIgxpmqLkDgf6hiCAS2m8iGcox8tryWzE1NpADG/IJiHh3AeJgGeiLNMeoJ48hsOZP1C9CCxwrQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-selection-container/-/victory-selection-container-36.9.1.tgz", + "integrity": "sha512-yugHpsS+JHmhJdhduuDHIBVg0mJ60Nge52CCHdiqM7hitcK1+hJgeEPt9zyCDYivQrBimRCGjNYfXhjjCbxzrg==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-shared-events": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-shared-events/-/victory-shared-events-36.6.11.tgz", - "integrity": "sha512-ia6ijfgfYMb+gGFPEq4F6rqzB9p5EkjKpjvmEv4Ww7VjrtdORu7PPfAgTxXw/9QgFSq4iOUnDtzjObABua09fQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-shared-events/-/victory-shared-events-36.9.1.tgz", + "integrity": "sha512-U+iDeuv17qYbigMivQcYmZPrvCMHQ8oHFprrlmF9K9cby3q9NFuZ6bbZUngm8kB61P0L6gR0BbYSWvdT9QUEbA==", "dependencies": { "json-stringify-safe": "^5.0.1", "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23954,15 +22631,14 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-stack": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-stack/-/victory-stack-36.6.11.tgz", - "integrity": "sha512-kE/915RdcKes69WpxZ5j6MyCIJqdzIZnzIg6OArBeDlD+LuinNb2oNxYpMXzur1KFSyk5PCUckHgEbR2XLoXrw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-stack/-/victory-stack-36.9.1.tgz", + "integrity": "sha512-yTSLyq3PShJIIsHFjRZcWJvJsZU0+kZ6OhYawqnE133XkaQFdA6C4nhMGCAs6VzFT9PofzFuU0OY4geZ70G1TQ==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11", - "victory-shared-events": "^36.6.11" + "victory-core": "^36.9.1", + "victory-shared-events": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -23974,22 +22650,21 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-tooltip": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-tooltip/-/victory-tooltip-36.6.11.tgz", - "integrity": "sha512-YxAPkGAqTYOIW4aE5InGFABmYjiBfuQFjCe9hwFGvIC/Uqn202xgs5kYVEZXUX3vc9W8XOl7plaQJzmtr2ZZBQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-tooltip/-/victory-tooltip-36.9.1.tgz", + "integrity": "sha512-/ICZ4jaYFplSgK1HkFikEN9d4xlRm7dI7MouYTC1m74q869nMPycLJeVjUo9RsiPnUDeiJLAnKZnXb0oICyYsQ==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-vendor": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.6.11.tgz", - "integrity": "sha512-nT8kCiJp8dQh8g991J/R5w5eE2KnO8EAIP0xocWlh9l2okngMWglOPoMZzJvek8Q1KUc4XE/mJxTZnvOB1sTYg==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.1.tgz", + "integrity": "sha512-+pZIP+U3pEJdDCeFmsXwHzV7vNHQC/eIbHklfe2ZCZqayYRH7lQbHcVgsJ0XOOv27hWs4jH4MONgXxHMObTMSA==", "dependencies": { "@types/d3-array": "^3.0.3", "@types/d3-ease": "^3.0.0", @@ -24008,30 +22683,28 @@ } }, "node_modules/victory-voronoi": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-voronoi/-/victory-voronoi-36.6.11.tgz", - "integrity": "sha512-Hu1S8HsM0YOUvzW0cp2LnEvgh6a+dXHkGfaI+Qyyz5P8uXFgBcBvvhzLbgawkrIOgbX/jU5Vpketvhm4ByuAqQ==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-voronoi/-/victory-voronoi-36.9.1.tgz", + "integrity": "sha512-LJyBRKYu2dyrBO8Mr6vvpyknjoag/k0uJ1ax4DAFGk1uAW+ktRu5QXmU5UMIiDNihScByUsiU76JnHhI2A5wYg==", "dependencies": { "d3-voronoi": "^1.1.4", "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" } }, "node_modules/victory-voronoi-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-voronoi-container/-/victory-voronoi-container-36.6.11.tgz", - "integrity": "sha512-KNB814e5uhs00oNFdkPucXMlpNILnWabHM7iKLBz26nlgqiu6dctZZoWU+HKjxbPkHdic6JQsg28Nk5bThaulw==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-voronoi-container/-/victory-voronoi-container-36.9.1.tgz", + "integrity": "sha512-F/ZWvhF/JkRxFT1UPGf4HgPnBAhUmbRIBssAvsIRer4cr3p7RieMNTMcTYHtVwR9kTKClfmJKgn1T7imBGt2BA==", "dependencies": { "delaunay-find": "0.0.6", "lodash": "^4.17.19", - "prop-types": "^15.8.1", "react-fast-compare": "^3.2.0", - "victory-core": "^36.6.11", - "victory-tooltip": "^36.6.11" + "victory-core": "^36.9.1", + "victory-tooltip": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" @@ -24043,13 +22716,12 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/victory-zoom-container": { - "version": "36.6.11", - "resolved": "https://registry.npmjs.org/victory-zoom-container/-/victory-zoom-container-36.6.11.tgz", - "integrity": "sha512-DRS12HZEmy5oJanlnSK9Wtp/6HQQbwvK0idVU+Lhf2lw3r9gauWp/ymWwWzaHd7Mn5cCODuNW1le2bqb71j3wg==", + "version": "36.9.1", + "resolved": "https://registry.npmjs.org/victory-zoom-container/-/victory-zoom-container-36.9.1.tgz", + "integrity": "sha512-2G+2iUsmTCpt1ItUWVOzK0CCRYCFf+/rH4uXuvXqipHjRnotz5bxOkuW68Fdx1MzGoexIc8DfQoKxKd/q0HkZA==", "dependencies": { "lodash": "^4.17.19", - "prop-types": "^15.8.1", - "victory-core": "^36.6.11" + "victory-core": "^36.9.1" }, "peerDependencies": { "react": ">=16.6.0" diff --git a/package.json b/package.json index a757646..a90d353 100644 --- a/package.json +++ b/package.json @@ -1,45 +1,47 @@ { "name": "abacus", - "homepage": "https://github.com/victorbalssa/abacus", - "version": "0.12.4", + "version": "0.13.2", "private": true, + "homepage": "https://github.com/victorbalssa/abacus", + "scripts": { + "android": "expo run:android", + "debug": "open 'rndebugger://set-debugger-loc?host=localhost&port=19001'", + "ios": "expo run:ios", + "lint": "eslint --config .eslintrc.json .", + "lint-with-results": "eslint --config .eslintrc.json --format @microsoft/eslint-formatter-sarif --output-file eslint-results.sarif .", + "start": "expo start --dev-client" + }, "jest": { "preset": "jest-expo", "transformIgnorePatterns": [ "node_modules/(?!((jest-)?react-native|victory|react-native-svg|react-clone-referenced-element|expo(nent)?|@expo(nent)?/.*|react-navigation|redux-persist|native-base(-shoutem-theme)|native-base))" ] }, - "scripts": { - "lint": "eslint --config .eslintrc.json .", - "lint-with-results": "eslint --config .eslintrc.json --format @microsoft/eslint-formatter-sarif --output-file eslint-results.sarif .", - "start": "expo start --dev-client", - "android": "expo run:android", - "ios": "expo run:ios", - "debug": "open 'rndebugger://set-debugger-loc?host=localhost&port=19001'" - }, "dependencies": { "@expo/config-plugins": "~7.8.0", "@expo/metro-runtime": "~3.1.3", "@expo/vector-icons": "^14.0.0", "@react-native-async-storage/async-storage": "1.21.0", "@react-native-community/datetimepicker": "7.6.1", - "@react-navigation/bottom-tabs": "^6.2.0", - "@react-navigation/native": "^6.0.8", - "@react-navigation/native-stack": "^6.9.13", + "@react-navigation/bottom-tabs": "6.5.14", + "@react-navigation/native": "6.1.12", + "@react-navigation/native-stack": "6.9.20", "@rematch/core": "^2.2.0", "@rematch/loading": "^2.1.2", "@rematch/persist": "^2.1.2", - "axios": "^1.6.0", + "@shopify/react-native-skia": "0.1.221", + "axios": "1.6.7", "babel-polyfill": "^6.26.0", + "base-64": "^1.0.0", "bootstrap": "^4.4.1", - "expo": "~50.0.7", + "expo": "~50.0.11", "expo-application": "~5.8.3", "expo-asset": "~9.0.2", "expo-auth-session": "~5.4.0", "expo-blur": "~12.9.2", - "expo-build-properties": "~0.11.1", "expo-clipboard": "~5.0.1", "expo-crypto": "~12.8.1", + "expo-dev-client": "~3.3.9", "expo-device": "~5.9.3", "expo-font": "~11.10.2", "expo-haptics": "~12.8.1", @@ -49,42 +51,32 @@ "expo-localization": "~14.8.3", "expo-random": "~13.6.0", "expo-secure-store": "~12.8.1", - "expo-splash-screen": "~0.26.4", "expo-status-bar": "~1.11.1", "expo-store-review": "~6.8.3", "expo-system-ui": "~2.9.3", "expo-updates": "~0.24.11", - "expo-web-browser": "~12.8.2", "globally": "^0.0.0", "i18n-js": "^4.1.1", "lodash": "^4.17.21", "moment": "^2.29.4", - "native-base": "^3.4.25", - "normalize-css-color": "^1.0.2", - "prop-types": "^15.7.2", "react": "18.2.0", "react-dom": "18.2.0", "react-helmet": "^5.2.1", "react-native": "0.73.4", - "react-native-animated-splash-screen": "^2.0.5", "react-native-gesture-handler": "~2.14.0", - "react-native-gradle-plugin": "^0.71.19", - "react-native-modal": "^11.5.6", "react-native-pager-view": "6.2.3", "react-native-reanimated": "~3.6.2", "react-native-safe-area-context": "4.8.2", "react-native-screens": "~3.29.0", "react-native-svg": "14.1.0", "react-native-swipe-list-view": "^3.2.9", - "react-native-web": "~0.19.7", - "react-redux": "^9.0.4", - "redux": "5.0.0", - "redux-persist": "^6.0.0", + "react-redux": "9.1.0", + "redux": "5.0.1", + "redux-persist": "6.0.0", "semver": "^7.5.4", "sharp-cli": "^4.2.0", "slash": "^5.1.0", - "victory-native": "^36.6.11", - "expo-dev-client": "~3.3.8" + "victory-native": "^36.9.1" }, "devDependencies": { "@babel/core": "^7.23.2", @@ -95,7 +87,7 @@ "@typescript-eslint/eslint-plugin": "^5.30.0", "@typescript-eslint/parser": "^5.62.0", "babel-preset-expo": "^10.0.0", - "detox": "20.13.5", + "detox": "20.18.1", "dotenv": "^16.3.1", "eslint": "^7.32.0", "eslint-config-airbnb": "^19.0.4", @@ -103,10 +95,10 @@ "eslint-plugin-jest": "^27.2.3", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.1", - "jest-expo": "~50.0.2", - "node-sass": "^9.0.0", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1", - "typescript": "^5.3.0" + "jest-expo": "~50.0.3", + "node-sass": "9.0.0", + "ts-jest": "29.1.2", + "ts-node": "10.9.1", + "typescript": "5.3.3" } } diff --git a/plugins/withAndroidStyles.js b/plugins/withAndroidStyles.js new file mode 100644 index 0000000..6dc613c --- /dev/null +++ b/plugins/withAndroidStyles.js @@ -0,0 +1,108 @@ +// eslint-disable-next-line @typescript-eslint/no-var-requires +const { AndroidConfig, withAndroidStyles } = require('@expo/config-plugins'); + +const setStrings = (modResults) => { + let newStyles = { ...modResults }; + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'colorAccent' }, _: '#ffffff' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:textColorPrimary' }, _: '#ffffff' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:background' }, _: '#212121' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:buttonBarNegativeButtonStyle' }, _: '@style/NegativeButtonStyle' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:buttonBarPositiveButtonStyle' }, _: '@style/PositiveButtonStyle' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:windowTitleStyle' }, _: '@style/MyTitleTextStyle' }, + parent: { + parent: 'Theme.AppCompat.Dialog.Alert', + name: 'AlertDialogTheme', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:textColor' }, _: '#ffffff' }, + parent: { + parent: 'Widget.AppCompat.Button.ButtonBar.AlertDialog', + name: 'MyTitleTextStyle', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:textColor' }, _: '#d50c3c' }, + parent: { + parent: 'Widget.AppCompat.Button.ButtonBar.AlertDialog', + name: 'NegativeButtonStyle', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:textColor' }, _: '#549cea' }, + parent: { + parent: 'Widget.AppCompat.Button.ButtonBar.AlertDialog', + name: 'PositiveButtonStyle', + }, + xml: newStyles, + }); + + newStyles = AndroidConfig.Styles.setStylesItem({ + item: { $: { name: 'android:alertDialogTheme' }, _: '@style/AlertDialogTheme' }, + parent: { + parent: 'Theme.AppCompat.Light.NoActionBar', + name: 'AppTheme', + }, + xml: newStyles, + }); + + return newStyles; +}; + +module.exports = function withAndroidStylesUpdates(configuration) { + return withAndroidStyles(configuration, (config) => { + const newConfig = { ...config }; + + newConfig.modResults = setStrings(newConfig.modResults); + + return newConfig; + }); +}; diff --git a/src/components/Charts/AssetsHistoryChart.tsx b/src/components/Charts/AssetsHistoryChart.tsx index 0e1299d..6f587c0 100644 --- a/src/components/Charts/AssetsHistoryChart.tsx +++ b/src/components/Charts/AssetsHistoryChart.tsx @@ -66,7 +66,7 @@ function Cursor({ paddingHorizontal: 10, }} > - + {`${activePoints.length !== 0 ? new Date(activePoints[0]?.x).toLocaleString(Localization.locale, { month: 'short', day: 'numeric', @@ -175,10 +175,7 @@ export default function AssetsHistoryChart() { paddingVertical: 10, }} > - + {translate('assets_history_chart')} {' '} {currentCode} diff --git a/src/components/Charts/BalanceHistoryChart.tsx b/src/components/Charts/BalanceHistoryChart.tsx index b77143a..a30a67e 100644 --- a/src/components/Charts/BalanceHistoryChart.tsx +++ b/src/components/Charts/BalanceHistoryChart.tsx @@ -64,10 +64,7 @@ export default function BalanceHistoryChart() { paddingVertical: 10, }} > - + {translate('balance_history_chart')} {' '} {currentCode} diff --git a/src/components/Forms/Fields/AutocompleteField.tsx b/src/components/Forms/Fields/AutocompleteField.tsx index b5b91ef..1df83d3 100644 --- a/src/components/Forms/Fields/AutocompleteField.tsx +++ b/src/components/Forms/Fields/AutocompleteField.tsx @@ -1,21 +1,19 @@ import React, { useCallback, useMemo, useState } from 'react'; -import { View } from 'react-native'; -import { - FormControl, - HStack, - Input, - Pressable, - Text, - Badge, - IconButton, - ScrollView, -} from 'native-base'; import axios from 'axios'; import { useSelector } from 'react-redux'; -import { AntDesign } from '@expo/vector-icons'; +import { AntDesign, EvilIcons } from '@expo/vector-icons'; import { RootState } from '../../../store'; import { convertKeysToCamelCase, useThemeColors } from '../../../lib/common'; +import { + AInput, + APressable, + AStack, + AText, + AView, + ALabel, + AFormView, AIconButton, +} from '../../UI/ALibrary'; type AutocompleteType = { name: string, @@ -25,16 +23,14 @@ type AutocompleteType = { export default function AutocompleteField({ splitType = 'withdrawal', designation = 'source', - isInvalid = false, isRequired = false, label, placeholder, value, onChangeText = null, onSelectAutocomplete, - InputRightElement, + InputRightElement = null, routeApi, - error = null, onDeleteMultiple = null, multiple = false, small = false, @@ -90,43 +86,39 @@ export default function AutocompleteField({ return useMemo( () => ( - + {!small && ( - + {label} - + )} - {multiple && ( - - {value.map((item, index) => ( - handleDeleteMultiple(item)} - /> - )} - > - {item} - - ))} - - )} - ( + + + + {item} + } + onPress={() => handleDeleteMultiple(item)} + /> + + + )))} + + ((multiple && text !== '') ? handleSelectAutocomplete({ name: text }) : null)} placeholder={placeholder} @@ -138,41 +130,34 @@ export default function AutocompleteField({ /> {displayAutocomplete && ( - + {autocompletes.map((autocomplete: AutocompleteType) => ( - handleSelectAutocomplete(autocomplete)} - _pressed={{ - borderRadius: 10, - backgroundColor: colors.tileBackgroundColor, - }} > - - + {autocomplete.name || '-'} - - - + + + ))} - + )} - {error && {error}} - + ), [ - isInvalid, isRequired, label, placeholder, multiple, value, - error, designation, small, splitType, diff --git a/src/components/Forms/Fields/ForeignCurrencyField.tsx b/src/components/Forms/Fields/ForeignCurrencyField.tsx new file mode 100644 index 0000000..4483ead --- /dev/null +++ b/src/components/Forms/Fields/ForeignCurrencyField.tsx @@ -0,0 +1,73 @@ +import React, { useCallback, useMemo, useState } from 'react'; +import { useSelector } from 'react-redux'; + +import { RootState } from '../../../store'; +import { + APressable, + AStack, + AText, + AView, +} from '../../UI/ALibrary'; +import { CurrencyType } from '../../../models/currencies'; + +type ForeignCurrencyFieldProps = { + placeholder?: string, + value?: string, + onSelect: (currencyId: string) => void, +} + +export default function ForeignCurrencyField({ + placeholder, + value, + onSelect, +}: ForeignCurrencyFieldProps) { + const currencies = useSelector((state: RootState) => state.currencies.currencies); + const [displayAutocomplete, setDisplayAutocomplete] = useState(false); + + const handleSelectAutocomplete = useCallback((currencyId: string) => { + onSelect(currencyId); + setDisplayAutocomplete(false); + }, [onSelect]); + + const handleFocus = () => { + setDisplayAutocomplete(true); + }; + + return useMemo( + () => ( + + {!displayAutocomplete && ( + + {currencies[currencies.findIndex((s) => s.id === value)]?.attributes.code || placeholder} + + )} + + {displayAutocomplete && ( + + {currencies.map((currency: CurrencyType) => ( + handleSelectAutocomplete(currency.id)} + > + + + {currency.attributes.code || '-'} + + + + ))} + + )} + + ), + [ + value, + placeholder, + displayAutocomplete, + ], + ); +} diff --git a/src/components/Forms/Fields/GroupTitle.tsx b/src/components/Forms/Fields/GroupTitle.tsx index ffa90fa..49d378f 100644 --- a/src/components/Forms/Fields/GroupTitle.tsx +++ b/src/components/Forms/Fields/GroupTitle.tsx @@ -1,22 +1,28 @@ import React, { useMemo, useState } from 'react'; -import { FormControl, IconButton, Input } from 'native-base'; import { useDispatch } from 'react-redux'; import { AntDesign } from '@expo/vector-icons'; import translate from '../../../i18n/locale'; import { RootDispatch } from '../../../store'; +import { + AFormView, AIconButton, + AInput, + ALabel, + AText, +} from '../../UI/ALibrary'; +import { useThemeColors } from '../../../lib/common'; export default function GroupTitle({ title }) { + const { colors } = useThemeColors(); const [groupTitle, setGroupTitle] = useState(title); const dispatch = useDispatch(); return useMemo( () => ( - - + + {translate('transaction_form_group_title_label')} - - + } onPress={() => { setGroupTitle(''); dispatch.transactions.setGroupTitle(''); }} /> -)} + )} /> - {translate('transaction_form_group_title_helper')} - + {translate('transaction_form_group_title_helper')} + ), [ groupTitle, diff --git a/src/components/Forms/OauthForm.tsx b/src/components/Forms/OauthForm.tsx index 1004c93..7de6a49 100644 --- a/src/components/Forms/OauthForm.tsx +++ b/src/components/Forms/OauthForm.tsx @@ -1,15 +1,10 @@ import React, { useState } from 'react'; -import { - Input, - FormControl, - Button, - Switch, -} from 'native-base'; import { KeyboardAvoidingView, Platform, Alert, ScrollView, + Switch, } from 'react-native'; import * as Haptics from 'expo-haptics'; import * as Clipboard from 'expo-clipboard'; @@ -21,7 +16,15 @@ import { isValidHttpUrl, useThemeColors } from '../../lib/common'; import translate from '../../i18n/locale'; import { RootState } from '../../store'; import { - APressable, AStackFlex, AText, AView, + AFormView, + AInput, + ALabel, + APressable, + AStack, + AStackFlex, + AText, + AView, + AButton, } from '../UI/ALibrary'; const copyToClipboard = async () => { @@ -34,8 +37,6 @@ export default function OauthForm({ setConfig, oauthLogin, tokenLogin, - useBiometricAuth = false, - biometricCheck = () => {}, }) { const { colors } = useThemeColors(); const loading = useSelector((state: RootState) => state.loading.effects.firefly.getNewAccessToken?.loading); @@ -54,6 +55,7 @@ export default function OauthForm({ }; const handleLogin = async () => { + Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light).catch(); if (isOauth) { oauthLogin(); } else { @@ -68,13 +70,19 @@ export default function OauthForm({ > - - - {translate('auth_form_url_label')} - + + {translate('auth_form_url_label')} + - + {translate('auth_form_url_help')} - - + + - {translate('auth_external_heads_up')} + {translate('auth_external_heads_up')} {translate('auth_use_personal_access_token')} - + toggleIsOauth()} value={!isOauth} /> {isOauth && ( - ‣ + 1. {' '} {translate('auth_create_new_oauth_client')} {' '} - Linking.openURL(`${config.backendURL}/profile`)} underline> - {`${isValidHttpUrl(config.backendURL) ? config.backendURL : '[Firefly III URL]'}/profile`} - - + Linking.openURL(`${config.backendURL}/profile`)} underline> + {`${isValidHttpUrl(config.backendURL) ? config.backendURL : '[Firefly III URL]'}/profile`} + + - ‣ + 2. {' '} {translate('auth_form_set_redirect')} @@ -121,19 +129,20 @@ export default function OauthForm({ justifyContent: 'center', alignItems: 'center', backgroundColor: colors.brandStyle, - borderRadius: 5, + borderRadius: 10, marginLeft: 10, - paddingRight: 3, + paddingRight: 7, + padding: 1, }} onPress={copyToClipboard} > - - abacusfiiiapp://redirect + + abacusfiiiapp://redirect - - {translate('auth_form_oauth_clientId')} - + {translate('auth_form_oauth_clientId')} + - - - {translate('auth_form_oauth_client_secret')} - + + {translate('auth_form_oauth_client_secret')} + - + {translate('auth_form_secrets_help_message')} - - + + )} {!isOauth && ( Linking.openURL(`${config.backendURL}/profile`)}> - ‣ + 1. {' '} {translate('auth_create_new_personal_access_token')} {' '} @@ -175,9 +184,11 @@ export default function OauthForm({ /profile - - {translate('auth_form_personal_access_token_label')} - + + {translate('auth_form_personal_access_token_label')} + + - + {translate('auth_form_secrets_help_message')} - - + + )} @@ -207,72 +218,22 @@ export default function OauthForm({ - - {useBiometricAuth && ( - - )} + + + {translate('auth_form_submit_button_initial')} + + - + diff --git a/src/components/Forms/TransactionForm.tsx b/src/components/Forms/TransactionForm.tsx index 404fef4..41bab3c 100644 --- a/src/components/Forms/TransactionForm.tsx +++ b/src/components/Forms/TransactionForm.tsx @@ -1,8 +1,17 @@ -import React, { useEffect, useMemo, useState } from 'react'; +import React, { + useEffect, + useLayoutEffect, + useMemo, + useState, +} from 'react'; import { - Keyboard, Platform, View, KeyboardAvoidingView, ScrollView, + Keyboard, + Platform, + KeyboardAvoidingView, + ScrollView, + Pressable, + Switch, } from 'react-native'; -import { Button } from 'native-base'; import { useDispatch, useSelector } from 'react-redux'; import * as Haptics from 'expo-haptics'; import * as Crypto from 'expo-crypto'; @@ -11,14 +20,17 @@ import { Ionicons } from '@expo/vector-icons'; import TransactionSplitForm from '../Forms/TransactionSplitForm'; import { RootDispatch, RootState } from '../../store'; import translate from '../../i18n/locale'; -import ToastAlert from '../UI/ToastAlert'; import GroupTitle from './Fields/GroupTitle'; import Loading from '../UI/Loading'; import { initialSplit } from '../../models/transactions'; -import { AView } from '../UI/ALibrary'; +import { AStackFlex, AText, AView } from '../UI/ALibrary'; +import AButton from '../UI/ALibrary/AButton'; +import { useThemeColors } from '../../lib/common'; function MultipleTransactionSplitForm({ isNew, splits, title }) { + const { colors } = useThemeColors(); + const displayForeignCurrency = useSelector((state: RootState) => state.configuration.displayForeignCurrency); const [splitNumber, setSplitNumber] = useState([]); const dispatch = useDispatch(); @@ -37,12 +49,17 @@ function MultipleTransactionSplitForm({ isNew, splits, title }) { dispatch.transactions.deleteTransactionSplit(index); }; + const onSwitch = async (bool: boolean) => { + dispatch.configuration.setDisplayForeignCurrency(bool); + return Promise.resolve(); + }; + if (splitNumber.length === 0) { return ; } return ( - + {splitNumber.map((e, i) => ( deleteTransactionSplit(i)} /> ))} - + + + {translate('transaction_form_new_split_button')} + + - + + {translate('transaction_form_foreign_currency_label')} + + + ); } -function TransactionFormButtons({ navigation, handleSubmit }) { +function TransactionFormButtons({ handleSubmit }) { const loading = useSelector((state: RootState) => state.loading.effects.transactions.upsertTransaction?.loading); - const error = useSelector((state: RootState) => state.transactions.error); - const success = useSelector((state: RootState) => state.transactions.success); - const dispatch = useDispatch(); - - const goToTransactions = async () => { - navigation.navigate('Transactions', { - screen: 'TransactionsScreen', - merge: true, - params: { - forceRefresh: true, - }, - }); - }; return ( - - {success && !loading && ( - - )} - {error !== '' && !loading && ( - - )} - - + + + + {translate('transaction_form_submit_button')} + + ); } @@ -153,10 +116,6 @@ export default function TransactionForm({ useEffect(() => { dispatch.transactions.resetTransaction({ splits, title }); - - return () => { - dispatch.transactions.resetStatus(); - }; }, []); const handleSubmit = async () => { @@ -164,15 +123,21 @@ export default function TransactionForm({ try { await dispatch.transactions.upsertTransaction({ id }); Haptics.notificationAsync(Haptics.NotificationFeedbackType.Success).catch(); - dispatch.transactions.setSuccessStatus(); } catch (e) { Haptics.notificationAsync(Haptics.NotificationFeedbackType.Error).catch(); - if (e.response) { - dispatch.transactions.setErrorStatus(e.response.data.message); - } } }; + useLayoutEffect(() => { + navigation.setOptions({ + headerRight: () => ( + + {translate('transaction_form_submit_button')} + + ), + }); + }, [navigation, dispatch, title, splits, id]); + return useMemo( () => ( - + diff --git a/src/components/Forms/TransactionSplitForm.tsx b/src/components/Forms/TransactionSplitForm.tsx index 08d71e6..2538be4 100644 --- a/src/components/Forms/TransactionSplitForm.tsx +++ b/src/components/Forms/TransactionSplitForm.tsx @@ -1,27 +1,27 @@ import React, { useState } from 'react'; import moment from 'moment/moment'; import { Platform } from 'react-native'; -import { - Button, - FormControl, - HStack, - IconButton, - Input, - Text, - TextArea, - VStack, -} from 'native-base'; import * as Haptics from 'expo-haptics'; -import { AntDesign } from '@expo/vector-icons'; +import { AntDesign, Ionicons } from '@expo/vector-icons'; import DateTimePicker from '@react-native-community/datetimepicker'; -import { useDispatch } from 'react-redux'; +import { useDispatch, useSelector } from 'react-redux'; import { getLocales } from 'expo-localization'; import translate from '../../i18n/locale'; import { useThemeColors } from '../../lib/common'; import AutocompleteField from './Fields/AutocompleteField'; -import { RootDispatch } from '../../store'; +import { RootDispatch, RootState } from '../../store'; import { TransactionSplitType, types } from '../../models/transactions'; +import { + AText, + AInput, + AIconButton, + ALabel, + AStack, + AFormView, + AButton, AStackFlex, APressable, +} from '../UI/ALibrary'; +import ForeignCurrencyField from './Fields/ForeignCurrencyField'; export default function TransactionSplitForm({ index, @@ -31,6 +31,7 @@ export default function TransactionSplitForm({ transaction, }) { const [locale] = getLocales(); + const displayForeignCurrency = useSelector((state: RootState) => state.configuration.displayForeignCurrency); const dispatch = useDispatch(); const { colorScheme, colors } = useThemeColors(); const [formData, setData] = useState({ @@ -80,139 +81,118 @@ export default function TransactionSplitForm({ }; const deleteBtn = (fields: string[]) => ( - } onPress={() => resetTransaction(fields)} /> ); return ( - {index !== 0 && ( - - + {index + 1} / {total} - - + } onPress={handleDelete} /> - + )} {isNew && ( - - - - {types.map(({ type, name }) => ( - - ))} - - - + + + {types.map(({ type, name }, i) => ( + { + if (type !== formData.type) { + setTransaction({ + ...formData, + type, + }); + Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light).catch(); + } + }} + style={{ + width: 115, + height: 40, + borderTopLeftRadius: (i === 0) ? 10 : 0, + borderBottomLeftRadius: (i === 0) ? 10 : 0, + borderTopRightRadius: (i === 2) ? 10 : 0, + borderBottomRightRadius: (i === 2) ? 10 : 0, + justifyContent: 'center', + backgroundColor: type !== formData.type ? colors.tileBackgroundColor : colorItemTypes[formData.type], + borderWidth: 1, + borderLeftWidth: (i === 1 || i === 2) ? 0 : 1, + borderColor: colors.listBorderColor, + }} + > + {name} + + ))} + + )} - - + + {translate('transaction_form_amount_label')} - - + setTransaction({ ...formData, amount: value, })} InputRightElement={deleteBtn(['amount'])} - InputLeftElement={({`${formData.currencyCode} ${formData.currencySymbol}`})} + InputLeftElement={({`${formData.currencySymbol}`})} /> - + - - + {displayForeignCurrency && ( + + {translate('transaction_form_foreign_amount_label')} - - setTransaction({ - ...formData, - foreignCurrencyId: autocomplete.id, - foreignCurrencyCode: autocomplete.code, - })} - InputRightElement={null} - routeApi="currencies-with-code" - /> - - + setTransaction({ + ...formData, + foreignCurrencyId: currencyId, + })} + /> + )} /> - {(formData.foreignCurrencyId && formData.foreignAmount === '') && {translate('transaction_form_foreign_amount_error')}} - + + )} - - + + {translate('transaction_form_date_label')} - - {showDatePicker && ( + + + {showDatePicker && ( { setShowDatePicker(Platform.OS === 'ios'); @@ -248,13 +239,13 @@ export default function TransactionSplitForm({ }); }} /> - )} - {showTimePicker && Platform.OS === 'android' && ( + )} + {showTimePicker && Platform.OS === 'android' && ( { setShowTimePicker(false); @@ -264,26 +255,37 @@ export default function TransactionSplitForm({ }); }} /> - )} - {Platform.OS === 'android' && ( - - - - - )} - + {moment(formData.date).format('hh:mm a')} + + + )} + + setTransaction({ + onChangeText={(value: string) => setTransaction({ ...formData, budgetName: value, })} @@ -379,7 +381,6 @@ export default function TransactionSplitForm({ - - + + {translate('transaction_form_notes_label')} - -