From 801218f692ba4d5e8e8b6ed0970b8adec0c58d8d Mon Sep 17 00:00:00 2001 From: uttam Date: Thu, 16 Jul 2026 11:56:16 +0530 Subject: [PATCH] fix(app: library and import issue --- ReactotronConfig.js | 5 + app/App.tsx | 3 - app/features/addLead/index.ts | 1 - app/features/customers/index.ts | 1 - app/features/dashboard/index.ts | 1 - app/features/estimates/index.ts | 1 - app/features/index.ts | 12 + app/features/invoices/index.ts | 1 - app/features/leads/index.ts | 1 - app/features/login/index.ts | 1 - app/features/profile/index.ts | 1 - app/features/projects/index.ts | 1 - app/features/proposals/index.ts | 1 - app/features/tasks/index.ts | 1 - app/features/tickets/index.ts | 1 - app/interfaces/drawerItem.ts | 6 + app/interfaces/index.ts | 1 + .../{customDraswe.ts => customDrawer.ts} | 0 app/mock-data/index.ts | 10 + app/navigation/authStack.tsx | 6 +- app/navigation/customDrawerContent.tsx | 12 +- app/navigation/drawerStack.tsx | 20 +- app/navigation/tabStack.styles.ts | 68 ++--- app/navigation/tabStack.tsx | 25 +- app/utils/index.ts | 2 + babel.config.js | 23 +- index.js | 4 + package.json | 15 +- tsconfig.json | 27 +- yarn.lock | 242 ++++++++++++++++-- 30 files changed, 388 insertions(+), 105 deletions(-) create mode 100644 ReactotronConfig.js create mode 100644 app/features/index.ts create mode 100644 app/interfaces/drawerItem.ts create mode 100644 app/interfaces/index.ts rename app/mock-data/{customDraswe.ts => customDrawer.ts} (100%) create mode 100644 app/mock-data/index.ts create mode 100644 app/utils/index.ts diff --git a/ReactotronConfig.js b/ReactotronConfig.js new file mode 100644 index 0000000..4d16edf --- /dev/null +++ b/ReactotronConfig.js @@ -0,0 +1,5 @@ +import Reactotron from 'reactotron-react-native'; + +Reactotron.configure() // controls connection & communication settings + .useReactNative() // add all built-in react native plugins + .connect(); // let's connect! \ No newline at end of file diff --git a/app/App.tsx b/app/App.tsx index b20d5c2..fd7cd11 100644 --- a/app/App.tsx +++ b/app/App.tsx @@ -1,7 +1,6 @@ import React, { useEffect } from 'react'; import { StyleSheet, StatusBar } from 'react-native'; import { SafeAreaProvider } from 'react-native-safe-area-context'; -import { GestureHandlerRootView } from 'react-native-gesture-handler'; import { RootNavigator } from './navigation/rootNavigator'; import { ThemeProvider, useTheme } from './theme'; @@ -23,14 +22,12 @@ const ThemedStatusBar = () => { const App = () => { return ( - - ); }; diff --git a/app/features/addLead/index.ts b/app/features/addLead/index.ts index 8433344..26f3965 100644 --- a/app/features/addLead/index.ts +++ b/app/features/addLead/index.ts @@ -1,2 +1 @@ export * from './addLead.screen'; -export * from './addLead.styles' diff --git a/app/features/customers/index.ts b/app/features/customers/index.ts index 3760396..d49261c 100644 --- a/app/features/customers/index.ts +++ b/app/features/customers/index.ts @@ -1,2 +1 @@ export * from './customers.screen'; -export * from './customers.styles' diff --git a/app/features/dashboard/index.ts b/app/features/dashboard/index.ts index 016648c..d327dae 100644 --- a/app/features/dashboard/index.ts +++ b/app/features/dashboard/index.ts @@ -1,2 +1 @@ export * from './dashboard.screen'; -export * from './dashboard.styles' diff --git a/app/features/estimates/index.ts b/app/features/estimates/index.ts index e020367..fc7ff0f 100644 --- a/app/features/estimates/index.ts +++ b/app/features/estimates/index.ts @@ -1,2 +1 @@ export * from './estimates.screen'; -export * from './estimates.styles' diff --git a/app/features/index.ts b/app/features/index.ts new file mode 100644 index 0000000..582440c --- /dev/null +++ b/app/features/index.ts @@ -0,0 +1,12 @@ +export * from './addLead'; +export * from './customers'; +export * from './dashboard'; +export * from './estimates'; +export * from './invoices'; +export * from './leads'; +export * from './login'; +export * from './profile'; +export * from './projects'; +export * from './proposals'; +export * from './tasks'; +export * from './tickets'; diff --git a/app/features/invoices/index.ts b/app/features/invoices/index.ts index 5d4c17b..318a442 100644 --- a/app/features/invoices/index.ts +++ b/app/features/invoices/index.ts @@ -1,2 +1 @@ export * from './invoices.screen'; -export * from './invoices.styles'; diff --git a/app/features/leads/index.ts b/app/features/leads/index.ts index 6691cba..41c0cc8 100644 --- a/app/features/leads/index.ts +++ b/app/features/leads/index.ts @@ -1,2 +1 @@ export * from './leads.screen'; -export * from './leads.styles' diff --git a/app/features/login/index.ts b/app/features/login/index.ts index aa536dc..67776dc 100644 --- a/app/features/login/index.ts +++ b/app/features/login/index.ts @@ -1,2 +1 @@ export * from './login.screen'; -export * from './login.styles' diff --git a/app/features/profile/index.ts b/app/features/profile/index.ts index e71b9d3..ede0d84 100644 --- a/app/features/profile/index.ts +++ b/app/features/profile/index.ts @@ -1,2 +1 @@ export * from './profile.screen'; -export * from './profile.styles'; diff --git a/app/features/projects/index.ts b/app/features/projects/index.ts index c2dea4d..45dfeb9 100644 --- a/app/features/projects/index.ts +++ b/app/features/projects/index.ts @@ -1,2 +1 @@ export * from './projects.screen'; -export * from './projects.styles'; diff --git a/app/features/proposals/index.ts b/app/features/proposals/index.ts index 39cae57..149e160 100644 --- a/app/features/proposals/index.ts +++ b/app/features/proposals/index.ts @@ -1,2 +1 @@ export * from './proposals.screen'; -export * from './proposals.styles'; diff --git a/app/features/tasks/index.ts b/app/features/tasks/index.ts index ddb4f2b..40bd826 100644 --- a/app/features/tasks/index.ts +++ b/app/features/tasks/index.ts @@ -1,2 +1 @@ export * from './tasks.screen'; -export * from './tasks.styles'; diff --git a/app/features/tickets/index.ts b/app/features/tickets/index.ts index 135cd74..7227e7a 100644 --- a/app/features/tickets/index.ts +++ b/app/features/tickets/index.ts @@ -1,2 +1 @@ export * from './tickets.screen'; -export * from './tickets.styles'; diff --git a/app/interfaces/drawerItem.ts b/app/interfaces/drawerItem.ts new file mode 100644 index 0000000..80397b2 --- /dev/null +++ b/app/interfaces/drawerItem.ts @@ -0,0 +1,6 @@ +export interface DrawerItemProps { + label: string; + iconName: string; + focused: boolean; + onPress: () => void; +} \ No newline at end of file diff --git a/app/interfaces/index.ts b/app/interfaces/index.ts new file mode 100644 index 0000000..d9c451d --- /dev/null +++ b/app/interfaces/index.ts @@ -0,0 +1 @@ +export * from './drawerItem'; diff --git a/app/mock-data/customDraswe.ts b/app/mock-data/customDrawer.ts similarity index 100% rename from app/mock-data/customDraswe.ts rename to app/mock-data/customDrawer.ts diff --git a/app/mock-data/index.ts b/app/mock-data/index.ts new file mode 100644 index 0000000..97218f2 --- /dev/null +++ b/app/mock-data/index.ts @@ -0,0 +1,10 @@ +export * from './customDrawer'; +export * from './customers'; +export * from './dashboard'; +export * from './estimates'; +export * from './invoices'; +export * from './leads'; +export * from './projects'; +export * from './proposal'; +export * from './tasks'; +export * from './tickets'; diff --git a/app/navigation/authStack.tsx b/app/navigation/authStack.tsx index 9a0a2ec..66fdc51 100644 --- a/app/navigation/authStack.tsx +++ b/app/navigation/authStack.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { createNativeStackNavigator } from '@react-navigation/native-stack'; -import { LoginScreen } from '../features/login'; -import { route, RouteParams } from '../utils/route'; +import { LoginScreen } from '@features'; +import { route, RouteParams } from '@utils'; export type AuthStackParamList = Pick; @@ -13,4 +13,4 @@ export const AuthStack = () => { ); -} +}; diff --git a/app/navigation/customDrawerContent.tsx b/app/navigation/customDrawerContent.tsx index 42be629..16505b3 100644 --- a/app/navigation/customDrawerContent.tsx +++ b/app/navigation/customDrawerContent.tsx @@ -3,17 +3,11 @@ import { Text, View, TouchableOpacity, ScrollView } from 'react-native'; import { DrawerContentComponentProps } from '@react-navigation/drawer'; import AsyncStorage from '@react-native-async-storage/async-storage'; import Icon from 'react-native-vector-icons/Ionicons'; -import { menuItems } from '../mock-data/customDraswe'; -import { useTheme } from '../theme'; +import { menuItems } from '@mock-data'; +import { useTheme } from '@theme'; +import { DrawerItemProps } from '@interfaces'; import { getStyles } from './customDrawerContent.style'; -interface DrawerItemProps { - label: string; - iconName: string; - focused: boolean; - onPress: () => void; -} - const DrawerItem = ({ label, iconName, focused, onPress }: DrawerItemProps) => { const { theme: colors } = useTheme(); const styles = getStyles(colors); diff --git a/app/navigation/drawerStack.tsx b/app/navigation/drawerStack.tsx index b6cf92f..f84729c 100644 --- a/app/navigation/drawerStack.tsx +++ b/app/navigation/drawerStack.tsx @@ -2,15 +2,17 @@ import React from 'react'; import { createDrawerNavigator } from '@react-navigation/drawer'; import { TabStack } from './tabStack'; import { CustomDrawerContent } from './customDrawerContent'; -import { CustomersScreen } from '../features/customers'; -import { ProposalsScreen } from '../features/proposals'; -import { EstimatesScreen } from '../features/estimates'; -import { InvoicesScreen } from '../features/invoices'; -import { ProjectsScreen } from '../features/projects'; -import { TasksScreen } from '../features/tasks'; -import { TicketsScreen } from '../features/tickets'; -import { route, RouteParams } from '../utils/route'; -import { useTheme } from '../theme'; +import { + CustomersScreen, + ProposalsScreen, + EstimatesScreen, + InvoicesScreen, + ProjectsScreen, + TasksScreen, + TicketsScreen, +} from '@features'; +import { route, RouteParams } from '@utils'; +import { useTheme } from '@theme'; export type DrawerStackParamList = { home: undefined } & Pick< RouteParams, diff --git a/app/navigation/tabStack.styles.ts b/app/navigation/tabStack.styles.ts index 16d1f06..14ee377 100644 --- a/app/navigation/tabStack.styles.ts +++ b/app/navigation/tabStack.styles.ts @@ -1,36 +1,36 @@ import { StyleSheet } from 'react-native'; +import { ThemeColors } from '@theme'; -import { ThemeColors } from '../theme'; - -export const getStyles = (colors: ThemeColors) => StyleSheet.create({ - tabBar: { - backgroundColor: colors.tabBar, - borderTopWidth: 1, - borderTopColor: colors.border, - height: 60, - paddingBottom: 8, - paddingTop: 8, - }, - tabBarLabel: { - fontSize: 11, - fontWeight: '600', - }, - header: { - backgroundColor: colors.header, - borderBottomWidth: 1, - borderBottomColor: colors.border, - elevation: 0, - shadowOpacity: 0, - }, - headerTitle: { - fontSize: 17, - fontWeight: '800', - color: colors.text, - }, - drawerButton: { - paddingHorizontal: 16, - height: '100%', - justifyContent: 'center', - alignItems: 'center', - }, -}); +export const getStyles = (colors: ThemeColors) => + StyleSheet.create({ + tabBar: { + backgroundColor: colors.tabBar, + borderTopWidth: 1, + borderTopColor: colors.border, + height: 60, + paddingBottom: 8, + paddingTop: 8, + }, + tabBarLabel: { + fontSize: 11, + fontWeight: '600', + }, + header: { + backgroundColor: colors.header, + borderBottomWidth: 1, + borderBottomColor: colors.border, + elevation: 0, + shadowOpacity: 0, + }, + headerTitle: { + fontSize: 17, + fontWeight: '800', + color: colors.text, + }, + drawerButton: { + paddingHorizontal: 16, + height: '100%', + justifyContent: 'center', + alignItems: 'center', + }, + }); diff --git a/app/navigation/tabStack.tsx b/app/navigation/tabStack.tsx index ddb43f6..0c6b769 100644 --- a/app/navigation/tabStack.tsx +++ b/app/navigation/tabStack.tsx @@ -3,16 +3,21 @@ import { TouchableOpacity } from 'react-native'; import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; import { DrawerNavigationProp } from '@react-navigation/drawer'; import Icon from 'react-native-vector-icons/Ionicons'; -import { route, RouteParams } from '../utils/route'; -import {DashboardScreen} from '../features/dashboard'; -import { LeadsScreen } from '../features/leads'; -import { AddLeadScreen } from '../features/addLead'; -import { CustomersScreen } from '../features/customers'; -import { ProfileScreen } from '../features/profile'; -import { useTheme } from '../theme'; +import { route, RouteParams } from '@utils'; +import { + DashboardScreen, + LeadsScreen, + AddLeadScreen, + CustomersScreen, + ProfileScreen, +} from '@features'; +import { useTheme } from '@theme'; import { getStyles } from './tabStack.styles'; -export type TabStackParamList = Pick; +export type TabStackParamList = Pick< + RouteParams, + 'dashboard' | 'leads' | 'addLead' | 'customers' | 'profile' +>; const Tab = createBottomTabNavigator(); @@ -57,7 +62,8 @@ export const TabStack = () => { style={styles.drawerButton} activeOpacity={0.7} onPress={() => { - const parentNav = navigation.getParent>(); + const parentNav = + navigation.getParent>(); if (parentNav) { parentNav.openDrawer(); } else { @@ -77,4 +83,3 @@ export const TabStack = () => { ); }; - diff --git a/app/utils/index.ts b/app/utils/index.ts new file mode 100644 index 0000000..50f3037 --- /dev/null +++ b/app/utils/index.ts @@ -0,0 +1,2 @@ +export * from './route'; +export * from './assets'; diff --git a/babel.config.js b/babel.config.js index 3634074..185f6c9 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,6 +1,27 @@ module.exports = { presets: ['module:@react-native/babel-preset'], - plugins: ['react-native-worklets/plugin'], + plugins: [ + [ + 'module-resolver', + { + root: ['./'], + alias: { + '@components': './app/components', + '@features': './app/features', + '@theme': './app/theme', + '@navigation': './app/navigation', + '@store': './app/store', + '@interfaces': './app/interfaces', + '@services': './app/services', + '@utils': './app/utils', + '@app-types': './app/types', + '@api': './app/api', + '@mock-data': './app/mock-data', + }, + }, + ], + 'react-native-worklets/plugin', + ], }; diff --git a/index.js b/index.js index 3187351..06002ff 100644 --- a/index.js +++ b/index.js @@ -2,4 +2,8 @@ import { AppRegistry } from 'react-native'; import App from './app/App'; import { name as appName } from './app.json'; +if (__DEV__) { + require('./ReactotronConfig'); +} + AppRegistry.registerComponent(appName, () => App); diff --git a/package.json b/package.json index 2062d92..bbbb537 100644 --- a/package.json +++ b/package.json @@ -16,17 +16,21 @@ "@react-navigation/native": "^7.3.8", "@react-navigation/native-stack": "^7.17.10", "@react-navigation/stack": "^7.10.11", + "@reduxjs/toolkit": "^2.12.0", "axios": "^1.18.1", "react": "19.2.3", "react-native": "0.86.0", "react-native-config": "^1.6.1", - "react-native-gesture-handler": "^3.0.2", - "react-native-keychain": "^10.0.0", - "react-native-reanimated": "^4.5.1", + "react-native-gesture-handler": "^2.32.0", + "react-native-reanimated": "^4.5.0", "react-native-safe-area-context": "^5.8.0", - "react-native-screens": "^4.26.1", + "react-native-screens": "^4.25.2", "react-native-vector-icons": "^10.3.0", - "react-native-worklets": "^0.10.2" + "react-native-worklets": "^0.10.2", + "react-redux": "^9.3.0", + "reactotron-react-native": "^5.2.0", + "redux-persist": "^6.0.0", + "redux-thunk": "^3.1.0" }, "devDependencies": { "@babel/core": "^7.25.2", @@ -42,6 +46,7 @@ "@types/jest": "^29.5.13", "@types/react": "^19.2.0", "@types/react-test-renderer": "^19.1.0", + "babel-plugin-module-resolver": "^5.0.3", "eslint": "^8.19.0", "jest": "^29.6.3", "prettier": "2.8.8", diff --git a/tsconfig.json b/tsconfig.json index a18a64b..05a3a93 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,32 @@ { "extends": "@react-native/typescript-config", "compilerOptions": { - "types": ["jest"] + "jsx": "react-native", + "types": ["jest"], + "baseUrl": ".", + "paths": { + "@components": ["./app/components"], + "@features": ["./app/features"], + "@features/*": ["./app/features/*"], + "@theme": ["./app/theme"], + "@theme/*": ["./app/theme/*"], + "@api": ["./app/api"], + "@api/*": ["./app/api/*"], + "@store": ["./app/store"], + "@store/*": ["./app/store/*"], + "@interfaces": ["./app/interfaces"], + "@interfaces/*": ["./app/interfaces/*"], + "@navigation": ["./app/navigation"], + "@navigation/*": ["./app/navigation/*"], + "@hooks/*": ["./app/hooks/*"], + "@utils": ["./app/utils"], + "@utils/*": ["./app/utils/*"], + "@services": ["./app/services"], + "@services/*": ["./app/services/*"], + "@mock-data": ["./app/mock-data/index.ts"], + "@mock-data/": ["./app/mock-data"], + "@mock-data/*": ["./app/mock-data/*"] + } }, "include": ["**/*.ts", "**/*.tsx", "**/*.d.ts"], "exclude": ["**/node_modules", "**/Pods"] diff --git a/yarn.lock b/yarn.lock index 83419fb..8852342 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1026,6 +1026,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@egjs/hammerjs@^2.0.17": + version "2.0.17" + resolved "https://registry.yarnpkg.com/@egjs/hammerjs/-/hammerjs-2.0.17.tgz#5dc02af75a6a06e4c2db0202cae38c9263895124" + integrity sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A== + dependencies: + "@types/hammerjs" "^2.0.36" + "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.9.1": version "4.9.1" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz#4e90af67bc51ddee6cdef5284edf572ec376b595" @@ -1792,6 +1799,18 @@ color "^4.2.3" use-latest-callback "^0.2.4" +"@reduxjs/toolkit@^2.12.0": + version "2.12.0" + resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-2.12.0.tgz#e62787503a38561e04bb8f39e29ca8db689590f9" + integrity sha512-KiT+RzZbp6mQET+Mg+h2c97+9j1sNflUxQkIHI7Yuzf6Peu+OYpmkn6nbHWmLLWj+1ZODUJFwGZ7gx3L9R9EOw== + dependencies: + "@standard-schema/spec" "^1.0.0" + "@standard-schema/utils" "^0.3.0" + immer "^11.0.0" + redux "^5.0.1" + redux-thunk "^3.1.0" + reselect "^5.1.0" + "@sideway/address@^4.1.5": version "4.1.5" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5" @@ -1828,6 +1847,16 @@ dependencies: "@sinonjs/commons" "^3.0.0" +"@standard-schema/spec@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@standard-schema/spec/-/spec-1.1.0.tgz#a79b55dbaf8604812f52d140b2c9ab41bc150bb8" + integrity sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w== + +"@standard-schema/utils@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@standard-schema/utils/-/utils-0.3.0.tgz#3d5e608f16c2390c10528e98e59aef6bf73cae7b" + integrity sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g== + "@types/babel__core@^7.1.14": version "7.20.5" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" @@ -1868,6 +1897,11 @@ dependencies: "@types/node" "*" +"@types/hammerjs@^2.0.36": + version "2.0.46" + resolved "https://registry.yarnpkg.com/@types/hammerjs/-/hammerjs-2.0.46.tgz#381daaca1360ff8a7c8dff63f32e69745b9fb1e1" + integrity sha512-ynRvcq6wvqexJ9brDMS4BnBLzmr0e14d6ZJTEShTBWKymQiHwlAyGu0ZPEFI2Fh1U53F7tN9ufClWM5KvqkKOw== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" @@ -1921,6 +1955,11 @@ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== +"@types/use-sync-external-store@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@types/use-sync-external-store/-/use-sync-external-store-0.0.6.tgz#60be8d21baab8c305132eb9cb912ed497852aadc" + integrity sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg== + "@types/yargs-parser@*": version "21.0.3" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" @@ -2323,6 +2362,17 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" +babel-plugin-module-resolver@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-5.0.3.tgz#13f03cf29048ad7e0239e6a1c4dcc669d199f394" + integrity sha512-h8h6H71ZvdLJZxZrYkaeR30BojTaV7O9GfqacY14SNj5CNB8ocL9tydNzTC0JrnNN7vY3eJhwCmkDj7tuEUaqQ== + dependencies: + find-babel-config "^2.1.1" + glob "^9.3.3" + pkg-up "^3.1.0" + reselect "^4.1.7" + resolve "^1.22.8" + babel-plugin-polyfill-corejs2@^0.4.14, babel-plugin-polyfill-corejs2@^0.4.15: version "0.4.17" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz#198f970f1c99a856b466d1187e88ce30bd199d91" @@ -2453,6 +2503,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.2.tgz#0bba2271feb7d458b0d31ad13625aaa4754431e2" + integrity sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA== + dependencies: + balanced-match "^1.0.0" + brace-expansion@^5.0.5: version "5.0.7" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-5.0.7.tgz#1b0e46965b479dad65af737b4a02790a05498337" @@ -2545,9 +2602,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001803: - version "1.0.30001805" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001805.tgz#78d5d5968a69b7ff81af87a96d7ddc7ea6670b1e" - integrity sha512-52noaS3DubycKSXaU30TwPGIp+POyQSUVa5jBEq3vkRkY0kjyb3LQgvhU6WGyCcyXqVLWO0Cw0Q6BSdD0kUfVA== + version "1.0.30001806" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001806.tgz#1bc8e502b723fa393455dfbedd5ccec0c29bb74e" + integrity sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw== chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" @@ -3510,6 +3567,20 @@ finalhandler@1.1.2: statuses "~1.5.0" unpipe "~1.0.0" +find-babel-config@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-2.1.2.tgz#2841b1bfbbbcdb971e1e39df8cbc43dafa901716" + integrity sha512-ZfZp1rQyp4gyuxqt1ZqjFGVeVBvmpURMqdIWXbPRfB97Bf6BzdK/xSIbylEINzQ0kB5tlDQfn9HkNXXWsqTqLg== + dependencies: + json5 "^2.2.3" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -3701,6 +3772,16 @@ glob@^7.1.3, glob@^7.1.4: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^9.3.3: + version "9.3.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-9.3.5.tgz#ca2ed8ca452781a3009685607fdf025a899dfe21" + integrity sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q== + dependencies: + fs.realpath "^1.0.0" + minimatch "^8.0.2" + minipass "^4.2.4" + path-scurry "^1.6.1" + globals@^13.19.0: version "13.24.0" resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" @@ -3815,6 +3896,13 @@ hermes-parser@^0.25.1: dependencies: hermes-estree "0.25.1" +hoist-non-react-statics@^3.3.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" + html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" @@ -3886,6 +3974,11 @@ image-size@^1.0.2: dependencies: queue "6.0.2" +immer@^11.0.0: + version "11.1.11" + resolved "https://registry.yarnpkg.com/immer/-/immer-11.1.11.tgz#bbf825a333ae1b16fd450d8da5f61d54de6a553d" + integrity sha512-qzXuyXAkPySAGYkfsAwodDPWT8Zm7/Uo5BNt4BjhMhG5WlWyZZ4wQqnWwdS8kjlQ1Cwu6gjw3A6+0gTQwlyYtw== + import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.1" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" @@ -4750,6 +4843,14 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -4808,6 +4909,11 @@ loose-envify@^1.0.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -5112,6 +5218,28 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" +minimatch@^8.0.2: + version "8.0.7" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-8.0.7.tgz#954766e22da88a3e0a17ad93b58c15c9d8a579de" + integrity sha512-V+1uQNdzybxa14e/p00HZnQNNcTjnRJjDxg2V8wtkjFctq4M7hXFws4oekyTP0Jebeq7QYtpFyOeBAjc88zvYg== + dependencies: + brace-expansion "^2.0.1" + +minipass@^4.2.4: + version "4.2.8" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.2.8.tgz#f0010f64393ecfc1d1ccb5f582bcaf45f48e1a3a" + integrity sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" + integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== + +mitt@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mitt/-/mitt-3.0.1.tgz#ea36cf0cc30403601ae074c8f77b7092cdab36d1" + integrity sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw== + mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" @@ -5347,7 +5475,7 @@ own-keys@^1.0.1: object-keys "^1.1.1" safe-push-apply "^1.0.0" -p-limit@^2.2.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -5361,6 +5489,13 @@ p-limit@^3.0.2, p-limit@^3.1.0: dependencies: yocto-queue "^0.1.0" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -5402,6 +5537,11 @@ parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== + path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -5422,6 +5562,14 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.6.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" @@ -5449,6 +5597,13 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-up@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" + integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== + dependencies: + find-up "^3.0.0" + possible-typed-array-names@^1.0.0, possible-typed-array-names@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" @@ -5570,7 +5725,7 @@ react-freeze@^1.0.0: resolved "https://registry.yarnpkg.com/react-freeze/-/react-freeze-1.0.4.tgz#cbbea2762b0368b05cbe407ddc9d518c57c6f3ad" integrity sha512-r4F0Sec0BLxWicc7HEyo2x3/2icUTrRmDjaaRyzzn+7aDyFZliszMDOgLVwSnQnYENOlL1o569Ze2HZefk8clA== -react-is@^16.13.1: +react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -5598,12 +5753,14 @@ react-native-drawer-layout@^4.2.7: color "^4.2.3" use-latest-callback "^0.2.4" -react-native-gesture-handler@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-3.0.2.tgz#ea80fd2424d08f8b624977221f0544a5201f6d83" - integrity sha512-XBTgmvr2jh/xrMwlHTV2Z1x6IFUl3zfLxyaCAnvj3GSXK5YlY3ZmiIs57hniPmh3I7RtjPFxtGdRr0i+PzyBrg== +react-native-gesture-handler@^2.32.0: + version "2.32.0" + resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.32.0.tgz#59b8658a4e1586ce6fb0ca0053ac80f6acf7f882" + integrity sha512-uYIMOKlKENORq2SABE+jIjbPU+h5I/sQKcq2v16zRq848nwEp1fWRVwML4QWqijc8UcXJC25o54S8GQd4Mf2OA== dependencies: + "@egjs/hammerjs" "^2.0.17" "@types/react-test-renderer" "^19.1.0" + hoist-non-react-statics "^3.3.0" invariant "^2.2.4" react-native-is-edge-to-edge@^1.3.1: @@ -5611,12 +5768,7 @@ react-native-is-edge-to-edge@^1.3.1: resolved "https://registry.yarnpkg.com/react-native-is-edge-to-edge/-/react-native-is-edge-to-edge-1.3.1.tgz#feb9a6a8faf0874298947edd556e5af22044e139" integrity sha512-NIXU/iT5+ORyCc7p0z2nnlkouYKX425vuU1OEm6bMMtWWR9yvb+Xg5AZmImTKoF9abxCPqrKC3rOZsKzUYgYZA== -react-native-keychain@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-10.0.0.tgz#1de6f54d27b2376deaac4d51883c066f53b7be7b" - integrity sha512-YzPKSAnSzGEJ12IK6CctNLU79T1W15WDrElRQ+1/FsOazGX9ucFPTQwgYe8Dy8jiSEDJKM4wkVa3g4lD2Z+Pnw== - -react-native-reanimated@^4.5.1: +react-native-reanimated@^4.5.0: version "4.5.1" resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-4.5.1.tgz#be81ed3a96bf70baeeccdc24d3350883099b7dd3" integrity sha512-RnMvtDuR+68ig864gAvZCOdZehqhC5rFmMo0kn+ARfgVSTvFeF6IFLBVgMPUu0KwihaapEyW24WRi6nEyy1kSA== @@ -5629,7 +5781,7 @@ react-native-safe-area-context@^5.8.0: resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-5.8.0.tgz#d2fb9fc8e0f0583311e261dc484b95ceb80f8902" integrity sha512-t+ZsAVzY/wWzzx34vqGbo3/as9EEESJdbyZNL7Yg5EYX+toYMtMqFoDDCvqZUi35eeGVsXc6pAaEk4edMwbuCQ== -react-native-screens@^4.26.1: +react-native-screens@^4.25.2: version "4.26.1" resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-4.26.1.tgz#98a580bcb244f93e931391f4af43d405b557efba" integrity sha512-4aaCRSm1CXqjTiph37uFytz5NUxIeiOdYTnetkRoUbEIQhqUa4ShsjQUuKC42Pe+JEBw13YkM05TJXMdlrPy/A== @@ -5701,6 +5853,14 @@ react-native@0.86.0: ws "^7.5.10" yargs "^17.6.2" +react-redux@^9.3.0: + version "9.3.0" + resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-9.3.0.tgz#a30113bb6d95c0a715d54dda4308d450fca6ce09" + integrity sha512-KQopgqFo/p/fgmAs5qz6p5RWaNAzq40WAu7fJIXnQpYxFPbJYtsJPWvGeF2rOBaY/kEuV77AVsX8TsQzKm+A/g== + dependencies: + "@types/use-sync-external-store" "^0.0.6" + use-sync-external-store "^1.4.0" + react-refresh@^0.14.0: version "0.14.2" resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9" @@ -5719,6 +5879,27 @@ react@19.2.3: resolved "https://registry.yarnpkg.com/react/-/react-19.2.3.tgz#d83e5e8e7a258cf6b4fe28640515f99b87cd19b8" integrity sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA== +reactotron-core-client@2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/reactotron-core-client/-/reactotron-core-client-2.10.0.tgz#494e6e56bb018774a0a63c797d48b53ac6986256" + integrity sha512-mOzkc1Rb4sN98OLY/frkP0e1A60bTFjuXUgG8D4m+pwCcjVCWZupdSFV8c5+gqcZBnreoVR20/ko6D8X/7KPvg== + dependencies: + reactotron-core-contract "0.4.0" + +reactotron-core-contract@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/reactotron-core-contract/-/reactotron-core-contract-0.4.0.tgz#7227fe19be6b564c083318798bdf88af943ca995" + integrity sha512-o7m4mSzaUM/IGDc1dBfe0q6rgSi7mZCP7FCs3kHF7AJQwXBOKx/awjVaeNVqz+w6ADiw7X4dtDdQvEROAXdD3w== + +reactotron-react-native@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/reactotron-react-native/-/reactotron-react-native-5.2.0.tgz#e722f92860951b383d17400115825aa3a3b10502" + integrity sha512-7Jd47Eti4wvyn1p5MsQ4mEg2mGG8B5HIZHASjK5RKVfOajEP9Sf4Vume9URG6inB/UQWGpBP6ahCGqcSo4qn3w== + dependencies: + mitt "^3.0.1" + reactotron-core-client "2.10.0" + reactotron-core-contract "0.4.0" + readable-stream@^3.4.0: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" @@ -5728,6 +5909,21 @@ readable-stream@^3.4.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" +redux-persist@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/redux-persist/-/redux-persist-6.0.0.tgz#b4d2972f9859597c130d40d4b146fecdab51b3a8" + integrity sha512-71LLMbUq2r02ng2We9S215LtPu3fY0KgaGE0k8WRgl6RkqxtGfl7HUozz1Dftwsb0D/5mZ8dwAaPbtnzfvbEwQ== + +redux-thunk@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-3.1.0.tgz#94aa6e04977c30e14e892eae84978c1af6058ff3" + integrity sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw== + +redux@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/redux/-/redux-5.0.1.tgz#97fa26881ce5746500125585d5642c77b6e9447b" + integrity sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w== + reflect.getprototypeof@^1.0.10, reflect.getprototypeof@^1.0.9: version "1.0.10" resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" @@ -5805,6 +6001,16 @@ require-main-filename@^2.0.0: resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== +reselect@^4.1.7: + version "4.1.8" + resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524" + integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== + +reselect@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/reselect/-/reselect-5.2.0.tgz#f380ef7664332d26ea06c1cba04bdbbdcaa955f1" + integrity sha512-AgZ3UOZm3YndfrJ4OYjgrT7bmCm/1iqkjvEfH/oYjzh6PD2qw4QuT3jjnXIrpdt4MTpMXclMT3lXbmRY+XRakw== + resolve-cwd@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" @@ -5827,7 +6033,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.3.tgz#41955e6f1b4013b7586f873749a635dea07ebe3f" integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== -resolve@^1.20.0, resolve@^1.22.11: +resolve@^1.20.0, resolve@^1.22.11, resolve@^1.22.8: version "1.22.12" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.12.tgz#f5b2a680897c69c238a13cd16b15671f8b73549f" integrity sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA== @@ -6534,7 +6740,7 @@ use-latest-callback@^0.2.4: resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.2.6.tgz#e5ea752808c86219acc179ace0ae3c1203255e77" integrity sha512-FvRG9i1HSo0wagmX63Vrm8SnlUU3LMM3WyZkQ76RnslpBrX694AdG4A0zQBx2B3ZifFA0yv/BaEHGBnEax5rZg== -use-sync-external-store@^1.5.0: +use-sync-external-store@^1.4.0, use-sync-external-store@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz#b174bfa65cb2b526732d9f2ac0a408027876f32d" integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==