diff --git a/app/package.json b/app/package.json index 733c346..8d86551 100644 --- a/app/package.json +++ b/app/package.json @@ -86,7 +86,7 @@ "tw-animate-css": "^1.4.0", "vaul": "^1.1.2", "zod": "^4.3.6", - "zustand": "^5.0.12" + "zustand": "^5.0.13" }, "devDependencies": { "@capacitor/android": "^8.3.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 616b3f0..bb27740 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,7 +19,7 @@ importers: version: 7.3.0(prisma@7.2.0)(typescript@5.9.3) '@radix-ui/react-slot': specifier: ^1.2.4 - version: 1.2.4(@types/react@19.2.14)(react@19.2.5) + version: 1.2.4(@types/react@19.2.14)(react@19.2.6) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -53,7 +53,7 @@ importers: version: 3.8.3 prisma: specifier: 7.2.0 - version: 7.2.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3) + version: 7.2.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3) typescript: specifier: ^5 version: 5.9.3 @@ -221,7 +221,7 @@ importers: version: 4.10.0(react-dom@19.2.4)(react@19.2.5) recharts: specifier: 3.8.1 - version: 3.8.1(@types/react@19.2.14)(react-dom@19.2.4)(react-is@18.3.1)(react@19.2.5)(redux@5.0.1) + version: 3.8.1(@types/react@19.2.14)(react-dom@19.2.4)(react-is@19.2.6)(react@19.2.5)(redux@5.0.1) rehype-raw: specifier: ^7.0.0 version: 7.0.0 @@ -247,8 +247,8 @@ importers: specifier: ^4.3.6 version: 4.3.6 zustand: - specifier: ^5.0.12 - version: 5.0.12(@types/react@19.2.14)(react@19.2.5) + specifier: ^5.0.13 + version: 5.0.13(@types/react@19.2.14)(react@19.2.5) devDependencies: '@capacitor/android': specifier: ^8.3.1 @@ -303,7 +303,7 @@ importers: version: 6.19.3(prisma@7.8.0)(typescript@5.9.3) prisma: specifier: ^7.8.0 - version: 7.8.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3) + version: 7.8.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3) packages: @@ -1491,7 +1491,7 @@ packages: dependencies: '@emnapi/core': 1.10.0 '@emnapi/runtime': 1.10.0 - '@tybys/wasm-util': 0.10.1 + '@tybys/wasm-util': 0.10.2 dev: true optional: true @@ -1770,7 +1770,7 @@ packages: typescript: optional: true dependencies: - prisma: 7.8.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3) + prisma: 7.8.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3) typescript: 5.9.3 dev: true @@ -1787,7 +1787,7 @@ packages: optional: true dependencies: '@prisma/client-runtime-utils': 7.3.0 - prisma: 7.2.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3) + prisma: 7.2.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3) typescript: 5.9.3 dev: false @@ -2034,7 +2034,24 @@ packages: transitivePeerDependencies: - '@types/react-dom' - /@prisma/studio-core@0.9.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5): + /@prisma/studio-core@0.27.3(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6): + resolution: {integrity: sha512-AADjNFPdsrglxHQVTmHFqv6DuKQZ5WY4p5/gVFY017twvNrSwpLJ9lqUbYYxEu2W7nbvVxTZA8deJ8LseNALsw==} + engines: {node: ^20.19 || ^22.12 || >=24.0, pnpm: '8'} + peerDependencies: + '@types/react': ^18.0.0 || ^19.0.0 + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 + dependencies: + '@radix-ui/react-toggle': 1.1.10(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6) + '@types/react': 19.2.14 + chart.js: 4.5.1 + react: 19.2.6 + react-dom: 19.2.6(react@19.2.6) + transitivePeerDependencies: + - '@types/react-dom' + dev: true + + /@prisma/studio-core@0.9.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6): resolution: {integrity: sha512-xA2zoR/ADu/NCSQuriBKTh6Ps4XjU0bErkEcgMfnSGh346K1VI7iWKnoq1l2DoxUqiddPHIEWwtxJ6xCHG6W7g==} peerDependencies: '@types/react': ^18.0.0 || ^19.0.0 @@ -2042,8 +2059,8 @@ packages: react-dom: ^18.0.0 || ^19.0.0 dependencies: '@types/react': 19.2.14 - react: 19.2.5 - react-dom: 19.2.4(react@19.2.5) + react: 19.2.6 + react-dom: 19.2.6(react@19.2.6) /@radix-ui/number@1.1.1: resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==} @@ -2258,6 +2275,18 @@ packages: '@types/react': 19.2.14 react: 19.2.5 + /@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 19.2.14 + react: 19.2.6 + /@radix-ui/react-context-menu@2.2.16(@types/react-dom@19.2.3)(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5): resolution: {integrity: sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==} peerDependencies: @@ -2725,6 +2754,25 @@ packages: react: 19.2.5 react-dom: 19.2.4(react@19.2.5) + /@radix-ui/react-primitive@2.1.3(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6): + resolution: {integrity: sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + react-dom: 19.2.6(react@19.2.6) + dev: true + /@radix-ui/react-primitive@2.1.4(@types/react-dom@19.2.3)(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5): resolution: {integrity: sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==} peerDependencies: @@ -2954,6 +3002,20 @@ packages: '@types/react': 19.2.14 react: 19.2.5 + /@radix-ui/react-slot@1.2.3(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + dev: true + /@radix-ui/react-slot@1.2.4(@types/react@19.2.14)(react@19.2.5): resolution: {integrity: sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==} peerDependencies: @@ -2968,6 +3030,20 @@ packages: react: 19.2.5 dev: false + /@radix-ui/react-slot@1.2.4(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + dev: false + /@radix-ui/react-switch@1.2.6(@types/react-dom@19.2.3)(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5): resolution: {integrity: sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==} peerDependencies: @@ -3099,6 +3175,27 @@ packages: react: 19.2.5 react-dom: 19.2.4(react@19.2.5) + /@radix-ui/react-toggle@1.1.10(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6): + resolution: {integrity: sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-primitive': 2.1.3(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + react-dom: 19.2.6(react@19.2.6) + dev: true + /@radix-ui/react-tooltip@1.2.8(@types/react-dom@19.2.3)(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5): resolution: {integrity: sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==} peerDependencies: @@ -3157,6 +3254,21 @@ packages: '@types/react': 19.2.14 react: 19.2.5 + /@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.14)(react@19.2.6) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + dev: true + /@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.14)(react@19.2.5): resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} peerDependencies: @@ -3170,6 +3282,20 @@ packages: '@types/react': 19.2.14 react: 19.2.5 + /@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.6) + '@types/react': 19.2.14 + react: 19.2.6 + dev: true + /@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.14)(react@19.2.5): resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} peerDependencies: @@ -3210,6 +3336,19 @@ packages: '@types/react': 19.2.14 react: 19.2.5 + /@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.14)(react@19.2.6): + resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 19.2.14 + react: 19.2.6 + dev: true + /@radix-ui/react-use-previous@1.1.1(@types/react@19.2.14)(react@19.2.5): resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==} peerDependencies: @@ -3621,8 +3760,8 @@ packages: tailwindcss: 4.2.4 dev: true - /@tybys/wasm-util@0.10.1: - resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + /@tybys/wasm-util@0.10.2: + resolution: {integrity: sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==} requiresBuild: true dependencies: tslib: 2.8.1 @@ -7831,7 +7970,7 @@ packages: hasBin: true dev: true - /prisma@7.2.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3): + /prisma@7.2.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3): resolution: {integrity: sha512-jSdHWgWOgFF24+nRyyNRVBIgGDQEsMEF8KPHvhBBg3jWyR9fUAK0Nq9ThUmiGlNgq2FA7vSk/ZoCvefod+a8qg==} engines: {node: ^20.19 || ^22.12 || >=24.0} hasBin: true @@ -7848,7 +7987,7 @@ packages: '@prisma/config': 7.2.0 '@prisma/dev': 0.17.0(typescript@5.9.3) '@prisma/engines': 7.2.0 - '@prisma/studio-core': 0.9.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5) + '@prisma/studio-core': 0.9.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6) mysql2: 3.15.3 postgres: 3.4.7 typescript: 5.9.3 @@ -7886,7 +8025,7 @@ packages: - react - react-dom - /prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5)(typescript@5.9.3): + /prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6)(typescript@5.9.3): resolution: {integrity: sha512-yfN4yrw7HV9kEJhoy1+jgah0jafEIQsf7uWouSsM8MvJtlubsk+kM7AIBWZ8+GJl74Yj3c+nbYqBkMOxtsZ3Lw==} engines: {node: ^20.19 || ^22.12 || >=24.0} hasBin: true @@ -7903,7 +8042,7 @@ packages: '@prisma/config': 7.8.0 '@prisma/dev': 0.24.3(typescript@5.9.3) '@prisma/engines': 7.8.0 - '@prisma/studio-core': 0.27.3(@types/react-dom@19.2.3)(@types/react@19.2.14)(react-dom@19.2.4)(react@19.2.5) + '@prisma/studio-core': 0.27.3(@types/react@19.2.14)(react-dom@19.2.6)(react@19.2.6) mysql2: 3.15.3 postgres: 3.4.7 typescript: 5.9.3 @@ -8008,6 +8147,14 @@ packages: react: 19.2.5 scheduler: 0.27.0 + /react-dom@19.2.6(react@19.2.6): + resolution: {integrity: sha512-0prMI+hvBbPjsWnxDLxlCGyM8PN6UuWjEUCYmZhO67xIV9Xasa/r/vDnq+Xyq4Lo27g8QSbO5YzARu0D1Sps3g==} + peerDependencies: + react: ^19.2.6 + dependencies: + react: 19.2.6 + scheduler: 0.27.0 + /react-hook-form@7.74.0(react@19.2.5): resolution: {integrity: sha512-yR6wHr99p9wFv686jhRWVSFhUvDvNbdUf2dKlbno8/VKOCuoNobDGC6S+M2dua9A9Yo8vpcrp8assIYbsZCQ9g==} engines: {node: '>=18.0.0'} @@ -8021,8 +8168,8 @@ packages: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} dev: true - /react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + /react-is@19.2.6: + resolution: {integrity: sha512-XjBR15BhXuylgWGuslhDKqlSayuqvqBX91BP8pauG8kd1zY8kotkNWbXksTCNRarse4kuGbe2kIY05ARtwNIvw==} dev: false /react-markdown@10.1.0(@types/react@19.2.14)(react@19.2.5): @@ -8132,6 +8279,10 @@ packages: resolution: {integrity: sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==} engines: {node: '>=0.10.0'} + /react@19.2.6: + resolution: {integrity: sha512-sfWGGfavi0xr8Pg0sVsyHMAOziVYKgPLNrS7ig+ivMNb3wbCBw3KxtflsGBAwD3gYQlE/AEZsTLgToRrSCjb0Q==} + engines: {node: '>=0.10.0'} + /read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} @@ -8165,7 +8316,7 @@ packages: engines: {node: '>= 12.13.0'} dev: false - /recharts@3.8.1(@types/react@19.2.14)(react-dom@19.2.4)(react-is@18.3.1)(react@19.2.5)(redux@5.0.1): + /recharts@3.8.1(@types/react@19.2.14)(react-dom@19.2.4)(react-is@19.2.6)(react@19.2.5)(redux@5.0.1): resolution: {integrity: sha512-mwzmO1s9sFL0TduUpwndxCUNoXsBw3u3E/0+A+cLcrSfQitSG62L32N69GhqUrrT5qKcAE3pCGVINC6pqkBBQg==} engines: {node: '>=18'} peerDependencies: @@ -8181,7 +8332,7 @@ packages: immer: 10.2.0 react: 19.2.5 react-dom: 19.2.4(react@19.2.5) - react-is: 18.3.1 + react-is: 19.2.6 react-redux: 9.2.0(@types/react@19.2.14)(react@19.2.5)(redux@5.0.1) reselect: 5.1.1 tiny-invariant: 1.3.3 @@ -9461,8 +9612,8 @@ packages: /zod@4.3.6: resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} - /zustand@5.0.12(@types/react@19.2.14)(react@19.2.5): - resolution: {integrity: sha512-i77ae3aZq4dhMlRhJVCYgMLKuSiZAaUPAct2AksxQ+gOtimhGMdXljRT21P5BNpeT4kXlLIckvkPM029OljD7g==} + /zustand@5.0.13(@types/react@19.2.14)(react@19.2.5): + resolution: {integrity: sha512-efI2tVaVQPqtOh114loML/Z80Y4NP3yc+Ff0fYiZJPauNeWZeIp/bRFD7I9bfmCOYBh/PHxlglQ9+wvlwnPikQ==} engines: {node: '>=12.20.0'} peerDependencies: '@types/react': '>=18.0.0'