diff --git a/package.json b/package.json index 27a4b95..aa3d7b6 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "@arco-design/web-react": "^2.32.2", "@arco-themes/react-arco-pro": "^0.0.7", "@loadable/component": "^5.13.2", + "@reduxjs/toolkit": "^2.9.0", "@turf/turf": "^6.5.0", "@xyflow/react": "^12.8.2", "@xyflow/system": "^0.0.68", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4581fdd..490dc52 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,12 +23,15 @@ importers: '@loadable/component': specifier: ^5.13.2 version: 5.16.7(react@17.0.2) + '@reduxjs/toolkit': + specifier: ^2.9.0 + version: 2.9.0(react-redux@7.2.9(react-dom@17.0.2(react@17.0.2))(react@17.0.2))(react@17.0.2) '@turf/turf': specifier: ^6.5.0 version: 6.5.0 '@xyflow/react': specifier: ^12.8.2 - version: 12.8.4(@types/react@17.0.2)(react-dom@17.0.2(react@17.0.2))(react@17.0.2) + version: 12.8.4(@types/react@17.0.2)(immer@10.1.3)(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@xyflow/system': specifier: ^0.0.68 version: 0.0.68 @@ -995,6 +998,23 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@reduxjs/toolkit@2.9.0': + resolution: {integrity: sha512-fSfQlSRu9Z5yBkvsNhYF2rPS8cGXn/TZVrlwN1948QyZ8xMZ0JvP50S2acZNaf+o63u6aEeMjipFyksjIcWrog==} + peerDependencies: + react: ^16.9.0 || ^17.0.0 || ^18 || ^19 + react-redux: ^7.2.1 || ^8.1.3 || ^9.0.0 + peerDependenciesMeta: + react: + optional: true + react-redux: + optional: true + + '@standard-schema/spec@1.0.0': + resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} + + '@standard-schema/utils@0.3.0': + resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} + '@svgr/babel-plugin-add-jsx-attribute@5.4.0': resolution: {integrity: sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==} engines: {node: '>=10'} @@ -2808,6 +2828,9 @@ packages: engines: {node: '>=12.0.0'} hasBin: true + immer@10.1.3: + resolution: {integrity: sha512-tmjF/k8QDKydUlm3mZU+tjM6zeq9/fFpPqH9SzWmBnVVKsPBg/V66qsMwb3/Bo90cgUN+ghdVBess+hPsxUyRw==} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -3757,9 +3780,17 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} + redux-thunk@3.1.0: + resolution: {integrity: sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==} + peerDependencies: + redux: ^5.0.0 + redux@4.2.1: resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} + redux@5.0.1: + resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} + reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} @@ -3804,6 +3835,9 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + reselect@5.1.1: + resolution: {integrity: sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==} + resize-observer-polyfill@1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} @@ -5662,6 +5696,22 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 + '@reduxjs/toolkit@2.9.0(react-redux@7.2.9(react-dom@17.0.2(react@17.0.2))(react@17.0.2))(react@17.0.2)': + dependencies: + '@standard-schema/spec': 1.0.0 + '@standard-schema/utils': 0.3.0 + immer: 10.1.3 + redux: 5.0.1 + redux-thunk: 3.1.0(redux@5.0.1) + reselect: 5.1.1 + optionalDependencies: + react: 17.0.2 + react-redux: 7.2.9(react-dom@17.0.2(react@17.0.2))(react@17.0.2) + + '@standard-schema/spec@1.0.0': {} + + '@standard-schema/utils@0.3.0': {} + '@svgr/babel-plugin-add-jsx-attribute@5.4.0': {} '@svgr/babel-plugin-remove-jsx-attribute@5.4.0': {} @@ -6785,13 +6835,13 @@ snapshots: '@xtuc/long@4.2.2': {} - '@xyflow/react@12.8.4(@types/react@17.0.2)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)': + '@xyflow/react@12.8.4(@types/react@17.0.2)(immer@10.1.3)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)': dependencies: '@xyflow/system': 0.0.68 classcat: 5.0.5 react: 17.0.2 react-dom: 17.0.2(react@17.0.2) - zustand: 4.5.7(@types/react@17.0.2)(react@17.0.2) + zustand: 4.5.7(@types/react@17.0.2)(immer@10.1.3)(react@17.0.2) transitivePeerDependencies: - '@types/react' - immer @@ -8279,6 +8329,8 @@ snapshots: dependencies: queue: 6.0.2 + immer@10.1.3: {} + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -9292,10 +9344,16 @@ snapshots: indent-string: 4.0.0 strip-indent: 3.0.0 + redux-thunk@3.1.0(redux@5.0.1): + dependencies: + redux: 5.0.1 + redux@4.2.1: dependencies: '@babel/runtime': 7.28.3 + redux@5.0.1: {} + reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 @@ -9347,6 +9405,8 @@ snapshots: require-from-string@2.0.2: {} + reselect@5.1.1: {} + resize-observer-polyfill@1.5.1: {} resolve-from@4.0.0: {} @@ -10217,9 +10277,10 @@ snapshots: dependencies: tslib: 2.3.0 - zustand@4.5.7(@types/react@17.0.2)(react@17.0.2): + zustand@4.5.7(@types/react@17.0.2)(immer@10.1.3)(react@17.0.2): dependencies: use-sync-external-store: 1.5.0(react@17.0.2) optionalDependencies: '@types/react': 17.0.2 + immer: 10.1.3 react: 17.0.2