Hide production screen and update minor packages.

This commit is contained in:
Patrick Fic
2025-10-28 13:27:56 -07:00
parent a207d5dff7
commit 38c2b0af5a
6 changed files with 381 additions and 375 deletions

View File

@@ -62,6 +62,15 @@ function AuthenticatedLayout() {
),
})}
</NativeTabs.Trigger>
{/* <NativeTabs.Trigger name="production">
{Platform.select({
ios: <Icon sf="gear" drawable="custom_android_drawable" />,
android: (
<Icon src={<VectorIcon family={MaterialIcons} name="start" />} />
),
})}
<Label>{t("production.titles.production")}</Label>
</NativeTabs.Trigger> */}
<NativeTabs.Trigger name="settings">
{Platform.select({
ios: <Icon sf="gear" drawable="custom_android_drawable" />,

View File

@@ -0,0 +1,28 @@
import { Stack, useLocalSearchParams } from "expo-router";
import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
const mapDispatchToProps = (dispatch) => ({});
export default connect(null, mapDispatchToProps)(JobsStack);
function JobsStack({}) {
const { t } = useTranslation();
const { jobId } = useLocalSearchParams();
return (
<Stack
screenOptions={{
headerTitleStyle: {
fontWeight: "bold",
},
}}
>
<Stack.Screen
name="index"
options={{
headerShown: false,
}}
/>
</Stack>
);
}

146
app/production/index.tsx Normal file
View File

@@ -0,0 +1,146 @@
import React from "react";
import { Alert, StyleSheet, Text, View } from "react-native";
import { GestureHandlerRootView } from "react-native-gesture-handler";
import {
Draggable,
Droppable,
DropProvider,
} from "react-native-reanimated-dnd";
import { SafeAreaView } from "react-native-safe-area-context";
export default function DragDropExample() {
const handleDrop = (data: any, zoneId: string) => {
Alert.alert("Item Dropped", `"${data.title}" dropped in ${zoneId}`);
};
return (
<SafeAreaView style={{ flex: 1 }}>
<GestureHandlerRootView style={styles.container}>
<DropProvider>
<View style={styles.content}>
{/* Drop Zones */}
<View style={styles.dropZonesSection}>
<Text style={styles.sectionTitle}>Drop Zones</Text>
<Droppable
onDrop={(data) => handleDrop(data, "Zone 1")}
activeStyle={styles.dropZoneActive}
style={styles.droppable}
>
<View style={[styles.dropZoneBlue, styles.dropZone]}>
<Text style={styles.dropZoneText}>🎯 Zone 1</Text>
<Text style={styles.dropZoneSubtext}>Drop here</Text>
</View>
</Droppable>
<Droppable
onDrop={(data) => handleDrop(data, "Zone 2")}
activeStyle={styles.dropZoneActive}
style={styles.droppable}
>
<View style={[styles.dropZone, styles.dropZoneGreen]}>
<Text style={styles.dropZoneText}>🎯 Zone 2</Text>
<Text style={styles.dropZoneSubtext}>Drop here</Text>
</View>
</Droppable>
</View>
{/* Draggable Item */}
<View style={styles.draggableSection}>
<Text style={styles.sectionTitle}>Draggable Item</Text>
<Draggable data={{ id: "1", title: "Task Item" }}>
<View style={styles.draggableItem}>
<Text style={styles.itemText}>📦 Drag me to a zone</Text>
</View>
</Draggable>
</View>
</View>
</DropProvider>
</GestureHandlerRootView>
</SafeAreaView>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: "#000000",
},
content: {
flex: 1,
padding: 20,
justifyContent: "space-between",
},
sectionTitle: {
color: "#FFFFFF",
fontSize: 18,
fontWeight: "700",
marginBottom: 20,
textAlign: "center",
},
draggableSection: {
alignItems: "center",
paddingVertical: 40,
},
draggableItem: {
padding: 20,
backgroundColor: "#1C1C1E",
borderRadius: 12,
borderWidth: 1,
borderColor: "#3A3A3C",
shadowColor: "#000",
shadowOffset: { width: 0, height: 2 },
shadowOpacity: 0.25,
shadowRadius: 4,
elevation: 3,
},
itemText: {
color: "#FFFFFF",
fontSize: 16,
fontWeight: "600",
textAlign: "center",
},
dropZonesSection: {
flex: 1,
paddingVertical: 40,
},
droppable: {
marginBottom: 20,
overflow: "hidden",
borderRadius: 16,
},
dropZone: {
height: 140,
borderWidth: 2,
borderStyle: "dashed",
borderRadius: 16,
justifyContent: "center",
alignItems: "center",
padding: 20,
},
dropZoneBlue: {
borderColor: "#58a6ff",
backgroundColor: "rgba(88, 166, 255, 0.08)",
},
dropZoneGreen: {
borderColor: "#3fb950",
backgroundColor: "rgba(63, 185, 80, 0.08)",
},
dropZoneActive: {
backgroundColor: "rgba(255, 255, 255, 0.1)",
borderStyle: "solid",
transform: [{ scale: 1.02 }],
},
dropZoneText: {
color: "#FFFFFF",
fontSize: 18,
fontWeight: "600",
textAlign: "center",
marginBottom: 8,
},
dropZoneSubtext: {
color: "#8E8E93",
fontSize: 14,
textAlign: "center",
},
});

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

557
package-lock.json generated
View File

@@ -12,13 +12,13 @@
"@expo/vector-icons": "^15.0.2",
"@react-native-async-storage/async-storage": "2.2.0",
"@react-native-vector-icons/material-design-icons": "^12.3.0",
"@react-navigation/bottom-tabs": "^7.4.9",
"@react-navigation/bottom-tabs": "^7.4.0",
"@react-navigation/elements": "^2.6.5",
"@react-navigation/native": "^7.1.18",
"@react-navigation/native": "^7.1.8",
"@reduxjs/toolkit": "^2.9.1",
"axios": "^1.12.2",
"dinero.js": "^1.9.1",
"expo": "~54.0.18",
"expo": "54.0.20",
"expo-application": "~7.0.7",
"expo-constants": "~18.0.10",
"expo-dev-client": "~6.0.16",
@@ -52,17 +52,17 @@
"react": "19.1.0",
"react-dom": "19.1.0",
"react-i18next": "^16.1.4",
"react-native": "0.81.4",
"react-native": "0.81.5",
"react-native-gesture-handler": "~2.28.0",
"react-native-image-viewing": "^0.2.2",
"react-native-paper": "^5.14.5",
"react-native-reanimated": "~4.1.3",
"react-native-reanimated-dnd": "^1.1.0",
"react-native-safe-area-context": "~5.6.1",
"react-native-screens": "~4.17.1",
"react-native-screens": "~4.16.0",
"react-native-tab-view": "4.1.3",
"react-native-web": "~0.21.2",
"react-native-worklets": "0.6.1",
"react-native-worklets": "0.5.1",
"react-redux": "^9.2.0",
"redux": "^5.0.1",
"redux-logger": "^3.0.6",
@@ -71,7 +71,7 @@
"reselect": "^5.1.1"
},
"devDependencies": {
"@types/react": "~19.2.2",
"@types/react": "~19.1.10",
"eslint": "^9.38.0",
"eslint-config-expo": "~10.0.0",
"typescript": "~5.9.3"
@@ -2744,12 +2744,6 @@
"expo": "*"
}
},
"node_modules/@expo/prebuild-config/node_modules/@react-native/normalize-colors": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.81.5.tgz",
"integrity": "sha512-0HuJ8YtqlTVRXGZuGeBejLE04wSQsibpTI+RGOyVqxZvgtlLLC/Ssw0UmbHhT4lYMp2fhdtvKZSs5emWB1zR/g==",
"license": "MIT"
},
"node_modules/@expo/prebuild-config/node_modules/semver": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
@@ -4679,9 +4673,9 @@
}
},
"node_modules/@react-native/assets-registry": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.81.4.tgz",
"integrity": "sha512-AMcDadefBIjD10BRqkWw+W/VdvXEomR6aEZ0fhQRAv7igrBzb4PTn4vHKYg+sUK0e3wa74kcMy2DLc/HtnGcMA==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.81.5.tgz",
"integrity": "sha512-705B6x/5Kxm1RKRvSv0ADYWm5JOnoiQ1ufW7h8uu2E6G9Of/eE6hP/Ivw3U5jI16ERqZxiKQwk34VJbB0niX9w==",
"license": "MIT",
"engines": {
"node": ">= 20.19.4"
@@ -4700,27 +4694,6 @@
"node": ">= 20.19.4"
}
},
"node_modules/@react-native/babel-plugin-codegen/node_modules/@react-native/codegen": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.81.5.tgz",
"integrity": "sha512-a2TDA03Up8lpSa9sh5VRGCQDXgCTOyDOFH+aqyinxp1HChG8uk89/G+nkJ9FPd0rqgi25eCTR16TWdS3b+fA6g==",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.25.2",
"@babel/parser": "^7.25.3",
"glob": "^7.1.1",
"hermes-parser": "0.29.1",
"invariant": "^2.2.4",
"nullthrows": "^1.1.1",
"yargs": "^17.6.2"
},
"engines": {
"node": ">= 20.19.4"
},
"peerDependencies": {
"@babel/core": "*"
}
},
"node_modules/@react-native/babel-preset": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.81.5.tgz",
@@ -4781,9 +4754,9 @@
}
},
"node_modules/@react-native/codegen": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.81.4.tgz",
"integrity": "sha512-LWTGUTzFu+qOQnvkzBP52B90Ym3stZT8IFCzzUrppz8Iwglg83FCtDZAR4yLHI29VY/x/+pkcWAMCl3739XHdw==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.81.5.tgz",
"integrity": "sha512-a2TDA03Up8lpSa9sh5VRGCQDXgCTOyDOFH+aqyinxp1HChG8uk89/G+nkJ9FPd0rqgi25eCTR16TWdS3b+fA6g==",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.25.2",
@@ -4802,12 +4775,12 @@
}
},
"node_modules/@react-native/community-cli-plugin": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.81.4.tgz",
"integrity": "sha512-8mpnvfcLcnVh+t1ok6V9eozWo8Ut+TZhz8ylJ6gF9d6q9EGDQX6s8jenan5Yv/pzN4vQEKI4ib2pTf/FELw+SA==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.81.5.tgz",
"integrity": "sha512-yWRlmEOtcyvSZ4+OvqPabt+NS36vg0K/WADTQLhrYrm9qdZSuXmq8PmdJWz/68wAqKQ+4KTILiq2kjRQwnyhQw==",
"license": "MIT",
"dependencies": {
"@react-native/dev-middleware": "0.81.4",
"@react-native/dev-middleware": "0.81.5",
"debug": "^4.4.0",
"invariant": "^2.2.4",
"metro": "^0.83.1",
@@ -4844,22 +4817,22 @@
}
},
"node_modules/@react-native/debugger-frontend": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.81.4.tgz",
"integrity": "sha512-SU05w1wD0nKdQFcuNC9D6De0ITnINCi8MEnx9RsTD2e4wN83ukoC7FpXaPCYyP6+VjFt5tUKDPgP1O7iaNXCqg==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.81.5.tgz",
"integrity": "sha512-bnd9FSdWKx2ncklOetCgrlwqSGhMHP2zOxObJbOWXoj7GHEmih4MKarBo5/a8gX8EfA1EwRATdfNBQ81DY+h+w==",
"license": "BSD-3-Clause",
"engines": {
"node": ">= 20.19.4"
}
},
"node_modules/@react-native/dev-middleware": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.81.4.tgz",
"integrity": "sha512-hu1Wu5R28FT7nHXs2wWXvQ++7W7zq5GPY83llajgPlYKznyPLAY/7bArc5rAzNB7b0kwnlaoPQKlvD/VP9LZug==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.81.5.tgz",
"integrity": "sha512-WfPfZzboYgo/TUtysuD5xyANzzfka8Ebni6RIb2wDxhb56ERi7qDrE4xGhtPsjCL4pQBXSVxyIlCy0d8I6EgGA==",
"license": "MIT",
"dependencies": {
"@isaacs/ttlcache": "^1.4.1",
"@react-native/debugger-frontend": "0.81.4",
"@react-native/debugger-frontend": "0.81.5",
"chrome-launcher": "^0.15.2",
"chromium-edge-launcher": "^0.2.0",
"connect": "^3.6.5",
@@ -4884,52 +4857,29 @@
}
},
"node_modules/@react-native/gradle-plugin": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.81.4.tgz",
"integrity": "sha512-T7fPcQvDDCSusZFVSg6H1oVDKb/NnVYLnsqkcHsAF2C2KGXyo3J7slH/tJAwNfj/7EOA2OgcWxfC1frgn9TQvw==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.81.5.tgz",
"integrity": "sha512-hORRlNBj+ReNMLo9jme3yQ6JQf4GZpVEBLxmTXGGlIL78MAezDZr5/uq9dwElSbcGmLEgeiax6e174Fie6qPLg==",
"license": "MIT",
"engines": {
"node": ">= 20.19.4"
}
},
"node_modules/@react-native/js-polyfills": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.81.4.tgz",
"integrity": "sha512-sr42FaypKXJHMVHhgSbu2f/ZJfrLzgaoQ+HdpRvKEiEh2mhFf6XzZwecyLBvWqf2pMPZa+CpPfNPiejXjKEy8w==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.81.5.tgz",
"integrity": "sha512-fB7M1CMOCIUudTRuj7kzxIBTVw2KXnsgbQ6+4cbqSxo8NmRRhA0Ul4ZUzZj3rFd3VznTL4Brmocv1oiN0bWZ8w==",
"license": "MIT",
"engines": {
"node": ">= 20.19.4"
}
},
"node_modules/@react-native/normalize-colors": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.81.4.tgz",
"integrity": "sha512-9nRRHO1H+tcFqjb9gAM105Urtgcanbta2tuqCVY0NATHeFPDEAB7gPyiLxCHKMi1NbhP6TH0kxgSWXKZl1cyRg==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.81.5.tgz",
"integrity": "sha512-0HuJ8YtqlTVRXGZuGeBejLE04wSQsibpTI+RGOyVqxZvgtlLLC/Ssw0UmbHhT4lYMp2fhdtvKZSs5emWB1zR/g==",
"license": "MIT"
},
"node_modules/@react-native/virtualized-lists": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.81.4.tgz",
"integrity": "sha512-hBM+rMyL6Wm1Q4f/WpqGsaCojKSNUBqAXLABNGoWm1vabZ7cSnARMxBvA/2vo3hLcoR4v7zDK8tkKm9+O0LjVA==",
"license": "MIT",
"dependencies": {
"invariant": "^2.2.4",
"nullthrows": "^1.1.1"
},
"engines": {
"node": ">= 20.19.4"
},
"peerDependencies": {
"@types/react": "^19.1.0",
"react": "*",
"react-native": "*"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
}
}
},
"node_modules/@react-navigation/bottom-tabs": {
"version": "7.4.9",
"resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-7.4.9.tgz",
@@ -5290,9 +5240,9 @@
}
},
"node_modules/@types/react": {
"version": "19.2.2",
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.2.tgz",
"integrity": "sha512-6mDvHUFSjyT2B2yeNx2nUgMxh9LtOWvkhIU3uePn2I2oyNymUAX1NIsdgviM4CH+JSrp2D2hsMvJOkxY+0wNRA==",
"version": "19.1.17",
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.17.tgz",
"integrity": "sha512-Qec1E3mhALmaspIrhWt9jkQMNdw6bReVu64mjvhbhq2NFPftLPVr+l1SZgmw/66WwBNpDh7ao5AT6gF5v41PFA==",
"license": "MIT",
"dependencies": {
"csstype": "^3.0.2"
@@ -6778,39 +6728,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/caller-callsite": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
"integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==",
"license": "MIT",
"dependencies": {
"callsites": "^2.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/caller-path": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz",
"integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==",
"license": "MIT",
"dependencies": {
"caller-callsite": "^2.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/callsites": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
"integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==",
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/camelcase": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
@@ -7151,43 +7068,6 @@
"url": "https://opencollective.com/core-js"
}
},
"node_modules/cosmiconfig": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz",
"integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==",
"license": "MIT",
"dependencies": {
"import-fresh": "^2.0.0",
"is-directory": "^0.3.1",
"js-yaml": "^3.13.1",
"parse-json": "^4.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/cosmiconfig/node_modules/argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"license": "MIT",
"dependencies": {
"sprintf-js": "~1.0.2"
}
},
"node_modules/cosmiconfig/node_modules/js-yaml": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"license": "MIT",
"dependencies": {
"argparse": "^1.0.7",
"esprima": "^4.0.0"
},
"bin": {
"js-yaml": "bin/js-yaml.js"
}
},
"node_modules/cross-fetch": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz",
@@ -7549,15 +7429,6 @@
"node": ">=8"
}
},
"node_modules/error-ex": {
"version": "1.3.4",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz",
"integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==",
"license": "MIT",
"dependencies": {
"is-arrayish": "^0.2.1"
}
},
"node_modules/error-stack-parser": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz",
@@ -8299,9 +8170,9 @@
"license": "MIT"
},
"node_modules/expo": {
"version": "54.0.18",
"resolved": "https://registry.npmjs.org/expo/-/expo-54.0.18.tgz",
"integrity": "sha512-DogRgWOYk9Qk5bfrIKJ7IzXi8PwhbVEl1k3iSC8wddjLBs+sGvemlw+ElUs2FLLgig/bRhjuNFIT4y2awe/VAw==",
"version": "54.0.20",
"resolved": "https://registry.npmjs.org/expo/-/expo-54.0.20.tgz",
"integrity": "sha512-mWHky+H63W60P5Oo+VbtqzF2sLvdaoSSwG57H9rlq1DrgIla++QJZuwJkXXo55lYPymVmkVhwG6FjWYKKylwpw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.20.0",
@@ -8312,7 +8183,7 @@
"@expo/fingerprint": "0.15.2",
"@expo/metro": "~54.1.0",
"@expo/metro-config": "54.0.7",
"@expo/vector-icons": "^15.0.2",
"@expo/vector-icons": "^15.0.3",
"@ungap/structured-clone": "^1.3.0",
"babel-preset-expo": "~54.0.6",
"expo-asset": "~12.0.9",
@@ -8320,7 +8191,7 @@
"expo-file-system": "~19.0.17",
"expo-font": "~14.0.9",
"expo-keep-awake": "~15.0.7",
"expo-modules-autolinking": "3.0.18",
"expo-modules-autolinking": "3.0.19",
"expo-modules-core": "3.0.22",
"pretty-format": "^29.7.0",
"react-refresh": "^0.14.2",
@@ -8594,9 +8465,9 @@
}
},
"node_modules/expo-modules-autolinking": {
"version": "3.0.18",
"resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-3.0.18.tgz",
"integrity": "sha512-zanQWn4QrqJtyYGHUdL6OqjU8LKXIOgqF1PAkpNV33SPNb2ZFMBxM4vB1Y8EvqGeoouV7zRqxgXtXvDkAIFndA==",
"version": "3.0.19",
"resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-3.0.19.tgz",
"integrity": "sha512-tSMYGnfZmAaN77X8iMLiaSgbCFnA7eh6s2ac09J2N2N0Rcf2RCE27jg0c0XenTMTWUcM4QvLhsNHof/WtlKqPw==",
"license": "MIT",
"dependencies": {
"@expo/spawn-async": "^1.7.2",
@@ -8825,12 +8696,6 @@
}
}
},
"node_modules/expo-system-ui/node_modules/@react-native/normalize-colors": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.81.5.tgz",
"integrity": "sha512-0HuJ8YtqlTVRXGZuGeBejLE04wSQsibpTI+RGOyVqxZvgtlLLC/Ssw0UmbHhT4lYMp2fhdtvKZSs5emWB1zR/g==",
"license": "MIT"
},
"node_modules/expo-updates": {
"version": "29.0.12",
"resolved": "https://registry.npmjs.org/expo-updates/-/expo-updates-29.0.12.tgz",
@@ -8994,46 +8859,6 @@
}
}
},
"node_modules/expo/node_modules/@react-native/debugger-frontend": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.81.5.tgz",
"integrity": "sha512-bnd9FSdWKx2ncklOetCgrlwqSGhMHP2zOxObJbOWXoj7GHEmih4MKarBo5/a8gX8EfA1EwRATdfNBQ81DY+h+w==",
"license": "BSD-3-Clause",
"engines": {
"node": ">= 20.19.4"
}
},
"node_modules/expo/node_modules/@react-native/dev-middleware": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.81.5.tgz",
"integrity": "sha512-WfPfZzboYgo/TUtysuD5xyANzzfka8Ebni6RIb2wDxhb56ERi7qDrE4xGhtPsjCL4pQBXSVxyIlCy0d8I6EgGA==",
"license": "MIT",
"dependencies": {
"@isaacs/ttlcache": "^1.4.1",
"@react-native/debugger-frontend": "0.81.5",
"chrome-launcher": "^0.15.2",
"chromium-edge-launcher": "^0.2.0",
"connect": "^3.6.5",
"debug": "^4.4.0",
"invariant": "^2.2.4",
"nullthrows": "^1.1.1",
"open": "^7.0.3",
"serve-static": "^1.16.2",
"ws": "^6.2.3"
},
"engines": {
"node": ">= 20.19.4"
}
},
"node_modules/expo/node_modules/@react-native/dev-middleware/node_modules/ws": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz",
"integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==",
"license": "MIT",
"dependencies": {
"async-limiter": "~1.0.0"
}
},
"node_modules/expo/node_modules/glob": {
"version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
@@ -10146,28 +9971,6 @@
"url": "https://opencollective.com/immer"
}
},
"node_modules/import-fresh": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz",
"integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==",
"license": "MIT",
"dependencies": {
"caller-path": "^2.0.0",
"resolve-from": "^3.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/import-fresh/node_modules/resolve-from": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
"integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -10273,12 +10076,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
"license": "MIT"
},
"node_modules/is-async-function": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz",
@@ -10417,15 +10214,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/is-directory": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz",
"integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==",
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-docker": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
@@ -11030,12 +10818,6 @@
"dev": true,
"license": "MIT"
},
"node_modules/json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"license": "MIT"
},
"node_modules/json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
@@ -11632,9 +11414,9 @@
}
},
"node_modules/metro": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro/-/metro-0.83.1.tgz",
"integrity": "sha512-UGKepmTxoGD4HkQV8YWvpvwef7fUujNtTgG4Ygf7m/M0qjvb9VuDmAsEU+UdriRX7F61pnVK/opz89hjKlYTXA==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro/-/metro-0.83.3.tgz",
"integrity": "sha512-+rP+/GieOzkt97hSJ0MrPOuAH/jpaS21ZDvL9DJ35QYRDlQcwzcvUlGUf79AnQxq/2NPiS/AULhhM4TKutIt8Q==",
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.24.7",
@@ -11652,24 +11434,24 @@
"error-stack-parser": "^2.0.6",
"flow-enums-runtime": "^0.0.6",
"graceful-fs": "^4.2.4",
"hermes-parser": "0.29.1",
"hermes-parser": "0.32.0",
"image-size": "^1.0.2",
"invariant": "^2.2.4",
"jest-worker": "^29.7.0",
"jsc-safe-url": "^0.2.2",
"lodash.throttle": "^4.1.1",
"metro-babel-transformer": "0.83.1",
"metro-cache": "0.83.1",
"metro-cache-key": "0.83.1",
"metro-config": "0.83.1",
"metro-core": "0.83.1",
"metro-file-map": "0.83.1",
"metro-resolver": "0.83.1",
"metro-runtime": "0.83.1",
"metro-source-map": "0.83.1",
"metro-symbolicate": "0.83.1",
"metro-transform-plugins": "0.83.1",
"metro-transform-worker": "0.83.1",
"metro-babel-transformer": "0.83.3",
"metro-cache": "0.83.3",
"metro-cache-key": "0.83.3",
"metro-config": "0.83.3",
"metro-core": "0.83.3",
"metro-file-map": "0.83.3",
"metro-resolver": "0.83.3",
"metro-runtime": "0.83.3",
"metro-source-map": "0.83.3",
"metro-symbolicate": "0.83.3",
"metro-transform-plugins": "0.83.3",
"metro-transform-worker": "0.83.3",
"mime-types": "^2.1.27",
"nullthrows": "^1.1.1",
"serialize-error": "^2.1.0",
@@ -11686,39 +11468,54 @@
}
},
"node_modules/metro-babel-transformer": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.83.1.tgz",
"integrity": "sha512-r3xAD3964E8dwDBaZNSO2aIIvWXjIK80uO2xo0/pi3WI8XWT9h5SCjtGWtMtE5PRWw+t20TN0q1WMRsjvhC1rQ==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.83.3.tgz",
"integrity": "sha512-1vxlvj2yY24ES1O5RsSIvg4a4WeL7PFXgKOHvXTXiW0deLvQr28ExXj6LjwCCDZ4YZLhq6HddLpZnX4dEdSq5g==",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.25.2",
"flow-enums-runtime": "^0.0.6",
"hermes-parser": "0.29.1",
"hermes-parser": "0.32.0",
"nullthrows": "^1.1.1"
},
"engines": {
"node": ">=20.19.4"
}
},
"node_modules/metro-babel-transformer/node_modules/hermes-estree": {
"version": "0.32.0",
"resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.32.0.tgz",
"integrity": "sha512-KWn3BqnlDOl97Xe1Yviur6NbgIZ+IP+UVSpshlZWkq+EtoHg6/cwiDj/osP9PCEgFE15KBm1O55JRwbMEm5ejQ==",
"license": "MIT"
},
"node_modules/metro-babel-transformer/node_modules/hermes-parser": {
"version": "0.32.0",
"resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.32.0.tgz",
"integrity": "sha512-g4nBOWFpuiTqjR3LZdRxKUkij9iyveWeuks7INEsMX741f3r9xxrOe8TeQfUxtda0eXmiIFiMQzoeSQEno33Hw==",
"license": "MIT",
"dependencies": {
"hermes-estree": "0.32.0"
}
},
"node_modules/metro-cache": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.83.1.tgz",
"integrity": "sha512-7N/Ad1PHa1YMWDNiyynTPq34Op2qIE68NWryGEQ4TSE3Zy6a8GpsYnEEZE4Qi6aHgsE+yZHKkRczeBgxhnFIxQ==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.83.3.tgz",
"integrity": "sha512-3jo65X515mQJvKqK3vWRblxDEcgY55Sk3w4xa6LlfEXgQ9g1WgMh9m4qVZVwgcHoLy0a2HENTPCCX4Pk6s8c8Q==",
"license": "MIT",
"dependencies": {
"exponential-backoff": "^3.1.1",
"flow-enums-runtime": "^0.0.6",
"https-proxy-agent": "^7.0.5",
"metro-core": "0.83.1"
"metro-core": "0.83.3"
},
"engines": {
"node": ">=20.19.4"
}
},
"node_modules/metro-cache-key": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.83.1.tgz",
"integrity": "sha512-ZUs+GD5CNeDLxx5UUWmfg26IL+Dnbryd+TLqTlZnDEgehkIa11kUSvgF92OFfJhONeXzV4rZDRGNXoo6JT+8Gg==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.83.3.tgz",
"integrity": "sha512-59ZO049jKzSmvBmG/B5bZ6/dztP0ilp0o988nc6dpaDsU05Cl1c/lRf+yx8m9WW/JVgbmfO5MziBU559XjI5Zw==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6"
@@ -11728,42 +11525,42 @@
}
},
"node_modules/metro-config": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.83.1.tgz",
"integrity": "sha512-HJhpZx3wyOkux/jeF1o7akFJzZFdbn6Zf7UQqWrvp7gqFqNulQ8Mju09raBgPmmSxKDl4LbbNeigkX0/nKY1QA==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.83.3.tgz",
"integrity": "sha512-mTel7ipT0yNjKILIan04bkJkuCzUUkm2SeEaTads8VfEecCh+ltXchdq6DovXJqzQAXuR2P9cxZB47Lg4klriA==",
"license": "MIT",
"dependencies": {
"connect": "^3.6.5",
"cosmiconfig": "^5.0.5",
"flow-enums-runtime": "^0.0.6",
"jest-validate": "^29.7.0",
"metro": "0.83.1",
"metro-cache": "0.83.1",
"metro-core": "0.83.1",
"metro-runtime": "0.83.1"
"metro": "0.83.3",
"metro-cache": "0.83.3",
"metro-core": "0.83.3",
"metro-runtime": "0.83.3",
"yaml": "^2.6.1"
},
"engines": {
"node": ">=20.19.4"
}
},
"node_modules/metro-core": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.83.1.tgz",
"integrity": "sha512-uVL1eAJcMFd2o2Q7dsbpg8COaxjZBBGaXqO2OHnivpCdfanraVL8dPmY6It9ZeqWLOihUKZ2yHW4b6soVCzH/Q==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.83.3.tgz",
"integrity": "sha512-M+X59lm7oBmJZamc96usuF1kusd5YimqG/q97g4Ac7slnJ3YiGglW5CsOlicTR5EWf8MQFxxjDoB6ytTqRe8Hw==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6",
"lodash.throttle": "^4.1.1",
"metro-resolver": "0.83.1"
"metro-resolver": "0.83.3"
},
"engines": {
"node": ">=20.19.4"
}
},
"node_modules/metro-file-map": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.83.1.tgz",
"integrity": "sha512-Yu429lnexKl44PttKw3nhqgmpBR+6UQ/tRaYcxPeEShtcza9DWakCn7cjqDTQZtWR2A8xSNv139izJMyQ4CG+w==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.83.3.tgz",
"integrity": "sha512-jg5AcyE0Q9Xbbu/4NAwwZkmQn7doJCKGW0SLeSJmzNB9Z24jBe0AL2PHNMy4eu0JiKtNWHz9IiONGZWq7hjVTA==",
"license": "MIT",
"dependencies": {
"debug": "^4.4.0",
@@ -11781,9 +11578,9 @@
}
},
"node_modules/metro-minify-terser": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.83.1.tgz",
"integrity": "sha512-kmooOxXLvKVxkh80IVSYO4weBdJDhCpg5NSPkjzzAnPJP43u6+usGXobkTWxxrAlq900bhzqKek4pBsUchlX6A==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.83.3.tgz",
"integrity": "sha512-O2BmfWj6FSfzBLrNCXt/rr2VYZdX5i6444QJU0fFoc7Ljg+Q+iqebwE3K0eTvkI6TRjELsXk1cjU+fXwAR4OjQ==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6",
@@ -11794,9 +11591,9 @@
}
},
"node_modules/metro-resolver": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.83.1.tgz",
"integrity": "sha512-t8j46kiILAqqFS5RNa+xpQyVjULxRxlvMidqUswPEk5nQVNdlJslqizDm/Et3v/JKwOtQGkYAQCHxP1zGStR/g==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.83.3.tgz",
"integrity": "sha512-0js+zwI5flFxb1ktmR///bxHYg7OLpRpWZlBBruYG8OKYxeMP7SV0xQ/o/hUelrEMdK4LJzqVtHAhBm25LVfAQ==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6"
@@ -11806,9 +11603,9 @@
}
},
"node_modules/metro-runtime": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.83.1.tgz",
"integrity": "sha512-3Ag8ZS4IwafL/JUKlaeM6/CbkooY+WcVeqdNlBG0m4S0Qz0om3rdFdy1y6fYBpl6AwXJwWeMuXrvZdMuByTcRA==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.83.3.tgz",
"integrity": "sha512-JHCJb9ebr9rfJ+LcssFYA2x1qPYuSD/bbePupIGhpMrsla7RCwC/VL3yJ9cSU+nUhU4c9Ixxy8tBta+JbDeZWw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.25.0",
@@ -11819,9 +11616,9 @@
}
},
"node_modules/metro-source-map": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.83.1.tgz",
"integrity": "sha512-De7Vbeo96fFZ2cqmI0fWwVJbtHIwPZv++LYlWSwzTiCzxBDJORncN0LcT48Vi2UlQLzXJg+/CuTAcy7NBVh69A==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.83.3.tgz",
"integrity": "sha512-xkC3qwUBh2psVZgVavo8+r2C9Igkk3DibiOXSAht1aYRRcztEZNFtAMtfSB7sdO2iFMx2Mlyu++cBxz/fhdzQg==",
"license": "MIT",
"dependencies": {
"@babel/traverse": "^7.25.3",
@@ -11829,9 +11626,9 @@
"@babel/types": "^7.25.2",
"flow-enums-runtime": "^0.0.6",
"invariant": "^2.2.4",
"metro-symbolicate": "0.83.1",
"metro-symbolicate": "0.83.3",
"nullthrows": "^1.1.1",
"ob1": "0.83.1",
"ob1": "0.83.3",
"source-map": "^0.5.6",
"vlq": "^1.0.0"
},
@@ -11840,14 +11637,14 @@
}
},
"node_modules/metro-symbolicate": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.83.1.tgz",
"integrity": "sha512-wPxYkONlq/Sv8Ji7vHEx5OzFouXAMQJjpcPW41ySKMLP/Ir18SsiJK2h4YkdKpYrTS1+0xf8oqF6nxCsT3uWtg==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.83.3.tgz",
"integrity": "sha512-F/YChgKd6KbFK3eUR5HdUsfBqVsanf5lNTwFd4Ca7uuxnHgBC3kR/Hba/RGkenR3pZaGNp5Bu9ZqqP52Wyhomw==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6",
"invariant": "^2.2.4",
"metro-source-map": "0.83.1",
"metro-source-map": "0.83.3",
"nullthrows": "^1.1.1",
"source-map": "^0.5.6",
"vlq": "^1.0.0"
@@ -11860,9 +11657,9 @@
}
},
"node_modules/metro-transform-plugins": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.83.1.tgz",
"integrity": "sha512-1Y+I8oozXwhuS0qwC+ezaHXBf0jXW4oeYn4X39XWbZt9X2HfjodqY9bH9r6RUTsoiK7S4j8Ni2C91bUC+sktJQ==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.83.3.tgz",
"integrity": "sha512-eRGoKJU6jmqOakBMH5kUB7VitEWiNrDzBHpYbkBXW7C5fUGeOd2CyqrosEzbMK5VMiZYyOcNFEphvxk3OXey2A==",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.25.2",
@@ -11877,9 +11674,9 @@
}
},
"node_modules/metro-transform-worker": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.83.1.tgz",
"integrity": "sha512-owCrhPyUxdLgXEEEAL2b14GWTPZ2zYuab1VQXcfEy0sJE71iciD7fuMcrngoufh7e7UHDZ56q4ktXg8wgiYA1Q==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.83.3.tgz",
"integrity": "sha512-Ztekew9t/gOIMZX1tvJOgX7KlSLL5kWykl0Iwu2cL2vKMKVALRl1hysyhUw0vjpAvLFx+Kfq9VLjnHIkW32fPA==",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.25.2",
@@ -11887,13 +11684,13 @@
"@babel/parser": "^7.25.3",
"@babel/types": "^7.25.2",
"flow-enums-runtime": "^0.0.6",
"metro": "0.83.1",
"metro-babel-transformer": "0.83.1",
"metro-cache": "0.83.1",
"metro-cache-key": "0.83.1",
"metro-minify-terser": "0.83.1",
"metro-source-map": "0.83.1",
"metro-transform-plugins": "0.83.1",
"metro": "0.83.3",
"metro-babel-transformer": "0.83.3",
"metro-cache": "0.83.3",
"metro-cache-key": "0.83.3",
"metro-minify-terser": "0.83.3",
"metro-source-map": "0.83.3",
"metro-transform-plugins": "0.83.3",
"nullthrows": "^1.1.1"
},
"engines": {
@@ -11906,6 +11703,21 @@
"integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
"license": "MIT"
},
"node_modules/metro/node_modules/hermes-estree": {
"version": "0.32.0",
"resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.32.0.tgz",
"integrity": "sha512-KWn3BqnlDOl97Xe1Yviur6NbgIZ+IP+UVSpshlZWkq+EtoHg6/cwiDj/osP9PCEgFE15KBm1O55JRwbMEm5ejQ==",
"license": "MIT"
},
"node_modules/metro/node_modules/hermes-parser": {
"version": "0.32.0",
"resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.32.0.tgz",
"integrity": "sha512-g4nBOWFpuiTqjR3LZdRxKUkij9iyveWeuks7INEsMX741f3r9xxrOe8TeQfUxtda0eXmiIFiMQzoeSQEno33Hw==",
"license": "MIT",
"dependencies": {
"hermes-estree": "0.32.0"
}
},
"node_modules/micromatch": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
@@ -12220,9 +12032,9 @@
"license": "MIT"
},
"node_modules/ob1": {
"version": "0.83.1",
"resolved": "https://registry.npmjs.org/ob1/-/ob1-0.83.1.tgz",
"integrity": "sha512-ngwqewtdUzFyycomdbdIhFLjePPSOt1awKMUXQ0L7iLHgWEPF3DsCerblzjzfAUHaXuvE9ccJymWQ/4PNNqvnQ==",
"version": "0.83.3",
"resolved": "https://registry.npmjs.org/ob1/-/ob1-0.83.3.tgz",
"integrity": "sha512-egUxXCDwoWG06NGCS5s5AdcpnumHKJlfd3HH06P3m9TEMwwScfcY35wpQxbm9oHof+dM/lVH9Rfyu1elTVelSA==",
"license": "MIT",
"dependencies": {
"flow-enums-runtime": "^0.0.6"
@@ -12629,19 +12441,6 @@
"node": ">=6"
}
},
"node_modules/parse-json": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
"integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
"license": "MIT",
"dependencies": {
"error-ex": "^1.3.1",
"json-parse-better-errors": "^1.0.1"
},
"engines": {
"node": ">=4"
}
},
"node_modules/parse-png": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/parse-png/-/parse-png-2.1.0.tgz",
@@ -13123,19 +12922,19 @@
"license": "MIT"
},
"node_modules/react-native": {
"version": "0.81.4",
"resolved": "https://registry.npmjs.org/react-native/-/react-native-0.81.4.tgz",
"integrity": "sha512-bt5bz3A/+Cv46KcjV0VQa+fo7MKxs17RCcpzjftINlen4ZDUl0I6Ut+brQ2FToa5oD0IB0xvQHfmsg2EDqsZdQ==",
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/react-native/-/react-native-0.81.5.tgz",
"integrity": "sha512-1w+/oSjEXZjMqsIvmkCRsOc8UBYv163bTWKTI8+1mxztvQPhCRYGTvZ/PL1w16xXHneIj/SLGfxWg2GWN2uexw==",
"license": "MIT",
"dependencies": {
"@jest/create-cache-key-function": "^29.7.0",
"@react-native/assets-registry": "0.81.4",
"@react-native/codegen": "0.81.4",
"@react-native/community-cli-plugin": "0.81.4",
"@react-native/gradle-plugin": "0.81.4",
"@react-native/js-polyfills": "0.81.4",
"@react-native/normalize-colors": "0.81.4",
"@react-native/virtualized-lists": "0.81.4",
"@react-native/assets-registry": "0.81.5",
"@react-native/codegen": "0.81.5",
"@react-native/community-cli-plugin": "0.81.5",
"@react-native/gradle-plugin": "0.81.5",
"@react-native/js-polyfills": "0.81.5",
"@react-native/normalize-colors": "0.81.5",
"@react-native/virtualized-lists": "0.81.5",
"abort-controller": "^3.0.0",
"anser": "^1.4.9",
"ansi-regex": "^5.0.0",
@@ -13321,12 +13120,13 @@
}
},
"node_modules/react-native-screens": {
"version": "4.17.1",
"resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-4.17.1.tgz",
"integrity": "sha512-hGArs1kzsokvwxq98vluGlprUw3Q95zEjvZ3U2q28FmvLy25e6jxMclEkgxNtJ0GVJ2gWcFRTXON0EIVvUEd+A==",
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-4.16.0.tgz",
"integrity": "sha512-yIAyh7F/9uWkOzCi1/2FqvNvK6Wb9Y1+Kzn16SuGfN9YFJDTbwlzGRvePCNTOX0recpLQF3kc2FmvMUhyTCH1Q==",
"license": "MIT",
"dependencies": {
"react-freeze": "^1.0.0",
"react-native-is-edge-to-edge": "^1.2.1",
"warn-once": "^0.1.0"
},
"peerDependencies": {
@@ -13381,9 +13181,9 @@
"license": "MIT"
},
"node_modules/react-native-worklets": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/react-native-worklets/-/react-native-worklets-0.6.1.tgz",
"integrity": "sha512-URca8l7c7Uog7gv4mcg9KILdJlnbvwdS5yfXQYf5TDkD2W1VY1sduEKrD+sA3lUPXH/TG1vmXAvNxCNwPMYgGg==",
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/react-native-worklets/-/react-native-worklets-0.5.1.tgz",
"integrity": "sha512-lJG6Uk9YuojjEX/tQrCbcbmpdLCSFxDK1rJlkDhgqkVi1KZzG7cdcBFQRqyNOOzR9Y0CXNuldmtWTGOyM0k0+w==",
"license": "MIT",
"dependencies": {
"@babel/plugin-transform-arrow-functions": "^7.0.0-0",
@@ -13416,6 +13216,29 @@
"node": ">=10"
}
},
"node_modules/react-native/node_modules/@react-native/virtualized-lists": {
"version": "0.81.5",
"resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.81.5.tgz",
"integrity": "sha512-UVXgV/db25OPIvwZySeToXD/9sKKhOdkcWmmf4Jh8iBZuyfML+/5CasaZ1E7Lqg6g3uqVQq75NqIwkYmORJMPw==",
"license": "MIT",
"dependencies": {
"invariant": "^2.2.4",
"nullthrows": "^1.1.1"
},
"engines": {
"node": ">= 20.19.4"
},
"peerDependencies": {
"@types/react": "^19.1.0",
"react": "*",
"react-native": "*"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
}
}
},
"node_modules/react-native/node_modules/commander": {
"version": "12.1.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",

View File

@@ -27,13 +27,13 @@
"@expo/vector-icons": "^15.0.2",
"@react-native-async-storage/async-storage": "2.2.0",
"@react-native-vector-icons/material-design-icons": "^12.3.0",
"@react-navigation/bottom-tabs": "^7.4.9",
"@react-navigation/bottom-tabs": "^7.4.0",
"@react-navigation/elements": "^2.6.5",
"@react-navigation/native": "^7.1.18",
"@react-navigation/native": "^7.1.8",
"@reduxjs/toolkit": "^2.9.1",
"axios": "^1.12.2",
"dinero.js": "^1.9.1",
"expo": "~54.0.18",
"expo": "54.0.20",
"expo-application": "~7.0.7",
"expo-constants": "~18.0.10",
"expo-dev-client": "~6.0.16",
@@ -67,17 +67,17 @@
"react": "19.1.0",
"react-dom": "19.1.0",
"react-i18next": "^16.1.4",
"react-native": "0.81.4",
"react-native": "0.81.5",
"react-native-gesture-handler": "~2.28.0",
"react-native-image-viewing": "^0.2.2",
"react-native-paper": "^5.14.5",
"react-native-reanimated": "~4.1.3",
"react-native-reanimated-dnd": "^1.1.0",
"react-native-safe-area-context": "~5.6.1",
"react-native-screens": "~4.17.1",
"react-native-screens": "~4.16.0",
"react-native-tab-view": "4.1.3",
"react-native-web": "~0.21.2",
"react-native-worklets": "0.6.1",
"react-native-worklets": "0.5.1",
"react-redux": "^9.2.0",
"redux": "^5.0.1",
"redux-logger": "^3.0.6",
@@ -86,7 +86,7 @@
"reselect": "^5.1.1"
},
"devDependencies": {
"@types/react": "~19.2.2",
"@types/react": "~19.1.10",
"eslint": "^9.38.0",
"eslint-config-expo": "~10.0.0",
"typescript": "~5.9.3"